x393  1.0
FPGAcodeforElphelNC393camera
status_router16.v
Go to the documentation of this file.
1 
39 `timescale 1ns/1ps
40 
42  input rst,
43  input clk,
44  input srst, // @ posedge clk
45  // 4 input channels
46  input [7:0] db_in0,
47  input rq_in0,
48  output start_in0, // only for the first cycle, combinatorial
49  input [7:0] db_in1,
50  input rq_in1,
51  output start_in1, // only for the first cycle, combinatorial
52  input [7:0] db_in2,
53  input rq_in2,
54  output start_in2, // only for the first cycle, combinatorial
55  input [7:0] db_in3,
56  input rq_in3,
57  output start_in3, // only for the first cycle, combinatorial
58  input [7:0] db_in4,
59  input rq_in4,
60  output start_in4, // only for the first cycle, combinatorial
61  input [7:0] db_in5,
62  input rq_in5,
63  output start_in5, // only for the first cycle, combinatorial
64  input [7:0] db_in6,
65  input rq_in6,
66  output start_in6, // only for the first cycle, combinatorial
67  input [7:0] db_in7,
68  input rq_in7,
69  output start_in7, // only for the first cycle, combinatorial
70  input [7:0] db_in8,
71  input rq_in8,
72  output start_in8, // only for the first cycle, combinatorial
73  input [7:0] db_in9,
74  input rq_in9,
75  output start_in9, // only for the first cycle, combinatorial
76  input [7:0] db_in10,
77  input rq_in10,
78  output start_in10, // only for the first cycle, combinatorial
79  input [7:0] db_in11,
80  input rq_in11,
81  output start_in11, // only for the first cycle, combinatorial
82  input [7:0] db_in12,
83  input rq_in12,
84  output start_in12, // only for the first cycle, combinatorial
85  input [7:0] db_in13,
86  input rq_in13,
87  output start_in13, // only for the first cycle, combinatorial
88  input [7:0] db_in14,
89  input rq_in14,
90  output start_in14, // only for the first cycle, combinatorial
91  input [7:0] db_in15,
92  input rq_in15,
93  output start_in15, // only for the first cycle, combinatorial
94 
95  // output (multiplexed) channel
96  output [7:0] db_out,
97  output rq_out,
98  input start_out // only for the first cycle, combinatorial
99 );
100 
101  wire [7:0] db_int [1:0];
102  wire [1:0] rq_int;
103  wire [1:0] start_int; // only for the first cycle, combinatorial
104 
106  .FIFO_TYPE ("TWO_CYCLE") //= "ONE_CYCLE" // higher latency, but easier timing - use on some levels (others - default "ONE_CYCLE")
107  ) status_router2_top_i (
108  .rst (rst), // input
109  .clk (clk), // input
110  .srst (srst), // input
111  .db_in0 (db_int[0]), // input[7:0]
112  .rq_in0 (rq_int[0]), // input
113  .start_in0 (start_int[0]), // output
114  .db_in1 (db_int[1]), // input[7:0]
115  .rq_in1 (rq_int[1]), // input
116  .start_in1 (start_int[1]), // output
117  .db_out (db_out), // output[7:0]
118  .rq_out (rq_out), // output
119  .start_out (start_out) // input
120  );
121 
122  status_router8 status_router8_01234567_i (
123  .rst (rst), // input
124  .clk (clk), // input
125  .srst (srst), // input
126  .db_in0 (db_in0), // input[7:0]
127  .rq_in0 (rq_in0), // input
128  .start_in0 (start_in0), // output
129  .db_in1 (db_in1), // input[7:0]
130  .rq_in1 (rq_in1), // input
131  .start_in1 (start_in1), // output
132  .db_in2 (db_in2), // input[7:0]
133  .rq_in2 (rq_in2), // input
134  .start_in2 (start_in2), // output
135  .db_in3 (db_in3), // input[7:0]
136  .rq_in3 (rq_in3), // input
137  .start_in3 (start_in3), // output
138  .db_in4 (db_in4), // input[7:0]
139  .rq_in4 (rq_in4), // input
140  .start_in4 (start_in4), // output
141  .db_in5 (db_in5), // input[7:0]
142  .rq_in5 (rq_in5), // input
143  .start_in5 (start_in5), // output
144  .db_in6 (db_in6), // input[7:0]
145  .rq_in6 (rq_in6), // input
146  .start_in6 (start_in6), // output
147  .db_in7 (db_in7), // input[7:0]
148  .rq_in7 (rq_in7), // input
149  .start_in7 (start_in7), // output
150  .db_out (db_int[0]), // output[7:0]
151  .rq_out (rq_int[0]), // output
152  .start_out (start_int[0]) // input
153  );
154 
155  status_router8 status_router8_89abcdef_i (
156  .rst (rst), // input
157  .clk (clk), // input
158  .srst (srst), // input
159  .db_in0 (db_in8), // input[7:0]
160  .rq_in0 (rq_in8), // input
161  .start_in0 (start_in8), // output
162  .db_in1 (db_in9), // input[7:0]
163  .rq_in1 (rq_in9), // input
164  .start_in1 (start_in9), // output
165  .db_in2 (db_in10), // input[7:0]
166  .rq_in2 (rq_in10), // input
167  .start_in2 (start_in10), // output
168  .db_in3 (db_in11), // input[7:0]
169  .rq_in3 (rq_in11), // input
170  .start_in3 (start_in11), // output
171  .db_in4 (db_in12), // input[7:0]
172  .rq_in4 (rq_in12), // input
173  .start_in4 (start_in12), // output
174  .db_in5 (db_in13), // input[7:0]
175  .rq_in5 (rq_in13), // input
176  .start_in5 (start_in13), // output
177  .db_in6 (db_in14), // input[7:0]
178  .rq_in6 (rq_in14), // input
179  .start_in6 (start_in14), // output
180  .db_in7 (db_in15), // input[7:0]
181  .rq_in7 (rq_in15), // input
182  .start_in7 (start_in15), // output
183  .db_out (db_int[1]), // output[7:0]
184  .rq_out (rq_int[1]), // output
185  .start_out (start_int[1]) // input
186  );
187 
188 endmodule
189 
[7:0] 11026db_in7
10948rq_intwire[1:0]
[7:0] 11011db_in2
[1:0] 10947db_intwire[7:0]
status_router2_top_i status_router2
[7:0] 11005db_in0
[7:0] 11023db_in6
[7:0] 11020db_in5
[7:0] 11014db_in3
[7:0] 10954db_in0
[7:0] 11017db_in4
[7:0] 10960db_out
[7:0] 11008db_in1
[7:0] 11029db_out
10949start_intwire[1:0]
status_router8_89abcdef_i status_router8
[7:0] 10957db_in1