File tree Expand file tree Collapse file tree 2 files changed +27
-34
lines changed
testbenches/project/cn0577_adaq2387x Expand file tree Collapse file tree 2 files changed +27
-34
lines changed Original file line number Diff line number Diff line change 3939
4040module system_tb ();
4141
42- // dco delay compared to the reference clk
43- localparam DCO_DELAY = 12 ;
44-
4542 // reg signals
4643
4744 reg ref_clk = 1'b0 ;
@@ -55,44 +52,18 @@ module system_tb();
5552 reg db_p = 1'b0 ;
5653 reg db_n = 1'b0 ;
5754
58- // dma interface
59-
60- wire adc_valid;
61- wire [`ADC_RES - 1 : 0 ] adc_data;
62- reg adc_dovf = 1'b0 ;
63-
6455 wire cnv;
65- reg dco = 1'b0 ;
66-
67- integer cnv_count = 0 ;
6856
6957 // test bench variables
7058
7159 always # 25 ref_clk = ~ ref_clk;
7260
73- // ---------------------------------------------------------------------------
74- // Creating a "gate" through which the data clock can run (and only then)
75- // ---------------------------------------------------------------------------
76- always @ (* ) begin
77- if (clk_gate == 1'b1 ) begin
78- dco_init = ref_clk;
79- end else begin
80- dco_init = 1'b0 ;
81- end
82- end
83-
84- // Data clocks generation
85- // ---------------------------------------------------------------------------
86-
87- always @ (dco_init) begin
88- dco_p <= # DCO_DELAY dco_init;
89- dco_n <= # DCO_DELAY ~ dco_init;
90- end
91-
9261 `TEST_PROGRAM test (
9362 .ref_clk (ref_clk),
9463 .clk_gate (clk_gate),
9564 .dco_in (dco_init),
65+ .dco_p (dco_p),
66+ .dco_n (dco_n),
9667 .da_p (da_p),
9768 .da_n (da_n),
9869 .db_p (db_p),
Original file line number Diff line number Diff line change @@ -152,12 +152,34 @@ localparam int N = (`TWOLANES == 0 && `ADC_RES == 16) ? 16 :
152152 - 1 ; // Error case
153153parameter int num_of_dco = N / 2 ;
154154
155+ // dco delay compared to the reference clk
156+ localparam DCO_DELAY = 12 ;
157+
158+ reg dco_init = 1'b0 ;
159+
160+ // ---------------------------------------------------------------------------
161+ // Creating a "gate" through which the data clock can run (and only then)
162+ // ---------------------------------------------------------------------------
163+
164+ initial begin
165+ forever begin
166+ if (clk_gate == 1'b1 ) begin
167+ dco_init = ref_clk;
168+ end else begin
169+ dco_init = 1'b0 ;
170+ end
171+ end
172+ end
173+
174+ // ---------------------------------------------------------------------------
175+ // Data clocks generation
176+ // ---------------------------------------------------------------------------
177+
155178initial begin
156179 forever begin
157180 @ (posedge dco_in, negedge dco_in) begin
158- # 1
159- dco_p <= dco_in;
160- dco_n <= ~ dco_in;
181+ dco_p <= # DCO_DELAY dco_init;
182+ dco_n <= # DCO_DELAY ~ dco_init;
161183 end
162184 end
163185 end
You can’t perform that action at this time.
0 commit comments