@@ -61,24 +61,24 @@ module tt_um_YannGuidon_TinyScanChain (
6161
6262 // The scan chain
6363 wire [1 :0 ] t0, t1, t2, t3, t4, t5, t6, t7, t8;
64- wire [31 :0 ] S; // spy on this signal to "see" the whole scan chain
64+ wire [23 :0 ] S; // spy on this signal to "see" the whole scan chain
6565
6666 assign t0= { ~ SC_DIN, SC_DIN}; // yeah I got lazy here
6767 // output some data
68- SC_Quad_Out QO0 (.SET(SC_SET), .Dout(DO[2 :0 ]), .Latch(Latch), .SCin(t0), .SCout(t1), .state_pos(S[3 :0 ]));
69- SC_Quad_Out QO1 (.SET(SC_SET), .Dout(DO[5 :3 ]), .Latch(Latch), .SCin(t1), .SCout(t2), .state_pos(S[7 : 4 ]));
70- SC_Quad_Out QO2 (.SET(SC_SET), .Dout(DO[8 :6 ]), .Latch(Latch), .SCin(t2), .SCout(t3), .state_pos(S[11 : 8 ]));
68+ SC_Quad_Out QO0 (.SET(SC_SET), .Dout(DO[2 :0 ]), .Latch(Latch), .SCin(t0), .SCout(t1), .state_pos(S[2 :0 ]));
69+ SC_Quad_Out QO1 (.SET(SC_SET), .Dout(DO[5 :3 ]), .Latch(Latch), .SCin(t1), .SCout(t2), .state_pos(S[5 : 3 ]));
70+ SC_Quad_Out QO2 (.SET(SC_SET), .Dout(DO[8 :6 ]), .Latch(Latch), .SCin(t2), .SCout(t3), .state_pos(S[8 : 6 ]));
7171
7272 // read some internal data (and ignore the MSB of the LFSR, who cares)
73- SC_Quad_In QI0 (.GET(SC_GET), .Din(SomeData[2 :0 ]), .Latch(Latch), .SCin(t3), .SCout(t4), .state_pos(S[15 : 12 ]));
74- SC_Quad_In QI1 (.GET(SC_GET), .Din(SomeData[5 :3 ]), .Latch(Latch), .SCin(t4), .SCout(t5), .state_pos(S[19 : 16 ]));
73+ SC_Quad_In QI0 (.GET(SC_GET), .Din(SomeData[2 :0 ]), .Latch(Latch), .SCin(t3), .SCout(t4), .state_pos(S[11 : 9 ]));
74+ SC_Quad_In QI1 (.GET(SC_GET), .Din(SomeData[5 :3 ]), .Latch(Latch), .SCin(t4), .SCout(t5), .state_pos(S[14 : 12 ]));
7575
7676 // input some external data
7777 wire [2 :0 ] in3;
7878 assign in3 = { ui_in[1 :0 ], SomeData[6 ] };
79- SC_Quad_In QI2 (.GET(SC_GET), .Din(in3 ), .Latch(Latch), .SCin(t5), .SCout(t6), .state_pos(S[23 : 20 ]));
80- SC_Quad_In QI3 (.GET(SC_GET), .Din(ui_in[4 :2 ]), .Latch(Latch), .SCin(t6), .SCout(t7), .state_pos(S[27 : 24 ]));
81- SC_Quad_In QI4 (.GET(SC_GET), .Din(ui_in[7 :5 ]), .Latch(Latch), .SCin(t7), .SCout(t8), .state_pos(S[31 : 28 ]));
79+ SC_Quad_In QI2 (.GET(SC_GET), .Din(in3 ), .Latch(Latch), .SCin(t5), .SCout(t6), .state_pos(S[17 : 15 ]));
80+ SC_Quad_In QI3 (.GET(SC_GET), .Din(ui_in[4 :2 ]), .Latch(Latch), .SCin(t6), .SCout(t7), .state_pos(S[20 : 18 ]));
81+ SC_Quad_In QI4 (.GET(SC_GET), .Din(ui_in[7 :5 ]), .Latch(Latch), .SCin(t7), .SCout(t8), .state_pos(S[23 : 21 ]));
8282
8383 assign SC_DOUT = t8[0 ]; // output only the positive value
8484
0 commit comments