Skip to content

Commit 6bba191

Browse files
committed
library: jesd204: tb: Make tb work with modelsim
Signed-off-by: bluncan <[email protected]>
1 parent bcd0353 commit 6bba191

File tree

9 files changed

+61
-20
lines changed

9 files changed

+61
-20
lines changed

library/jesd204/tb/sim_jesd204_fec

Lines changed: 0 additions & 13 deletions
This file was deleted.

library/jesd204/tb/tb_jesd204_fec

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
#!/bin/bash
2+
3+
export SIMULATOR=modelsim
4+
5+
SOURCE="tb_jesd204_fec.sv"
6+
SOURCE+=" ../../util_cdc/sync_bits.v"
7+
SOURCE+=" ../../util_cdc/sync_event.v"
8+
SOURCE+=" ../../common/ad_mem_dist.v"
9+
SOURCE+=" ../../common/util_pipeline_stage.v"
10+
11+
SOURCE+=" ../jesd204_common/jesd204_lmfc.v"
12+
SOURCE+=" ../jesd204_common/jesd204_scrambler.v"
13+
SOURCE+=" ../jesd204_common/jesd204_scrambler_64b.v"
14+
SOURCE+=" ../jesd204_common/jesd204_crc12.v"
15+
SOURCE+=" ../jesd204_common/jesd204_frame_mark.v"
16+
SOURCE+=" ../jesd204_common/jesd204_frame_align_replace.v"
17+
18+
SOURCE+=" ../jesd204_common/lfsr_input.sv"
19+
SOURCE+=" ../jesd204_tx/jesd204_fec_encode.sv"
20+
SOURCE+=" ../jesd204_tx/jesd204_tx_lane.v"
21+
SOURCE+=" ../jesd204_tx/jesd204_tx_lane_64b.v"
22+
SOURCE+=" ../jesd204_tx/jesd204_tx_gearbox.v"
23+
SOURCE+=" ../jesd204_tx/jesd204_tx_header.v"
24+
SOURCE+=" ../jesd204_tx/jesd204_tx_ctrl.v"
25+
SOURCE+=" ../jesd204_tx/jesd204_tx.v"
26+
27+
SOURCE+=" ../jesd204_rx/jesd204_rx_fec_lfsr.sv"
28+
SOURCE+=" ../jesd204_rx/jesd204_fec_decode.sv"
29+
SOURCE+=" ../jesd204_rx/jesd204_rx_lane.v"
30+
SOURCE+=" ../jesd204_rx/jesd204_rx_lane_64b.v"
31+
SOURCE+=" ../jesd204_rx/jesd204_rx_header.v"
32+
SOURCE+=" ../jesd204_rx/jesd204_rx_cgs.v"
33+
SOURCE+=" ../jesd204_rx/jesd204_rx_ctrl.v"
34+
SOURCE+=" ../jesd204_rx/jesd204_rx_ctrl_64b.v"
35+
SOURCE+=" ../jesd204_rx/elastic_buffer.v"
36+
SOURCE+=" ../jesd204_rx/error_monitor.v"
37+
SOURCE+=" ../jesd204_rx/jesd204_ilas_monitor.v"
38+
SOURCE+=" ../jesd204_rx/align_mux.v"
39+
SOURCE+=" ../jesd204_rx/jesd204_lane_latency_monitor.v"
40+
SOURCE+=" ../jesd204_rx/jesd204_rx_frame_align.v"
41+
SOURCE+=" ../jesd204_rx/jesd204_rx.v"
42+
43+
SOURCE+=" ../jesd204_rx_static_config/jesd204_rx_static_config.v"
44+
SOURCE+=" ../jesd204_tx_static_config/jesd204_tx_static_config.v"
45+
SOURCE+=" ../jesd204_tx_static_config/jesd204_ilas_cfg_static.v"
46+
47+
cd `dirname $0`
48+
source ../../common/tb/run_tb.sh

library/jesd204/tb/tb_jesd204_fec.sv

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,15 @@ module tb_jesd204_fec;
2424
localparam ERROR_BITS = 64'h1FF000; // Bits of decoder input data to corrupt
2525
localparam FEC_ERROR_BITS = '0; // {1'b1, 25'b0};
2626

27+
parameter VCD_FILE = {"tb_jesd204_fec.vcd"};
28+
`include "tb_base.v"
29+
2730
logic [INPUT_DATA_WIDTH-1:0] DATA_VALUE_REVERSED;
2831
logic [INPUT_DATA_WIDTH-1:0] data;
2932

3033
logic [FEC_WIDTH-1:0] fec;
3134
logic [FEC_WIDTH-1:0] fec_saved;
3235
logic [FEC_WIDTH-1:0] decode_fec_in;
33-
reg clk = 1'b0;
3436
logic rst;
3537
logic fec_in_valid;
3638
logic shift_en;
File renamed without changes.

library/jesd204/tb/tb_jesd204_fec_encode.sv

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,13 @@ module tb_jesd204_fec_encode;
1818
localparam INPUT_DATA_WIDTH = 2048;
1919
localparam logic [INPUT_DATA_WIDTH-1:0] DATA_VALUE = {1'b1, 2047'b0};
2020

21+
parameter VCD_FILE = {"tb_jesd204_fec_encode.vcd"};
22+
`include "tb_base.v"
23+
2124
logic [INPUT_DATA_WIDTH-1:0] DATA_VALUE_REVERSED;
2225
logic [DATA_WIDTH-1:0] data;
2326

2427
logic [FEC_WIDTH-1:0] fec;
25-
reg clk = 1'b0;
2628
logic rst;
2729
logic shift_en;
2830
logic [DATA_WIDTH-1:0] data_in;
File renamed without changes.

library/jesd204/tb/tb_lfsr_input.sv

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,14 @@
99
`default_nettype none
1010

1111
module tb_lfsr_input;
12-
1312
localparam LFSR_WIDTH = 26;
1413
localparam [LFSR_WIDTH:1] RESET_VAL = {LFSR_WIDTH{1'b0}};
1514
localparam [LFSR_WIDTH:1] LFSR_POLYNOMIAL = 26'h2210110;
1615
localparam MAX_SHIFT_CNT = 64;
1716

17+
parameter VCD_FILE = {"tb_lfsr_input.vcd"};
18+
`include "tb_base.v"
19+
1820
// localparam INPUT_DATA_WIDTH = 64;
1921
// localparam logic [INPUT_DATA_WIDTH-1:0] DATA_VALUE = 64'h8001020305050423;
2022
localparam INPUT_DATA_WIDTH = 2048;
@@ -25,7 +27,6 @@ module tb_lfsr_input;
2527

2628
logic [MAX_SHIFT_CNT-1:0] data_out;
2729
logic [LFSR_WIDTH:1] shift_reg;
28-
reg clk = 1'b0;
2930
logic rst;
3031
logic shift_en;
3132
logic [$clog2(MAX_SHIFT_CNT)-1:0] shift_cnt;
File renamed without changes.

library/jesd204/tb/tb_link_layer_fec.sv

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
`default_nettype none
1111

1212
module tb_link_layer_fec;
13-
1413
localparam NUM_LANES=2;
1514
localparam NUM_LINKS=1;
1615
localparam SCR = 0;
@@ -29,8 +28,9 @@ module tb_link_layer_fec;
2928
// localparam NEXT_ERROR_BITS = 64'h0000000000000000;
3029
localparam REPORT_GOOD_DATA = 1'b1;
3130

32-
reg clk = 1'b0;
33-
reg sysref = 1'b0;
31+
parameter VCD_FILE = {"tb_link_layer_fec.vcd"};
32+
`include "tb_base.v"
33+
3434
logic rst;
3535
logic [INPUT_DATA_WIDTH-1:0] DATA_VALUE_REVERSED;
3636
logic [INPUT_DATA_WIDTH-1:0] data;
@@ -238,6 +238,7 @@ module tb_link_layer_fec;
238238
cur_tx_data = tx_data_q.pop_front();
239239
if(cur_tx_data !== rx_data) begin
240240
$error("RX Cycle: %d Data mismatch. Expected: %X Observed: %X", rx_cycle_cnt, cur_tx_data, rx_data);
241+
failed = 1'b1;
241242
end else if(REPORT_GOOD_DATA) begin
242243
$display("RX Cycle: %d Good data:%X", rx_cycle_cnt, cur_tx_data);
243244
end

0 commit comments

Comments
 (0)