@@ -2597,13 +2597,17 @@ module ram (
2597
2597
output [`RAMWIDTH- 1 :0 ] q;
2598
2598
wire [`RAMWIDTH- 1 :0 ] value_out;
2599
2599
wire [`RAMWIDTH- 1 :0 ] subwire;
2600
- assign q = subwire | dummy;
2601
2600
wire [`RAMWIDTH- 1 :0 ] uselessdata;
2602
2601
assign uselessdata = 1024'b0 ;
2603
2602
wire j;
2604
2603
assign j = | byteena_a;
2605
2604
wire [`RAMWIDTH- 1 :0 ]dummy;
2605
+
2606
+ assign q = subwire | dummy;
2606
2607
assign dummy = value_out & 1024'b0 ;
2608
+
2609
+ defparam inst1.ADDR_WIDTH = `rRAMSIZEWIDTH;
2610
+ defparam inst1.DATA_WIDTH = `RAMWIDTH;
2607
2611
dual_port_ram inst1 (
2608
2612
.clk (clk),
2609
2613
.we1(wren),
@@ -2637,13 +2641,17 @@ module ram1 (
2637
2641
output [`RAMWIDTH- 1 :0 ] q;
2638
2642
wire [`RAMWIDTH- 1 :0 ] value_out;
2639
2643
wire [`RAMWIDTH- 1 :0 ] subwire;
2640
- assign q = subwire | dummy;
2641
2644
wire [`RAMWIDTH- 1 :0 ] uselessdata;
2642
2645
assign uselessdata = 1024'b0 ;
2643
2646
wire j;
2644
2647
assign j = | byteena_a;
2645
2648
wire [`RAMWIDTH- 1 :0 ]dummy;
2649
+
2650
+ assign q = subwire | dummy;
2646
2651
assign dummy = value_out & 1024'b0 ;
2652
+
2653
+ defparam inst1.ADDR_WIDTH = `rRAMSIZEWIDTH;
2654
+ defparam inst1.DATA_WIDTH = `RAMWIDTH;
2647
2655
dual_port_ram inst1 (
2648
2656
.clk (clk),
2649
2657
.we1(wren),
@@ -2677,13 +2685,17 @@ module ram2 (
2677
2685
output [`RAMWIDTH- 1 :0 ] q;
2678
2686
wire [`RAMWIDTH- 1 :0 ] value_out;
2679
2687
wire [`RAMWIDTH- 1 :0 ] subwire;
2680
- assign q = subwire | dummy;
2681
2688
wire [`RAMWIDTH- 1 :0 ] uselessdata;
2682
2689
assign uselessdata = 1024'b0 ;
2683
2690
wire j;
2684
2691
assign j = | byteena_a;
2685
2692
wire [`RAMWIDTH- 1 :0 ]dummy;
2693
+
2694
+ assign q = subwire | dummy;
2686
2695
assign dummy = value_out & 1024'b0 ;
2696
+
2697
+ defparam inst1.ADDR_WIDTH = `rRAMSIZEWIDTH;
2698
+ defparam inst1.DATA_WIDTH = `RAMWIDTH;
2687
2699
dual_port_ram inst1 (
2688
2700
.clk (clk),
2689
2701
.we1(wren),
@@ -2717,13 +2729,16 @@ module ram3 (
2717
2729
output [`RAMWIDTH- 1 :0 ] q;
2718
2730
wire [`RAMWIDTH- 1 :0 ] value_out;
2719
2731
wire [`RAMWIDTH- 1 :0 ] subwire;
2720
- assign q = subwire | dummy;
2721
2732
wire [`RAMWIDTH- 1 :0 ] uselessdata;
2722
2733
assign uselessdata = 1024'b0 ;
2723
2734
wire j;
2724
2735
assign j = | byteena_a;
2725
2736
wire [`RAMWIDTH- 1 :0 ]dummy;
2737
+ assign q = subwire | dummy;
2726
2738
assign dummy = value_out & 1024'b0 ;
2739
+
2740
+ defparam inst1.ADDR_WIDTH = `rRAMSIZEWIDTH;
2741
+ defparam inst1.DATA_WIDTH = `RAMWIDTH;
2727
2742
dual_port_ram inst1 (
2728
2743
.clk (clk),
2729
2744
.we1(wren),
@@ -2760,9 +2775,12 @@ module top_ram (
2760
2775
wire [32 - 1 :0 ] sub_wire0;
2761
2776
wire [32 - 1 :0 ] q;
2762
2777
wire [32 - 1 :0 ] junk_output;
2763
- assign q = sub_wire0 | dummy;
2764
2778
wire [32 - 1 :0 ] dummy;
2779
+ assign q = sub_wire0 | dummy;
2765
2780
assign dummy = junk_output & 32'b0 ;
2781
+
2782
+ defparam inst2.ADDR_WIDTH = 12 ;
2783
+ defparam inst2.DATA_WIDTH = 32 ;
2766
2784
dual_port_ram inst2 (
2767
2785
.clk (clk),
2768
2786
.we1(wren),
@@ -3249,39 +3267,55 @@ if (rdreq)
3249
3267
counter <= 0 ;
3250
3268
else
3251
3269
counter <= counter + 2'b01 ;
3252
- if (counter == 0 )
3253
- q[`rFIFOINPUTWIDTH- 1 :0 ] <= data_ram;
3254
- else if (counter == 1 )
3270
+ if (counter == 0 ) begin
3271
+ q[`rFIFOINPUTWIDTH- 1 :0 ] <= data_ram;
3272
+ end
3273
+ else if (counter == 1 ) begin
3255
3274
q[127 :64 ] <= data_ram;
3256
- else if (counter == 2 )
3275
+ end
3276
+ else if (counter == 2 ) begin
3257
3277
q[191 :128 ] <= data_ram;
3258
- else if (counter == 3 )
3278
+ end
3279
+ else if (counter == 3 ) begin
3259
3280
q[255 :192 ] <= data_ram;
3260
- else if (counter == 4 )
3281
+ end
3282
+ else if (counter == 4 ) begin
3261
3283
q[319 :256 ] <= data_ram;
3262
- else if (counter == 5 )
3284
+ end
3285
+ else if (counter == 5 ) begin
3263
3286
q[383 :320 ] <= data_ram;
3264
- else if (counter == 6 )
3287
+ end
3288
+ else if (counter == 6 ) begin
3265
3289
q[447 :384 ] <= data_ram;
3266
- else if (counter == 7 )
3290
+ end
3291
+ else if (counter == 7 ) begin
3267
3292
q[511 :448 ] <= data_ram;
3268
- else if (counter == 8 )
3293
+ end
3294
+ else if (counter == 8 ) begin
3269
3295
q[575 :512 ] <= data_ram;
3270
- else if (counter == 9 )
3296
+ end
3297
+ else if (counter == 9 ) begin
3271
3298
q[639 :576 ] <= data_ram;
3272
- else if (counter == 10 )
3299
+ end
3300
+ else if (counter == 10 ) begin
3273
3301
q[703 :640 ] <= data_ram;
3274
- else if (counter == 11 )
3302
+ end
3303
+ else if (counter == 11 ) begin
3275
3304
q[767 :704 ] <= data_ram;
3276
- else if (counter == 12 )
3305
+ end
3306
+ else if (counter == 12 ) begin
3277
3307
q[831 :768 ] <= data_ram;
3278
- else if (counter == 13 )
3308
+ end
3309
+ else if (counter == 13 ) begin
3279
3310
q[895 :832 ] <= data_ram;
3280
- else if (counter == 14 )
3311
+ end
3312
+ else if (counter == 14 ) begin
3281
3313
q[959 :896 ] <= data_ram;
3282
- else if (counter == 15 )
3314
+ end
3315
+ else if (counter == 15 ) begin
3283
3316
q[1023 :960 ] <= data_ram;
3284
3317
end
3318
+ end
3285
3319
always @ (posedge clk )
3286
3320
begin // : STATUS_COUNTER
3287
3321
if ((rdreq) && (! wrreq) && (status_cnt != 0 ))
@@ -3290,6 +3324,8 @@ begin // : STATUS_COUNTER
3290
3324
else if ((wrreq) && (! rdreq) && (status_cnt != 64 ))
3291
3325
status_cnt <= status_cnt + 1'b1 ;
3292
3326
end
3327
+ defparam ram_addr.ADDR_WIDTH = `rFIFORSIZEWIDTH;
3328
+ defparam ram_addr.DATA_WIDTH = `rFIFOINPUTWIDTH;
3293
3329
dual_port_ram ram_addr (
3294
3330
.we1 (wrreq) , // write enable
3295
3331
.we2 (rdreq) , // Read enable
@@ -3353,42 +3389,60 @@ begin //READ_POINTER
3353
3389
end
3354
3390
always @ (posedge clk )
3355
3391
begin // READ_DATA
3356
- if (rdreq)
3392
+ if (rdreq) begin
3357
3393
counter <= 0 ;
3358
- else
3394
+ end
3395
+ else begin
3359
3396
counter <= counter + 2'b01 ;
3360
- if (counter == 0 )
3397
+ end
3398
+ if (counter == 0 ) begin
3361
3399
q <= data_ram[63 :0 ];
3362
- else if (counter == 1 )
3400
+ end
3401
+ else if (counter == 1 ) begin
3363
3402
q <= data_ram[127 :64 ];
3364
- else if (counter == 2 )
3403
+ end
3404
+ else if (counter == 2 ) begin
3365
3405
q <= data_ram[191 :128 ];
3366
- else if (counter == 3 )
3406
+ end
3407
+ else if (counter == 3 ) begin
3367
3408
q <= data_ram[255 :192 ];
3368
- else if (counter == 4 )
3409
+ end
3410
+ else if (counter == 4 ) begin
3369
3411
q <= data_ram[319 :256 ];
3370
- else if (counter == 5 )
3412
+ end
3413
+ else if (counter == 5 ) begin
3371
3414
q <= data_ram[383 :320 ];
3372
- else if (counter == 6 )
3415
+ end
3416
+ else if (counter == 6 ) begin
3373
3417
q <= data_ram[447 :384 ];
3374
- else if (counter == 7 )
3418
+ end
3419
+ else if (counter == 7 ) begin
3375
3420
q <= data_ram[511 :448 ];
3376
- else if (counter == 8 )
3421
+ end
3422
+ else if (counter == 8 ) begin
3377
3423
q <= data_ram[575 :512 ];
3378
- else if (counter == 9 )
3424
+ end
3425
+ else if (counter == 9 ) begin
3379
3426
q <= data_ram[639 :576 ];
3380
- else if (counter == 10 )
3427
+ end
3428
+ else if (counter == 10 ) begin
3381
3429
q <= data_ram[703 :640 ];
3382
- else if (counter == 11 )
3430
+ end
3431
+ else if (counter == 11 ) begin
3383
3432
q <= data_ram[767 :704 ];
3384
- else if (counter == 12 )
3433
+ end
3434
+ else if (counter == 12 ) begin
3385
3435
q <= data_ram[831 :768 ];
3386
- else if (counter == 13 )
3436
+ end
3437
+ else if (counter == 13 ) begin
3387
3438
q <= data_ram[895 :832 ];
3388
- else if (counter == 14 )
3439
+ end
3440
+ else if (counter == 14 ) begin
3389
3441
q <= data_ram[959 :896 ];
3390
- else if (counter == 15 )
3442
+ end
3443
+ else if (counter == 15 ) begin
3391
3444
q <= data_ram[1023 :960 ];
3445
+ end
3392
3446
end
3393
3447
always @ (posedge clk )
3394
3448
begin // : STATUS_COUNTER
@@ -3399,6 +3453,9 @@ begin // : STATUS_COUNTER
3399
3453
status_cnt <= status_cnt + 1'b1 ;
3400
3454
end
3401
3455
assign usedw = status_cnt[`wFIFOSIZEWIDTH- 1 :0 ];
3456
+
3457
+ defparam ram_addr.ADDR_WIDTH = `wFIFOSIZEWIDTH;
3458
+ defparam ram_addr.DATA_WIDTH = `wFIFOINPUTWIDTH;
3402
3459
dual_port_ram ram_addr (
3403
3460
.we1 (wrreq) , // write enable
3404
3461
.we2 (rdreq) , // Read enable
@@ -3473,6 +3530,9 @@ begin // : STATUS_COUNTER
3473
3530
else if ((wrreq) && (! rdreq) && (status_cnt != 5'b10000 ))
3474
3531
status_cnt <= status_cnt + 1 ;
3475
3532
end
3533
+
3534
+ defparam ram_addr.ADDR_WIDTH = `aFIFOSIZEWIDTH;
3535
+ defparam ram_addr.DATA_WIDTH = `aFIFOWIDTH;
3476
3536
dual_port_ram ram_addr (
3477
3537
.we1 (wrreq) , // write enable
3478
3538
.we2 (rdreq) , // Read enable
@@ -3543,6 +3603,8 @@ begin // : STATUS_COUNTER
3543
3603
else if ((wrreq) && (! rdreq) && (status_cnt != 16 ))
3544
3604
status_cnt <= status_cnt + 1'b1 ;
3545
3605
end
3606
+ defparam ram_addr.ADDR_WIDTH = `mFIFOSIZEWIDTH;
3607
+ defparam ram_addr.DATA_WIDTH = `mFIFOWIDTH;
3546
3608
dual_port_ram ram_addr (
3547
3609
.we1 (wrreq) , // write enable
3548
3610
.we2 (rdreq) , // Read enable
@@ -4565,7 +4627,7 @@ module fpmul(clk, a, b, y_out, control, flags) ;
4565
4627
4566
4628
flag flager (invalid, overflow, inexact_or_shiftloss,
4567
4629
shiftloss_or_inexact,
4568
- /* tiny */ stilltiny_or_tiny_and_denormround ,
4630
+ /* tiny */ still_tiny_or_tiny_and_denormround ,
4569
4631
specialcase, flags);
4570
4632
4571
4633
0 commit comments