Skip to content

Commit 23f53d3

Browse files
committed
Removing delay statements
- Interferes with open soruce tools
1 parent ad32f28 commit 23f53d3

5 files changed

Lines changed: 95 additions & 98 deletions

File tree

logikbench/blocks/fpu32/rtl/except.v

Lines changed: 26 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -78,76 +78,75 @@ assign fractb = opb[22:0];
7878
//
7979

8080
always @(posedge clk)
81-
expa_ff <= #1 &expa;
81+
expa_ff <= &expa;
8282

8383
always @(posedge clk)
84-
expb_ff <= #1 &expb;
85-
84+
expb_ff <= &expb;
85+
8686
always @(posedge clk)
87-
infa_f_r <= #1 !(|fracta);
87+
infa_f_r <= !(|fracta);
8888

8989
always @(posedge clk)
90-
infb_f_r <= #1 !(|fractb);
90+
infb_f_r <= !(|fractb);
9191

9292
always @(posedge clk)
93-
qnan_r_a <= #1 fracta[22];
93+
qnan_r_a <= fracta[22];
9494

9595
always @(posedge clk)
96-
snan_r_a <= #1 !fracta[22] & |fracta[21:0];
97-
96+
snan_r_a <= !fracta[22] & |fracta[21:0];
97+
9898
always @(posedge clk)
99-
qnan_r_b <= #1 fractb[22];
99+
qnan_r_b <= fractb[22];
100100

101101
always @(posedge clk)
102-
snan_r_b <= #1 !fractb[22] & |fractb[21:0];
102+
snan_r_b <= !fractb[22] & |fractb[21:0];
103103

104104
always @(posedge clk)
105-
ind <= #1 (expa_ff & infa_f_r) & (expb_ff & infb_f_r);
105+
ind <= (expa_ff & infa_f_r) & (expb_ff & infb_f_r);
106106

107107
always @(posedge clk)
108-
inf <= #1 (expa_ff & infa_f_r) | (expb_ff & infb_f_r);
108+
inf <= (expa_ff & infa_f_r) | (expb_ff & infb_f_r);
109109

110110
always @(posedge clk)
111-
qnan <= #1 (expa_ff & qnan_r_a) | (expb_ff & qnan_r_b);
111+
qnan <= (expa_ff & qnan_r_a) | (expb_ff & qnan_r_b);
112112

113113
always @(posedge clk)
114-
snan <= #1 (expa_ff & snan_r_a) | (expb_ff & snan_r_b);
114+
snan <= (expa_ff & snan_r_a) | (expb_ff & snan_r_b);
115115

116116
always @(posedge clk)
117-
opa_nan <= #1 &expa & (|fracta[22:0]);
117+
opa_nan <= &expa & (|fracta[22:0]);
118118

119119
always @(posedge clk)
120-
opb_nan <= #1 &expb & (|fractb[22:0]);
120+
opb_nan <= &expb & (|fractb[22:0]);
121121

122122
always @(posedge clk)
123-
opa_inf <= #1 (expa_ff & infa_f_r);
123+
opa_inf <= (expa_ff & infa_f_r);
124124

125125
always @(posedge clk)
126-
opb_inf <= #1 (expb_ff & infb_f_r);
126+
opb_inf <= (expb_ff & infb_f_r);
127127

128128
always @(posedge clk)
129-
expa_00 <= #1 !(|expa);
129+
expa_00 <= !(|expa);
130130

131131
always @(posedge clk)
132-
expb_00 <= #1 !(|expb);
132+
expb_00 <= !(|expb);
133133

134134
always @(posedge clk)
135-
fracta_00 <= #1 !(|fracta);
135+
fracta_00 <= !(|fracta);
136136

137137
always @(posedge clk)
138-
fractb_00 <= #1 !(|fractb);
138+
fractb_00 <= !(|fractb);
139139

140140
always @(posedge clk)
141-
opa_00 <= #1 expa_00 & fracta_00;
141+
opa_00 <= expa_00 & fracta_00;
142142

143143
always @(posedge clk)
144-
opb_00 <= #1 expb_00 & fractb_00;
144+
opb_00 <= expb_00 & fractb_00;
145145

146146
always @(posedge clk)
147-
opa_dn <= #1 expa_00;
147+
opa_dn <= expa_00;
148148

149149
always @(posedge clk)
150-
opb_dn <= #1 expb_00;
150+
opb_dn <= expb_00;
151151

152152
endmodule
153-

logikbench/blocks/fpu32/rtl/fpu.v

Lines changed: 40 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -109,28 +109,28 @@ wire mul_00, div_00;
109109
//
110110

111111
always @(posedge clk)
112-
opa_r <= #1 opa;
112+
opa_r <= opa;
113113

114114
always @(posedge clk)
115-
opb_r <= #1 opb;
115+
opb_r <= opb;
116116

117117
always @(posedge clk)
118-
rmode_r1 <= #1 rmode;
118+
rmode_r1 <= rmode;
119119

120120
always @(posedge clk)
121-
rmode_r2 <= #1 rmode_r1;
121+
rmode_r2 <= rmode_r1;
122122

123123
always @(posedge clk)
124-
rmode_r3 <= #1 rmode_r2;
124+
rmode_r3 <= rmode_r2;
125125

126126
always @(posedge clk)
127-
fpu_op_r1 <= #1 fpu_op;
127+
fpu_op_r1 <= fpu_op;
128128

129129
always @(posedge clk)
130-
fpu_op_r2 <= #1 fpu_op_r1;
130+
fpu_op_r2 <= fpu_op_r1;
131131

132132
always @(posedge clk)
133-
fpu_op_r3 <= #1 fpu_op_r2;
133+
fpu_op_r3 <= fpu_op_r2;
134134

135135
////////////////////////////////////////////////////////////////////////
136136
//
@@ -190,7 +190,7 @@ pre_norm u1(.clk(clk), // System Clock
190190
);
191191

192192
always @(posedge clk)
193-
sign_fasu_r <= #1 sign_fasu;
193+
sign_fasu_r <= sign_fasu;
194194

195195
pre_norm_fmul u2(
196196
.clk(clk),
@@ -208,16 +208,16 @@ pre_norm_fmul u2(
208208

209209

210210
always @(posedge clk)
211-
sign_mul_r <= #1 sign_mul;
211+
sign_mul_r <= sign_mul;
212212

213213
always @(posedge clk)
214-
sign_exe_r <= #1 sign_exe;
214+
sign_exe_r <= sign_exe;
215215

216216
always @(posedge clk)
217-
inf_mul_r <= #1 inf_mul;
217+
inf_mul_r <= inf_mul;
218218

219219
always @(posedge clk)
220-
exp_ovf_r <= #1 exp_ovf;
220+
exp_ovf_r <= exp_ovf;
221221

222222

223223
////////////////////////////////////////////////////////////////////////
@@ -233,7 +233,7 @@ add_sub27 u3(
233233
.co(co_d) ); // Carry Output
234234

235235
always @(posedge clk)
236-
fract_out_q <= #1 {co_d, fract_out_d};
236+
fract_out_q <= {co_d, fract_out_d};
237237

238238
////////////////////////////////////////////////////////////////////////
239239
//
@@ -288,10 +288,10 @@ div_r2 u6(.clk(clk), .opa(fdiv_opa), .opb(fractb_mul), .quo(quo), .rem(remainder
288288
assign remainder_00 = !(|remainder);
289289

290290
always @(posedge clk)
291-
div_opa_ldz_r1 <= #1 div_opa_ldz_d;
291+
div_opa_ldz_r1 <= div_opa_ldz_d;
292292

293293
always @(posedge clk)
294-
div_opa_ldz_r2 <= #1 div_opa_ldz_r1;
294+
div_opa_ldz_r2 <= div_opa_ldz_r1;
295295

296296

297297
////////////////////////////////////////////////////////////////////////
@@ -310,19 +310,19 @@ wire f2i_out_sign;
310310

311311
always @(posedge clk) // Exponent must be once cycle delayed
312312
case(fpu_op_r2)
313-
0,1: exp_r <= #1 exp_fasu;
314-
2,3: exp_r <= #1 exp_mul;
315-
4: exp_r <= #1 0;
316-
5: exp_r <= #1 opa_r1[30:23];
313+
0,1: exp_r <= exp_fasu;
314+
2,3: exp_r <= exp_mul;
315+
4: exp_r <= 0;
316+
5: exp_r <= opa_r1[30:23];
317317
endcase
318318

319319
assign fract_div = (opb_dn ? quo[49:2] : {quo[26:0], 21'h0});
320320

321321
always @(posedge clk)
322-
opa_r1 <= #1 opa_r[30:0];
322+
opa_r1 <= opa_r[30:0];
323323

324324
always @(posedge clk)
325-
fract_i2f <= #1 (fpu_op_r2==5) ?
325+
fract_i2f <= (fpu_op_r2==5) ?
326326
(sign_d ? 1-{24'h00, (|opa_r1[30:23]), opa_r1[22:0]}-1 : {24'h0, (|opa_r1[30:23]), opa_r1[22:0]}) :
327327
(sign_d ? 1 - {opa_r1, 17'h01} : {opa_r1, 17'h0});
328328

@@ -336,15 +336,15 @@ always @(fpu_op_r3 or fract_out_q or prod or fract_div or fract_i2f)
336336

337337

338338
always @(posedge clk)
339-
opas_r1 <= #1 opa_r[31];
339+
opas_r1 <= opa_r[31];
340340

341341
always @(posedge clk)
342-
opas_r2 <= #1 opas_r1;
342+
opas_r2 <= opas_r1;
343343

344344
assign sign_d = fpu_op_r2[1] ? sign_mul : sign_fasu;
345345

346346
always @(posedge clk)
347-
sign <= #1 (rmode_r2==2'h3) ? !sign_d : sign_d;
347+
sign <= (rmode_r2==2'h3) ? !sign_d : sign_d;
348348

349349
post_norm u4(.clk(clk), // System Clock
350350
.fpu_op(fpu_op_r3), // Floating Point Operation
@@ -391,13 +391,13 @@ reg opa_nan_r;
391391

392392

393393
always @(posedge clk)
394-
fasu_op_r1 <= #1 fasu_op;
394+
fasu_op_r1 <= fasu_op;
395395

396396
always @(posedge clk)
397-
fasu_op_r2 <= #1 fasu_op_r1;
397+
fasu_op_r2 <= fasu_op_r1;
398398

399399
always @(posedge clk)
400-
inf_mul2 <= #1 exp_mul == 8'hff;
400+
inf_mul2 <= exp_mul == 8'hff;
401401

402402

403403
// Force pre-set values for non numerical output
@@ -414,7 +414,7 @@ assign out_fixed = ( (qnan_d | snan_d) |
414414
) ? QNAN : INF;
415415

416416
always @(posedge clk)
417-
out[30:0] <= #1 (mul_inf | div_inf | (inf_d & (fpu_op_r3!=3'b011) & (fpu_op_r3!=3'b101)) | snan_d | qnan_d) & fpu_op_r3!=3'b100 ? out_fixed :
417+
out[30:0] <= (mul_inf | div_inf | (inf_d & (fpu_op_r3!=3'b011) & (fpu_op_r3!=3'b101)) | snan_d | qnan_d) & fpu_op_r3!=3'b100 ? out_fixed :
418418
out_d;
419419

420420
assign out_d_00 = !(|out_d);
@@ -423,7 +423,7 @@ assign sign_mul_final = (sign_exe_r & ((opa_00 & opb_inf) | (opb_00 & opa_inf)))
423423
assign sign_div_final = (sign_exe_r & (opa_inf & opb_inf)) ? !sign_mul_r : sign_mul_r | (opa_00 & opb_00);
424424

425425
always @(posedge clk)
426-
out[31] <= #1 ((fpu_op_r3==3'b101) & out_d_00) ? (f2i_out_sign & !(qnan_d | snan_d) ) :
426+
out[31] <= ((fpu_op_r3==3'b101) & out_d_00) ? (f2i_out_sign & !(qnan_d | snan_d) ) :
427427
((fpu_op_r3==3'b010) & !(snan_d | qnan_d)) ? sign_mul_final :
428428
((fpu_op_r3==3'b011) & !(snan_d | qnan_d)) ? sign_div_final :
429429
(snan_d | qnan_d | ind_d) ? nan_sign_d :
@@ -440,7 +440,7 @@ assign ine_div = (ine_d | overflow_d | underflow_d) & !(opb_00 | snan_d | qnan_
440440
assign ine_fasu = (ine_d | overflow_d | underflow_d) & !(snan_d | qnan_d | inf_d);
441441

442442
always @(posedge clk)
443-
ine <= #1 fpu_op_r3[2] ? ine_d :
443+
ine <= fpu_op_r3[2] ? ine_d :
444444
!fpu_op_r3[1] ? ine_fasu :
445445
fpu_op_r3[0] ? ine_div : ine_mul;
446446

@@ -450,12 +450,12 @@ assign overflow_fmul = !inf_d & (inf_mul_r | inf_mul2 | overflow_d) & !(snan_d |
450450
assign overflow_fdiv = (overflow_d & !(opb_00 | inf_d | snan_d | qnan_d));
451451

452452
always @(posedge clk)
453-
overflow <= #1 fpu_op_r3[2] ? 0 :
453+
overflow <= fpu_op_r3[2] ? 0 :
454454
!fpu_op_r3[1] ? overflow_fasu :
455455
fpu_op_r3[0] ? overflow_fdiv : overflow_fmul;
456456

457457
always @(posedge clk)
458-
underflow_fmul_r <= #1 underflow_fmul_d;
458+
underflow_fmul_r <= underflow_fmul_d;
459459

460460

461461
assign underflow_fmul1 = underflow_fmul_r[0] |
@@ -468,17 +468,17 @@ assign underflow_fmul = underflow_fmul1 & !(snan_d | qnan_d | inf_mul_r);
468468
assign underflow_fdiv = underflow_fasu & !opb_00;
469469

470470
always @(posedge clk)
471-
underflow <= #1 fpu_op_r3[2] ? 0 :
471+
underflow <= fpu_op_r3[2] ? 0 :
472472
!fpu_op_r3[1] ? underflow_fasu :
473473
fpu_op_r3[0] ? underflow_fdiv : underflow_fmul;
474474

475475
always @(posedge clk)
476-
snan <= #1 snan_d;
476+
snan <= snan_d;
477477

478478

479479
// Status Outputs
480480
always @(posedge clk)
481-
qnan <= #1 fpu_op_r3[2] ? 0 : (
481+
qnan <= fpu_op_r3[2] ? 0 : (
482482
snan_d | qnan_d | (ind_d & !fasu_op_r2) |
483483
(opa_00 & opb_00 & fpu_op_r3==3'b011) |
484484
(((opa_inf & opb_00) | (opb_inf & opa_00 )) & fpu_op_r3==3'b010)
@@ -489,7 +489,7 @@ assign inf_fmul = (((inf_mul_r | inf_mul2) & (rmode_r3==2'h0)) | opa_inf | opb_
489489
fpu_op_r3==3'b010;
490490

491491
always @(posedge clk)
492-
inf <= #1 fpu_op_r3[2] ? 0 :
492+
inf <= fpu_op_r3[2] ? 0 :
493493
(!(qnan_d | snan_d) & (
494494
((&out_d[30:23]) & !(|out_d[22:0]) & !(opb_00 & fpu_op_r3==3'b011)) |
495495
(inf_d & !(ind_d & !fasu_op_r2) & !fpu_op_r3[1]) |
@@ -507,15 +507,15 @@ assign output_zero_fmul = (out_d_00 | opa_00 | opb_00) &
507507
!(opa_inf & opb_00) & !(opb_inf & opa_00);
508508

509509
always @(posedge clk)
510-
zero <= #1 fpu_op_r3==3'b101 ? out_d_00 & !(snan_d | qnan_d):
510+
zero <= fpu_op_r3==3'b101 ? out_d_00 & !(snan_d | qnan_d):
511511
fpu_op_r3==3'b011 ? output_zero_fdiv :
512512
fpu_op_r3==3'b010 ? output_zero_fmul :
513513
output_zero_fasu ;
514514

515515
always @(posedge clk)
516-
opa_nan_r <= #1 !opa_nan & fpu_op_r2==3'b011;
516+
opa_nan_r <= !opa_nan & fpu_op_r2==3'b011;
517517

518518
always @(posedge clk)
519-
div_by_zero <= #1 opa_nan_r & !opa_00 & !opa_inf & opb_00;
519+
div_by_zero <= opa_nan_r & !opa_00 & !opa_inf & opb_00;
520520

521521
endmodule

0 commit comments

Comments
 (0)