CMX
CMX firmware code in-line documentation
 All Classes Namespaces Files Functions Variables
CMX_top_Base_tb.vhd
Go to the documentation of this file.
1 
9 
10 
11 LIBRARY ieee;
12 USE ieee.std_logic_1164.ALL;
13 USE ieee.std_logic_unsigned.all;
14 USE ieee.numeric_std.ALL;
15 use ieee.std_logic_textio.all;
16 use std.textio.all;
17 
18 library work;
19 use work.CMXpackage.all;
20 use work.CMX_VME_defs.all;
21 
22 
23 
24 
25 
26 ENTITY CMX_top_Base_tb IS
27 END CMX_top_Base_tb;
28 
29 ARCHITECTURE behavior OF CMX_top_Base_tb IS
30 
31  -- Component Declaration for the Unit Under Test (UUT)
32 
33 
34  function to_std_logic(c: character) return std_logic is
35  variable sl: std_logic;
36  begin
37  case c is
38  when 'U' =>
39  sl := 'U';
40  when 'X' =>
41  sl := 'X';
42  when '0' =>
43  sl := '0';
44  when '1' =>
45  sl := '1';
46  when 'Z' =>
47  sl := 'Z';
48  when 'W' =>
49  sl := 'W';
50  when 'L' =>
51  sl := 'L';
52  when 'H' =>
53  sl := 'H';
54  when '-' =>
55  sl := '-';
56  when others =>
57  sl := 'X';
58  end case;
59  return sl;
60  end to_std_logic;
61 
62 
63  function str_to_stdvec(inp: string) return std_logic_vector is
64  variable temp: std_logic_vector(inp'range) := (others => 'X');
65  begin
66  for i in inp'range loop
67  if (inp(i) = '1') then
68  temp(i) := '1';
69  elsif (inp(i) = '0') then
70  temp(i) := '0';
71  end if;
72  end loop;
73  return temp;
74  end function str_to_stdvec;
75 
76  ---------------------------------------------------------------------------
77  -- Function INT2SLV converts an integer to a std_logic_vector
78  ---------------------------------------------------------------------------
79  function INT2SLV(
80  val : integer;
81  size: integer :=32
82  ) return std_logic_vector is
83 
84  variable result: std_logic_vector(size-1 downto 0);
85  variable temp: integer;
86 
87  begin
88  temp := val;
89  for i in 0 to size-1 loop
90  if (temp mod 2) = 1 then
91  result(i) := '1';
92  else
93  result(i) := '0';
94  end if;
95 
96  if temp > 0 then
97  temp := temp / 2;
98  elsif (temp > integer'low) then
99  temp := (temp - 1) / 2; -- simulate ASR
100  else
101  temp := temp / 2; -- simulate ASR
102  end if;
103  end loop;
104 
105  return result;
106  end INT2SLV;
107 
108  ---------------------------------------------------------------------------
109  -- Function INT2SLV16 converts an integer to a 16 bit std_logic_vector
110  ---------------------------------------------------------------------------
111  function INT2SLV16(
112  val : integer
113  ) return std_logic_vector is
114 
115  begin
116  return INT2SLV(val, 16);
117 
118  end INT2SLV16;
119 
120 
121  -- Clocks
122  signal CLK_120MHz000_XTAL_1_BF_TRNCV_DIR : std_logic := '0';
123  signal CLK_120MHz000_XTAL_1_BF_TRNCV_CMP : std_logic := '0';
124  signal CLK40_DIR : std_logic := '0';
125  signal CLK40_CMP : std_logic := '0';
126  signal CLK160 : std_logic := '0';
127  signal CLK80 : std_logic := '0';
128 
129  -- Clock period definitions.
130  -- Note: periods must be even multiples of 1 ps to make ISE happy
131  constant CLK40_DIR_period : time := 24.952 ns;
132  constant CLK160_period : time := 6.238 ns;
133  constant CLK80_period : time := 12.476 ns;
134  constant CLK120_period : time := 8.334 ns;
135 
136 
137  FILE ctp_out: TEXT open READ_MODE is "../../Jet_common/trunk/data/testctp.txt";
138  FILE data_jem0: TEXT open READ_MODE is "../../Jet_common/trunk/data/test0.txt";
139  FILE data_jem1: TEXT open READ_MODE is "../../Jet_common/trunk/data/test1.txt";
140  FILE data_jem2: TEXT open READ_MODE is "../../Jet_common/trunk/data/test2.txt";
141  FILE data_jem3: TEXT open READ_MODE is "../../Jet_common/trunk/data/test3.txt";
142  FILE data_jem4: TEXT open READ_MODE is "../../Jet_common/trunk/data/test4.txt";
143  FILE data_jem5: TEXT open READ_MODE is "../../Jet_common/trunk/data/test5.txt";
144  FILE data_jem6: TEXT open READ_MODE is "../../Jet_common/trunk/data/test6.txt";
145  FILE data_jem7: TEXT open READ_MODE is "../../Jet_common/trunk/data/test7.txt";
146  FILE data_jem8: TEXT open READ_MODE is "../../Jet_common/trunk/data/test8.txt";
147  FILE data_jem9: TEXT open READ_MODE is "../../Jet_common/trunk/data/test9.txt";
148  FILE data_jem10: TEXT open READ_MODE is "../../Jet_common/trunk/data/test10.txt";
149  FILE data_jem11: TEXT open READ_MODE is "../../Jet_common/trunk/data/test11.txt";
150  FILE data_jem12: TEXT open READ_MODE is "../../Jet_common/trunk/data/test12.txt";
151  FILE data_jem13: TEXT open READ_MODE is "../../Jet_common/trunk/data/test13.txt";
152  FILE data_jem14: TEXT open READ_MODE is "../../Jet_common/trunk/data/test14.txt";
153  FILE data_jem15: TEXT open READ_MODE is "../../Jet_common/trunk/data/test15.txt";
154 
155 -- FILE ctp_out: TEXT open READ_MODE is "data/testctp.txt";
156 -- FILE data_jem0: TEXT open READ_MODE is "data/test0.txt";
157 -- FILE data_jem1: TEXT open READ_MODE is "data/test1.txt";
158 -- FILE data_jem2: TEXT open READ_MODE is "data/test2.txt";
159 -- FILE data_jem3: TEXT open READ_MODE is "data/test3.txt";
160 -- FILE data_jem4: TEXT open READ_MODE is "data/test4.txt";
161 -- FILE data_jem5: TEXT open READ_MODE is "data/test5.txt";
162 -- FILE data_jem6: TEXT open READ_MODE is "data/test6.txt";
163 -- FILE data_jem7: TEXT open READ_MODE is "data/test7.txt";
164 -- FILE data_jem8: TEXT open READ_MODE is "data/test8.txt";
165 -- FILE data_jem9: TEXT open READ_MODE is "data/test9.txt";
166 -- FILE data_jem10: TEXT open READ_MODE is "data/test10.txt";
167 -- FILE data_jem11: TEXT open READ_MODE is "data/test11.txt";
168 -- FILE data_jem12: TEXT open READ_MODE is "data/test12.txt";
169 -- FILE data_jem13: TEXT open READ_MODE is "data/test13.txt";
170 -- FILE data_jem14: TEXT open READ_MODE is "data/test14.txt";
171 -- FILE data_jem15: TEXT open READ_MODE is "data/test15.txt";
172 
173  signal ctpvec_low, ctpvec_high : std_logic_vector (31 downto 0);
174 
175  -- SHARED VARIABLE trigsave : LINE;
176 
177  -- Clock and zero definitions
178 
179  constant DUTY_CYCLE : real := 0.5;
180  constant OFFSET : time := 0 ns;
181  constant zero : std_logic :='0';
182  signal zeros : std_logic_vector(15 downto 0) := (others => '0');
183 
184  -- Other important signals
185 
186  signal P : mat_var (numactchan-1 downto 0):=(others => (others => '0'));
187  signal CTPout, CTPout_clean, CTPout_ref : std_logic_vector(65 downto 0);
188  signal L1A : std_logic;
189 
190  signal ctp_error : std_logic; -- Mismatch between CTP output and input
191  constant ctp_delay : integer := 10; -- delay between input and CTP output
192 
193 
194  component CMX_top_Base is
195  port (
196 
197  ----------------------------------------------------------------------------
198  -- VME-- backplane (65 signals)
199  ----------------------------------------------------------------------------
200  --GEOADDR0: in std_logic; -- GeoAddr0
201  OCB_GEO_ADRS_0: in std_logic;
202  --VMEADDR: in std_logic_vector(23 downto 1); -- Address bus
203  OCB_A01: in std_logic;
204  OCB_A02: in std_logic;
205  OCB_A03: in std_logic;
206  OCB_A04: in std_logic;
207  OCB_A05: in std_logic;
208  OCB_A06: in std_logic;
209  OCB_A07: in std_logic;
210  OCB_A08: in std_logic;
211  OCB_A09: in std_logic;
212  OCB_A10: in std_logic;
213  OCB_A11: in std_logic;
214  OCB_A12: in std_logic;
215  OCB_A13: in std_logic;
216  OCB_A14: in std_logic;
217  OCB_A15: in std_logic;
218  OCB_A16: in std_logic;
219  OCB_A17: in std_logic;
220  OCB_A18: in std_logic;
221  OCB_A19: in std_logic;
222  OCB_A20: in std_logic;
223  OCB_A21: in std_logic;
224  OCB_A22: in std_logic;
225  OCB_A23: in std_logic;
226  --VMEDS_L: in std_logic; -- DS strobe VMEDS_L
227  OCB_DS_B: in std_logic;
228  --VMEWR_L: in std_logic; -- VME Write VMEWR_L
229  OCB_WRITE_B: in std_logic;
230  --VMERST_L: in std_logic; -- System reset VMERST_L
231  OCB_SYS_RESET_B: in std_logic;
232  --VMEDATA: inout std_logic_vector(15 downto 0); -- Data bus VMEDATA
233  OCB_D: inout std_logic_vector(15 downto 0);
234  ----------------------------------------------------------------------------
235 
236 
237  P0_0 : in std_logic;
238  P0_1 : in std_logic;
239  P0_2 : in std_logic;
240  P0_3 : in std_logic;
241  P0_4 : in std_logic;
242  P0_5 : in std_logic;
243  P0_6 : in std_logic;
244  P0_7 : in std_logic;
245  P0_8 : in std_logic;
246  P0_9 : in std_logic;
247  P0_10 : in std_logic;
248  P0_11 : in std_logic;
249  P0_12 : in std_logic;
250  P0_13 : in std_logic;
251  P0_14 : in std_logic;
252  P0_15 : in std_logic;
253  P0_16 : in std_logic;
254  P0_17 : in std_logic;
255  P0_18 : in std_logic;
256  P0_19 : in std_logic;
257  P0_20 : in std_logic;
258  P0_21 : in std_logic;
259  P0_22 : in std_logic;
260  P0_23 : in std_logic;
261  P0_24 : in std_logic;
262  P1_0 : in std_logic;
263  P1_1 : in std_logic;
264  P1_2 : in std_logic;
265  P1_3 : in std_logic;
266  P1_4 : in std_logic;
267  P1_5 : in std_logic;
268  P1_6 : in std_logic;
269  P1_7 : in std_logic;
270  P1_8 : in std_logic;
271  P1_9 : in std_logic;
272  P1_10 : in std_logic;
273  P1_11 : in std_logic;
274  P1_12 : in std_logic;
275  P1_13 : in std_logic;
276  P1_14 : in std_logic;
277  P1_15 : in std_logic;
278  P1_16 : in std_logic;
279  P1_17 : in std_logic;
280  P1_18 : in std_logic;
281  P1_19 : in std_logic;
282  P1_20 : in std_logic;
283  P1_21 : in std_logic;
284  P1_22 : in std_logic;
285  P1_23 : in std_logic;
286  P1_24 : in std_logic;
287  P2_0 : in std_logic;
288  P2_1 : in std_logic;
289  P2_2 : in std_logic;
290  P2_3 : in std_logic;
291  P2_4 : in std_logic;
292  P2_5 : in std_logic;
293  P2_6 : in std_logic;
294  P2_7 : in std_logic;
295  P2_8 : in std_logic;
296  P2_9 : in std_logic;
297  P2_10 : in std_logic;
298  P2_11 : in std_logic;
299  P2_12 : in std_logic;
300  P2_13 : in std_logic;
301  P2_14 : in std_logic;
302  P2_15 : in std_logic;
303  P2_16 : in std_logic;
304  P2_17 : in std_logic;
305  P2_18 : in std_logic;
306  P2_19 : in std_logic;
307  P2_20 : in std_logic;
308  P2_21 : in std_logic;
309  P2_22 : in std_logic;
310  P2_23 : in std_logic;
311  P2_24 : in std_logic;
312  P3_0 : in std_logic;
313  P3_1 : in std_logic;
314  P3_2 : in std_logic;
315  P3_3 : in std_logic;
316  P3_4 : in std_logic;
317  P3_5 : in std_logic;
318  P3_6 : in std_logic;
319  P3_7 : in std_logic;
320  P3_8 : in std_logic;
321  P3_9 : in std_logic;
322  P3_10 : in std_logic;
323  P3_11 : in std_logic;
324  P3_12 : in std_logic;
325  P3_13 : in std_logic;
326  P3_14 : in std_logic;
327  P3_15 : in std_logic;
328  P3_16 : in std_logic;
329  P3_17 : in std_logic;
330  P3_18 : in std_logic;
331  P3_19 : in std_logic;
332  P3_20 : in std_logic;
333  P3_21 : in std_logic;
334  P3_22 : in std_logic;
335  P3_23 : in std_logic;
336  P3_24 : in std_logic;
337  P4_0 : in std_logic;
338  P4_1 : in std_logic;
339  P4_2 : in std_logic;
340  P4_3 : in std_logic;
341  P4_4 : in std_logic;
342  P4_5 : in std_logic;
343  P4_6 : in std_logic;
344  P4_7 : in std_logic;
345  P4_8 : in std_logic;
346  P4_9 : in std_logic;
347  P4_10 : in std_logic;
348  P4_11 : in std_logic;
349  P4_12 : in std_logic;
350  P4_13 : in std_logic;
351  P4_14 : in std_logic;
352  P4_15 : in std_logic;
353  P4_16 : in std_logic;
354  P4_17 : in std_logic;
355  P4_18 : in std_logic;
356  P4_19 : in std_logic;
357  P4_20 : in std_logic;
358  P4_21 : in std_logic;
359  P4_22 : in std_logic;
360  P4_23 : in std_logic;
361  P4_24 : in std_logic;
362  P5_0 : in std_logic;
363  P5_1 : in std_logic;
364  P5_2 : in std_logic;
365  P5_3 : in std_logic;
366  P5_4 : in std_logic;
367  P5_5 : in std_logic;
368  P5_6 : in std_logic;
369  P5_7 : in std_logic;
370  P5_8 : in std_logic;
371  P5_9 : in std_logic;
372  P5_10 : in std_logic;
373  P5_11 : in std_logic;
374  P5_12 : in std_logic;
375  P5_13 : in std_logic;
376  P5_14 : in std_logic;
377  P5_15 : in std_logic;
378  P5_16 : in std_logic;
379  P5_17 : in std_logic;
380  P5_18 : in std_logic;
381  P5_19 : in std_logic;
382  P5_20 : in std_logic;
383  P5_21 : in std_logic;
384  P5_22 : in std_logic;
385  P5_23 : in std_logic;
386  P5_24 : in std_logic;
387  P6_0 : in std_logic;
388  P6_1 : in std_logic;
389  P6_2 : in std_logic;
390  P6_3 : in std_logic;
391  P6_4 : in std_logic;
392  P6_5 : in std_logic;
393  P6_6 : in std_logic;
394  P6_7 : in std_logic;
395  P6_8 : in std_logic;
396  P6_9 : in std_logic;
397  P6_10 : in std_logic;
398  P6_11 : in std_logic;
399  P6_12 : in std_logic;
400  P6_13 : in std_logic;
401  P6_14 : in std_logic;
402  P6_15 : in std_logic;
403  P6_16 : in std_logic;
404  P6_17 : in std_logic;
405  P6_18 : in std_logic;
406  P6_19 : in std_logic;
407  P6_20 : in std_logic;
408  P6_21 : in std_logic;
409  P6_22 : in std_logic;
410  P6_23 : in std_logic;
411  P6_24 : in std_logic;
412  P7_0 : in std_logic;
413  P7_1 : in std_logic;
414  P7_2 : in std_logic;
415  P7_3 : in std_logic;
416  P7_4 : in std_logic;
417  P7_5 : in std_logic;
418  P7_6 : in std_logic;
419  P7_7 : in std_logic;
420  P7_8 : in std_logic;
421  P7_9 : in std_logic;
422  P7_10 : in std_logic;
423  P7_11 : in std_logic;
424  P7_12 : in std_logic;
425  P7_13 : in std_logic;
426  P7_14 : in std_logic;
427  P7_15 : in std_logic;
428  P7_16 : in std_logic;
429  P7_17 : in std_logic;
430  P7_18 : in std_logic;
431  P7_19 : in std_logic;
432  P7_20 : in std_logic;
433  P7_21 : in std_logic;
434  P7_22 : in std_logic;
435  P7_23 : in std_logic;
436  P7_24 : in std_logic;
437  P8_0 : in std_logic;
438  P8_1 : in std_logic;
439  P8_2 : in std_logic;
440  P8_3 : in std_logic;
441  P8_4 : in std_logic;
442  P8_5 : in std_logic;
443  P8_6 : in std_logic;
444  P8_7 : in std_logic;
445  P8_8 : in std_logic;
446  P8_9 : in std_logic;
447  P8_10 : in std_logic;
448  P8_11 : in std_logic;
449  P8_12 : in std_logic;
450  P8_13 : in std_logic;
451  P8_14 : in std_logic;
452  P8_15 : in std_logic;
453  P8_16 : in std_logic;
454  P8_17 : in std_logic;
455  P8_18 : in std_logic;
456  P8_19 : in std_logic;
457  P8_20 : in std_logic;
458  P8_21 : in std_logic;
459  P8_22 : in std_logic;
460  P8_23 : in std_logic;
461  P8_24 : in std_logic;
462  P9_0 : in std_logic;
463  P9_1 : in std_logic;
464  P9_2 : in std_logic;
465  P9_3 : in std_logic;
466  P9_4 : in std_logic;
467  P9_5 : in std_logic;
468  P9_6 : in std_logic;
469  P9_7 : in std_logic;
470  P9_8 : in std_logic;
471  P9_9 : in std_logic;
472  P9_10 : in std_logic;
473  P9_11 : in std_logic;
474  P9_12 : in std_logic;
475  P9_13 : in std_logic;
476  P9_14 : in std_logic;
477  P9_15 : in std_logic;
478  P9_16 : in std_logic;
479  P9_17 : in std_logic;
480  P9_18 : in std_logic;
481  P9_19 : in std_logic;
482  P9_20 : in std_logic;
483  P9_21 : in std_logic;
484  P9_22 : in std_logic;
485  P9_23 : in std_logic;
486  P9_24 : in std_logic;
487  P10_0 : in std_logic;
488  P10_1 : in std_logic;
489  P10_2 : in std_logic;
490  P10_3 : in std_logic;
491  P10_4 : in std_logic;
492  P10_5 : in std_logic;
493  P10_6 : in std_logic;
494  P10_7 : in std_logic;
495  P10_8 : in std_logic;
496  P10_9 : in std_logic;
497  P10_10 : in std_logic;
498  P10_11 : in std_logic;
499  P10_12 : in std_logic;
500  P10_13 : in std_logic;
501  P10_14 : in std_logic;
502  P10_15 : in std_logic;
503  P10_16 : in std_logic;
504  P10_17 : in std_logic;
505  P10_18 : in std_logic;
506  P10_19 : in std_logic;
507  P10_20 : in std_logic;
508  P10_21 : in std_logic;
509  P10_22 : in std_logic;
510  P10_23 : in std_logic;
511  P10_24 : in std_logic;
512  P11_0 : in std_logic;
513  P11_1 : in std_logic;
514  P11_2 : in std_logic;
515  P11_3 : in std_logic;
516  P11_4 : in std_logic;
517  P11_5 : in std_logic;
518  P11_6 : in std_logic;
519  P11_7 : in std_logic;
520  P11_8 : in std_logic;
521  P11_9 : in std_logic;
522  P11_10 : in std_logic;
523  P11_11 : in std_logic;
524  P11_12 : in std_logic;
525  P11_13 : in std_logic;
526  P11_14 : in std_logic;
527  P11_15 : in std_logic;
528  P11_16 : in std_logic;
529  P11_17 : in std_logic;
530  P11_18 : in std_logic;
531  P11_19 : in std_logic;
532  P11_20 : in std_logic;
533  P11_21 : in std_logic;
534  P11_22 : in std_logic;
535  P11_23 : in std_logic;
536  P11_24 : in std_logic;
537  P12_0 : in std_logic;
538  P12_1 : in std_logic;
539  P12_2 : in std_logic;
540  P12_3 : in std_logic;
541  P12_4 : in std_logic;
542  P12_5 : in std_logic;
543  P12_6 : in std_logic;
544  P12_7 : in std_logic;
545  P12_8 : in std_logic;
546  P12_9 : in std_logic;
547  P12_10 : in std_logic;
548  P12_11 : in std_logic;
549  P12_12 : in std_logic;
550  P12_13 : in std_logic;
551  P12_14 : in std_logic;
552  P12_15 : in std_logic;
553  P12_16 : in std_logic;
554  P12_17 : in std_logic;
555  P12_18 : in std_logic;
556  P12_19 : in std_logic;
557  P12_20 : in std_logic;
558  P12_21 : in std_logic;
559  P12_22 : in std_logic;
560  P12_23 : in std_logic;
561  P12_24 : in std_logic;
562  P13_0 : in std_logic;
563  P13_1 : in std_logic;
564  P13_2 : in std_logic;
565  P13_3 : in std_logic;
566  P13_4 : in std_logic;
567  P13_5 : in std_logic;
568  P13_6 : in std_logic;
569  P13_7 : in std_logic;
570  P13_8 : in std_logic;
571  P13_9 : in std_logic;
572  P13_10 : in std_logic;
573  P13_11 : in std_logic;
574  P13_12 : in std_logic;
575  P13_13 : in std_logic;
576  P13_14 : in std_logic;
577  P13_15 : in std_logic;
578  P13_16 : in std_logic;
579  P13_17 : in std_logic;
580  P13_18 : in std_logic;
581  P13_19 : in std_logic;
582  P13_20 : in std_logic;
583  P13_21 : in std_logic;
584  P13_22 : in std_logic;
585  P13_23 : in std_logic;
586  P13_24 : in std_logic;
587  P14_0 : in std_logic;
588  P14_1 : in std_logic;
589  P14_2 : in std_logic;
590  P14_3 : in std_logic;
591  P14_4 : in std_logic;
592  P14_5 : in std_logic;
593  P14_6 : in std_logic;
594  P14_7 : in std_logic;
595  P14_8 : in std_logic;
596  P14_9 : in std_logic;
597  P14_10 : in std_logic;
598  P14_11 : in std_logic;
599  P14_12 : in std_logic;
600  P14_13 : in std_logic;
601  P14_14 : in std_logic;
602  P14_15 : in std_logic;
603  P14_16 : in std_logic;
604  P14_17 : in std_logic;
605  P14_18 : in std_logic;
606  P14_19 : in std_logic;
607  P14_20 : in std_logic;
608  P14_21 : in std_logic;
609  P14_22 : in std_logic;
610  P14_23 : in std_logic;
611  P14_24 : in std_logic;
612  P15_0 : in std_logic;
613  P15_1 : in std_logic;
614  P15_2 : in std_logic;
615  P15_3 : in std_logic;
616  P15_4 : in std_logic;
617  P15_5 : in std_logic;
618  P15_6 : in std_logic;
619  P15_7 : in std_logic;
620  P15_8 : in std_logic;
621  P15_9 : in std_logic;
622  P15_10 : in std_logic;
623  P15_11 : in std_logic;
624  P15_12 : in std_logic;
625  P15_13 : in std_logic;
626  P15_14 : in std_logic;
627  P15_15 : in std_logic;
628  P15_16 : in std_logic;
629  P15_17 : in std_logic;
630  P15_18 : in std_logic;
631  P15_19 : in std_logic;
632  P15_20 : in std_logic;
633  P15_21 : in std_logic;
634  P15_22 : in std_logic;
635  P15_23 : in std_logic;
636  P15_24 : in std_logic;
637 
638 
639  --CLK_40MHz08_DSKW_2_BF_LOGIC_DIR : in std_logic;
640  --CLK_40MHz08_DSKW_2_BF_LOGIC_CMP : in std_logic;
641 
642  CLK_40MHz08_DSKW_1_BF_LOGIC_DIR : in std_logic;
643  CLK_40MHz08_DSKW_1_BF_LOGIC_CMP : in std_logic;
644 
645  --CLK_320MHz64_LHC_BF_LOGIC_DIR : in std_logic;
646  --CLK_320MHz64_LHC_BF_LOGIC_CMP : in std_logic;
647 
648  BF_DEBUG_0 : out std_logic;
649  BF_DEBUG_1 : out std_logic;
650  BF_DEBUG_2 : out std_logic;
651  BF_DEBUG_3 : out std_logic;
652  BF_DEBUG_4 : out std_logic;
653  BF_DEBUG_5 : out std_logic;
654  BF_DEBUG_6 : out std_logic;
655  BF_DEBUG_7 : out std_logic;
656  BF_DEBUG_8 : out std_logic;
657  BF_DEBUG_9 : out std_logic;
658 
659 
660  BF_REQ_CTP_1_INPUT : out std_logic;
661  BF_REQ_CTP_2_INPUT : out std_logic;
662  BF_REQ_CABLE_1_INPUT: out std_logic;
663  BF_REQ_CABLE_2_INPUT: out std_logic;
664  BF_REQ_CABLE_3_INPUT: out std_logic;
665  BF_LED_REQ_0 : out std_logic;
666  BF_LED_REQ_1 : out std_logic;
667  BF_LED_REQ_2 : out std_logic;
668  BF_LED_REQ_3 : out std_logic;
669  BF_LED_REQ_4 : out std_logic;
670  BF_TO_FROM_BSPT_0 : in std_logic; -- out -> in (SBS)
671  BF_TO_FROM_BSPT_1 : in std_logic; -- out -> in (SBS)
672  BF_TO_FROM_BSPT_2 : out std_logic;
673  BF_TO_FROM_BSPT_3 : out std_logic;
674  BF_TO_FROM_BSPT_4 : out std_logic;
675  BF_TO_FROM_BSPT_5 : out std_logic;
676  BF_TO_FROM_BSPT_6 : out std_logic;
677  BF_TO_FROM_BSPT_7 : out std_logic;
678 
679 
680  BF_DOUT_CTP_00 : out std_logic;
681  BF_DOUT_CTP_01 : out std_logic;
682  BF_DOUT_CTP_02 : out std_logic;
683  BF_DOUT_CTP_03 : out std_logic;
684  BF_DOUT_CTP_04 : out std_logic;
685  BF_DOUT_CTP_05 : out std_logic;
686  BF_DOUT_CTP_06 : out std_logic;
687  BF_DOUT_CTP_07 : out std_logic;
688  BF_DOUT_CTP_08 : out std_logic;
689  BF_DOUT_CTP_09 : out std_logic;
690  BF_DOUT_CTP_10 : out std_logic;
691  BF_DOUT_CTP_11 : out std_logic;
692  BF_DOUT_CTP_12 : out std_logic;
693  BF_DOUT_CTP_13 : out std_logic;
694  BF_DOUT_CTP_14 : out std_logic;
695  BF_DOUT_CTP_15 : out std_logic;
696  BF_DOUT_CTP_16 : out std_logic;
697  BF_DOUT_CTP_17 : out std_logic;
698  BF_DOUT_CTP_18 : out std_logic;
699  BF_DOUT_CTP_19 : out std_logic;
700  BF_DOUT_CTP_20 : out std_logic;
701  BF_DOUT_CTP_21 : out std_logic;
702  BF_DOUT_CTP_22 : out std_logic;
703  BF_DOUT_CTP_23 : out std_logic;
704  BF_DOUT_CTP_24 : out std_logic;
705  BF_DOUT_CTP_25 : out std_logic;
706  BF_DOUT_CTP_26 : out std_logic;
707  BF_DOUT_CTP_27 : out std_logic;
708  BF_DOUT_CTP_28 : out std_logic;
709  BF_DOUT_CTP_29 : out std_logic;
710  BF_DOUT_CTP_30 : out std_logic;
711  BF_DOUT_CTP_31 : out std_logic;
712  BF_DOUT_CTP_64 : out std_logic;
713 
714  BF_DOUT_CTP_32 : out std_logic;
715  BF_DOUT_CTP_33 : out std_logic;
716  BF_DOUT_CTP_34 : out std_logic;
717  BF_DOUT_CTP_35 : out std_logic;
718  BF_DOUT_CTP_36 : out std_logic;
719  BF_DOUT_CTP_37 : out std_logic;
720  BF_DOUT_CTP_38 : out std_logic;
721  BF_DOUT_CTP_39 : out std_logic;
722  BF_DOUT_CTP_40 : out std_logic;
723  BF_DOUT_CTP_41 : out std_logic;
724  BF_DOUT_CTP_42 : out std_logic;
725  BF_DOUT_CTP_43 : out std_logic;
726  BF_DOUT_CTP_44 : out std_logic;
727  BF_DOUT_CTP_45 : out std_logic;
728  BF_DOUT_CTP_46 : out std_logic;
729  BF_DOUT_CTP_47 : out std_logic;
730  BF_DOUT_CTP_48 : out std_logic;
731  BF_DOUT_CTP_49 : out std_logic;
732  BF_DOUT_CTP_50 : out std_logic;
733  BF_DOUT_CTP_51 : out std_logic;
734  BF_DOUT_CTP_52 : out std_logic;
735  BF_DOUT_CTP_53 : out std_logic;
736  BF_DOUT_CTP_54 : out std_logic;
737  BF_DOUT_CTP_55 : out std_logic;
738  BF_DOUT_CTP_56 : out std_logic;
739  BF_DOUT_CTP_57 : out std_logic;
740  BF_DOUT_CTP_58 : out std_logic;
741  BF_DOUT_CTP_59 : out std_logic;
742  BF_DOUT_CTP_60 : out std_logic;
743  BF_DOUT_CTP_61 : out std_logic;
744  BF_DOUT_CTP_62 : out std_logic;
745  BF_DOUT_CTP_63 : out std_logic;
746  BF_DOUT_CTP_65 : out std_logic;
747 
748  D_CBL_00_B : out std_logic;
749  D_CBL_01_B : out std_logic;
750  D_CBL_02_B : out std_logic;
751  D_CBL_03_B : out std_logic;
752  D_CBL_04_B : out std_logic;
753  D_CBL_05_B : out std_logic;
754  D_CBL_06_B : out std_logic;
755  D_CBL_07_B : out std_logic;
756  D_CBL_08_B : out std_logic;
757  D_CBL_09_B : out std_logic;
758  D_CBL_10_B : out std_logic;
759  D_CBL_11_B : out std_logic;
760  D_CBL_12_B : out std_logic;
761  D_CBL_13_B : out std_logic;
762  D_CBL_14_B : out std_logic;
763  D_CBL_15_B : out std_logic;
764  D_CBL_16_B : out std_logic;
765  D_CBL_17_B : out std_logic;
766  D_CBL_18_B : out std_logic;
767  D_CBL_19_B : out std_logic;
768  D_CBL_20_B : out std_logic;
769  D_CBL_21_B : out std_logic;
770  D_CBL_22_B : out std_logic;
771  D_CBL_23_B : out std_logic;
772  D_CBL_24_B : out std_logic;
773  D_CBL_25_B : out std_logic;
774  D_CBL_26_B : out std_logic;
775  D_CBL_81_B : out std_logic;
776 
777  D_CBL_27_B : out std_logic;
778  D_CBL_28_B : out std_logic;
779  D_CBL_29_B : out std_logic;
780  D_CBL_30_B : out std_logic;
781  D_CBL_31_B : out std_logic;
782  D_CBL_32_B : out std_logic;
783  D_CBL_33_B : out std_logic;
784  D_CBL_34_B : out std_logic;
785  D_CBL_35_B : out std_logic;
786  D_CBL_36_B : out std_logic;
787  D_CBL_37_B : out std_logic;
788  D_CBL_38_B : out std_logic;
789  D_CBL_39_B : out std_logic;
790  D_CBL_40_B : out std_logic;
791  D_CBL_41_B : out std_logic;
792  D_CBL_42_B : out std_logic;
793  D_CBL_43_B : out std_logic;
794  D_CBL_44_B : out std_logic;
795  D_CBL_45_B : out std_logic;
796  D_CBL_46_B : out std_logic;
797  D_CBL_47_B : out std_logic;
798  D_CBL_48_B : out std_logic;
799  D_CBL_49_B : out std_logic;
800  D_CBL_50_B : out std_logic;
801  D_CBL_51_B : out std_logic;
802  D_CBL_52_B : out std_logic;
803  D_CBL_53_B : out std_logic;
804  D_CBL_82_B : out std_logic;
805 
806  D_CBL_54_B : out std_logic;
807  D_CBL_55_B : out std_logic;
808  D_CBL_56_B : out std_logic;
809  D_CBL_57_B : out std_logic;
810  D_CBL_58_B : out std_logic;
811  D_CBL_59_B : out std_logic;
812  D_CBL_60_B : out std_logic;
813  D_CBL_61_B : out std_logic;
814  D_CBL_62_B : out std_logic;
815  D_CBL_63_B : out std_logic;
816  D_CBL_64_B : out std_logic;
817  D_CBL_65_B : out std_logic;
818  D_CBL_66_B : out std_logic;
819  D_CBL_67_B : out std_logic;
820  D_CBL_68_B : out std_logic;
821  D_CBL_69_B : out std_logic;
822  D_CBL_70_B : out std_logic;
823  D_CBL_71_B : out std_logic;
824  D_CBL_72_B : out std_logic;
825  D_CBL_73_B : out std_logic;
826  D_CBL_74_B : out std_logic;
827  D_CBL_75_B : out std_logic;
828  D_CBL_76_B : out std_logic;
829  D_CBL_77_B : out std_logic;
830  D_CBL_78_B : out std_logic;
831  D_CBL_79_B : out std_logic;
832  D_CBL_80_B : out std_logic;
833  D_CBL_83_B : out std_logic;
834 
835  BF_TO_TP_DAQ_SLINK_RETURN_DIR : in std_logic;
836  BF_TO_TP_DAQ_SLINK_RETURN_CMP : in std_logic;
837  BF_TO_TP_ROI_SLINK_RETURN_DIR : in std_logic;
838  BF_TO_TP_ROI_SLINK_RETURN_CMP : in std_logic;
839 
840  BUF_TTC_L1_ACCEPT : in std_logic;
841  BUF_TTC_BNCH_CNT_RES : in std_logic;
842 
843  CLK_120MHz000_XTAL_1_BF_TRNCV_DIR: in std_logic;
844  CLK_120MHz000_XTAL_1_BF_TRNCV_CMP: in std_logic;
845  BF_DAQ_DATA_OUT_DIR : out std_logic;
846  BF_DAQ_DATA_OUT_CMP : out std_logic;
847  BF_ROI_DATA_OUT_DIR : out std_logic;
848  BF_ROI_DATA_OUT_CMP : out std_logic
849 
850  );
851 
852  end component;
853 
854  signal OCB_DS_B: std_logic;
855  signal OCB_A: std_logic_vector(23 downto 0);
856  signal OCB_D: std_logic_vector(15 downto 0);
857 
858  signal OCB_A_BOARD_ADDR: std_logic_vector(7 downto 0);
859  signal OCB_A_LOCAL_ADDR: std_logic_vector(15 downto 0);
860 
861  --011 1000 0000 0010 1011 0001
862  -- *2 = x700562
863 
864  signal BUF_TTC_BNCH_CNT_RES : std_logic;
865 
866 BEGIN
867 
868 
869  OCB_A(23 downto 16) <=OCB_A_BOARD_ADDR;
870  OCB_A(15 downto 0) <=OCB_A_LOCAL_ADDR;
871 
872 
873  -- Instantiate the Unit Under Test (UUT)
874  uut: CMX_top_Base PORT MAP (
875  ----------------------------------------------------------------------------
876  -- VME-- backplane (65 signals)
877  ----------------------------------------------------------------------------
878  OCB_GEO_ADRS_0 => zero,
879  OCB_A01 => OCB_A(1),
880  OCB_A02 => OCB_A(2),
881  OCB_A03 => OCB_A(3),
882  OCB_A04 => OCB_A(4),
883  OCB_A05 => OCB_A(5),
884  OCB_A06 => OCB_A(6),
885  OCB_A07 => OCB_A(7),
886  OCB_A08 => OCB_A(8),
887  OCB_A09 => OCB_A(9),
888  OCB_A10 => OCB_A(10),
889  OCB_A11 => OCB_A(11),
890  OCB_A12 => OCB_A(12),
891  OCB_A13 => OCB_A(13),
892  OCB_A14 => OCB_A(14),
893  OCB_A15 => OCB_A(15),
894  OCB_A16 => OCB_A(16),
895  OCB_A17 => OCB_A(17),
896  OCB_A18 => OCB_A(18),
897  OCB_A19 => OCB_A(19),
898  OCB_A20 => OCB_A(20),
899  OCB_A21 => OCB_A(21),
900  OCB_A22 => OCB_A(22),
901  OCB_A23 => OCB_A(23),
902  OCB_DS_B => OCB_DS_B,
903  OCB_WRITE_B => zero,
904  OCB_SYS_RESET_B => zero,
905  OCB_D => OCB_D,
906  ----------------------------------------------------------------------------
907 
908 
909  P0_0 => P(0)(0),
910  P0_1 => P(0)(1),
911  P0_2 => P(0)(2),
912  P0_3 => P(0)(3),
913  P0_4 => P(0)(4),
914  P0_5 => P(0)(5),
915  P0_6 => P(0)(6),
916  P0_7 => P(0)(7),
917  P0_8 => P(0)(8),
918  P0_9 => P(0)(9),
919  P0_10 => P(0)(10),
920  P0_11 => P(0)(11),
921  P0_12 => P(0)(12),
922  P0_13 => P(0)(13),
923  P0_14 => P(0)(14),
924  P0_15 => P(0)(15),
925  P0_16 => P(0)(16),
926  P0_17 => P(0)(17),
927  P0_18 => P(0)(18),
928  P0_19 => P(0)(19),
929  P0_20 => P(0)(20),
930  P0_21 => P(0)(21),
931  P0_22 => P(0)(22),
932  P0_23 => P(0)(23),
933  P0_24 => P(0)(24),
934  --
935  P1_0 => P(1)(0),
936  P1_1 => P(1)(1),
937  P1_2 => P(1)(2),
938  P1_3 => P(1)(3),
939  P1_4 => P(1)(4),
940  P1_5 => P(1)(5),
941  P1_6 => P(1)(6),
942  P1_7 => P(1)(7),
943  P1_8 => P(1)(8),
944  P1_9 => P(1)(9),
945  P1_10 => P(1)(10),
946  P1_11 => P(1)(11),
947  P1_12 => P(1)(12),
948  P1_13 => P(1)(13),
949  P1_14 => P(1)(14),
950  P1_15 => P(1)(15),
951  P1_16 => P(1)(16),
952  P1_17 => P(1)(17),
953  P1_18 => P(1)(18),
954  P1_19 => P(1)(19),
955  P1_20 => P(1)(20),
956  P1_21 => P(1)(21),
957  P1_22 => P(1)(22),
958  P1_23 => P(1)(23),
959  P1_24 => P(1)(24),
960  --
961  P2_0 => P(2)(0),
962  P2_1 => P(2)(1),
963  P2_2 => P(2)(2),
964  P2_3 => P(2)(3),
965  P2_4 => P(2)(4),
966  P2_5 => P(2)(5),
967  P2_6 => P(2)(6),
968  P2_7 => P(2)(7),
969  P2_8 => P(2)(8),
970  P2_9 => P(2)(9),
971  P2_10 => P(2)(10),
972  P2_11 => P(2)(11),
973  P2_12 => P(2)(12),
974  P2_13 => P(2)(13),
975  P2_14 => P(2)(14),
976  P2_15 => P(2)(15),
977  P2_16 => P(2)(16),
978  P2_17 => P(2)(17),
979  P2_18 => P(2)(18),
980  P2_19 => P(2)(19),
981  P2_20 => P(2)(20),
982  P2_21 => P(2)(21),
983  P2_22 => P(2)(22),
984  P2_23 => P(2)(23),
985  P2_24 => P(2)(24),
986  --
987  P3_0 => P(3)(0),
988  P3_1 => P(3)(1),
989  P3_2 => P(3)(2),
990  P3_3 => P(3)(3),
991  P3_4 => P(3)(4),
992  P3_5 => P(3)(5),
993  P3_6 => P(3)(6),
994  P3_7 => P(3)(7),
995  P3_8 => P(3)(8),
996  P3_9 => P(3)(9),
997  P3_10 => P(3)(10),
998  P3_11 => P(3)(11),
999  P3_12 => P(3)(12),
1000  P3_13 => P(3)(13),
1001  P3_14 => P(3)(14),
1002  P3_15 => P(3)(15),
1003  P3_16 => P(3)(16),
1004  P3_17 => P(3)(17),
1005  P3_18 => P(3)(18),
1006  P3_19 => P(3)(19),
1007  P3_20 => P(3)(20),
1008  P3_21 => P(3)(21),
1009  P3_22 => P(3)(22),
1010  P3_23 => P(3)(23),
1011  P3_24 => P(3)(24),
1012  --
1013  P4_0 => P(4)(0),
1014  P4_1 => P(4)(1),
1015  P4_2 => P(4)(2),
1016  P4_3 => P(4)(3),
1017  P4_4 => P(4)(4),
1018  P4_5 => P(4)(5),
1019  P4_6 => P(4)(6),
1020  P4_7 => P(4)(7),
1021  P4_8 => P(4)(8),
1022  P4_9 => P(4)(9),
1023  P4_10 => P(4)(10),
1024  P4_11 => P(4)(11),
1025  P4_12 => P(4)(12),
1026  P4_13 => P(4)(13),
1027  P4_14 => P(4)(14),
1028  P4_15 => P(4)(15),
1029  P4_16 => P(4)(16),
1030  P4_17 => P(4)(17),
1031  P4_18 => P(4)(18),
1032  P4_19 => P(4)(19),
1033  P4_20 => P(4)(20),
1034  P4_21 => P(4)(21),
1035  P4_22 => P(4)(22),
1036  P4_23 => P(4)(23),
1037  P4_24 => P(4)(24),
1038  --
1039  P5_0 => P(5)(0),
1040  P5_1 => P(5)(1),
1041  P5_2 => P(5)(2),
1042  P5_3 => P(5)(3),
1043  P5_4 => P(5)(4),
1044  P5_5 => P(5)(5),
1045  P5_6 => P(5)(6),
1046  P5_7 => P(5)(7),
1047  P5_8 => P(5)(8),
1048  P5_9 => P(5)(9),
1049  P5_10 => P(5)(10),
1050  P5_11 => P(5)(11),
1051  P5_12 => P(5)(12),
1052  P5_13 => P(5)(13),
1053  P5_14 => P(5)(14),
1054  P5_15 => P(5)(15),
1055  P5_16 => P(5)(16),
1056  P5_17 => P(5)(17),
1057  P5_18 => P(5)(18),
1058  P5_19 => P(5)(19),
1059  P5_20 => P(5)(20),
1060  P5_21 => P(5)(21),
1061  P5_22 => P(5)(22),
1062  P5_23 => P(5)(23),
1063  P5_24 => P(5)(24),
1064  --
1065  P6_0 => P(6)(0),
1066  P6_1 => P(6)(1),
1067  P6_2 => P(6)(2),
1068  P6_3 => P(6)(3),
1069  P6_4 => P(6)(4),
1070  P6_5 => P(6)(5),
1071  P6_6 => P(6)(6),
1072  P6_7 => P(6)(7),
1073  P6_8 => P(6)(8),
1074  P6_9 => P(6)(9),
1075  P6_10 => P(6)(10),
1076  P6_11 => P(6)(11),
1077  P6_12 => P(6)(12),
1078  P6_13 => P(6)(13),
1079  P6_14 => P(6)(14),
1080  P6_15 => P(6)(15),
1081  P6_16 => P(6)(16),
1082  P6_17 => P(6)(17),
1083  P6_18 => P(6)(18),
1084  P6_19 => P(6)(19),
1085  P6_20 => P(6)(20),
1086  P6_21 => P(6)(21),
1087  P6_22 => P(6)(22),
1088  P6_23 => P(6)(23),
1089  P6_24 => P(6)(24),
1090  --
1091  P7_0 => P(7)(0),
1092  P7_1 => P(7)(1),
1093  P7_2 => P(7)(2),
1094  P7_3 => P(7)(3),
1095  P7_4 => P(7)(4),
1096  P7_5 => P(7)(5),
1097  P7_6 => P(7)(6),
1098  P7_7 => P(7)(7),
1099  P7_8 => P(7)(8),
1100  P7_9 => P(7)(9),
1101  P7_10 => P(7)(10),
1102  P7_11 => P(7)(11),
1103  P7_12 => P(7)(12),
1104  P7_13 => P(7)(13),
1105  P7_14 => P(7)(14),
1106  P7_15 => P(7)(15),
1107  P7_16 => P(7)(16),
1108  P7_17 => P(7)(17),
1109  P7_18 => P(7)(18),
1110  P7_19 => P(7)(19),
1111  P7_20 => P(7)(20),
1112  P7_21 => P(7)(21),
1113  P7_22 => P(7)(22),
1114  P7_23 => P(7)(23),
1115  P7_24 => P(7)(24),
1116  --
1117  P8_0 => P(8)(0),
1118  P8_1 => P(8)(1),
1119  P8_2 => P(8)(2),
1120  P8_3 => P(8)(3),
1121  P8_4 => P(8)(4),
1122  P8_5 => P(8)(5),
1123  P8_6 => P(8)(6),
1124  P8_7 => P(8)(7),
1125  P8_8 => P(8)(8),
1126  P8_9 => P(8)(9),
1127  P8_10 => P(8)(10),
1128  P8_11 => P(8)(11),
1129  P8_12 => P(8)(12),
1130  P8_13 => P(8)(13),
1131  P8_14 => P(8)(14),
1132  P8_15 => P(8)(15),
1133  P8_16 => P(8)(16),
1134  P8_17 => P(8)(17),
1135  P8_18 => P(8)(18),
1136  P8_19 => P(8)(19),
1137  P8_20 => P(8)(20),
1138  P8_21 => P(8)(21),
1139  P8_22 => P(8)(22),
1140  P8_23 => P(8)(23),
1141  P8_24 => P(8)(24),
1142  --
1143  P9_0 => P(9)(0),
1144  P9_1 => P(9)(1),
1145  P9_2 => P(9)(2),
1146  P9_3 => P(9)(3),
1147  P9_4 => P(9)(4),
1148  P9_5 => P(9)(5),
1149  P9_6 => P(9)(6),
1150  P9_7 => P(9)(7),
1151  P9_8 => P(9)(8),
1152  P9_9 => P(9)(9),
1153  P9_10 => P(9)(10),
1154  P9_11 => P(9)(11),
1155  P9_12 => P(9)(12),
1156  P9_13 => P(9)(13),
1157  P9_14 => P(9)(14),
1158  P9_15 => P(9)(15),
1159  P9_16 => P(9)(16),
1160  P9_17 => P(9)(17),
1161  P9_18 => P(9)(18),
1162  P9_19 => P(9)(19),
1163  P9_20 => P(9)(20),
1164  P9_21 => P(9)(21),
1165  P9_22 => P(9)(22),
1166  P9_23 => P(9)(23),
1167  P9_24 => P(9)(24),
1168  --
1169  P10_0 => P(10)(0),
1170  P10_1 => P(10)(1),
1171  P10_2 => P(10)(2),
1172  P10_3 => P(10)(3),
1173  P10_4 => P(10)(4),
1174  P10_5 => P(10)(5),
1175  P10_6 => P(10)(6),
1176  P10_7 => P(10)(7),
1177  P10_8 => P(10)(8),
1178  P10_9 => P(10)(9),
1179  P10_10 => P(10)(10),
1180  P10_11 => P(10)(11),
1181  P10_12 => P(10)(12),
1182  P10_13 => P(10)(13),
1183  P10_14 => P(10)(14),
1184  P10_15 => P(10)(15),
1185  P10_16 => P(10)(16),
1186  P10_17 => P(10)(17),
1187  P10_18 => P(10)(18),
1188  P10_19 => P(10)(19),
1189  P10_20 => P(10)(20),
1190  P10_21 => P(10)(21),
1191  P10_22 => P(10)(22),
1192  P10_23 => P(10)(23),
1193  P10_24 => P(10)(24),
1194  --
1195  P11_0 => P(11)(0),
1196  P11_1 => P(11)(1),
1197  P11_2 => P(11)(2),
1198  P11_3 => P(11)(3),
1199  P11_4 => P(11)(4),
1200  P11_5 => P(11)(5),
1201  P11_6 => P(11)(6),
1202  P11_7 => P(11)(7),
1203  P11_8 => P(11)(8),
1204  P11_9 => P(11)(9),
1205  P11_10 => P(11)(10),
1206  P11_11 => P(11)(11),
1207  P11_12 => P(11)(12),
1208  P11_13 => P(11)(13),
1209  P11_14 => P(11)(14),
1210  P11_15 => P(11)(15),
1211  P11_16 => P(11)(16),
1212  P11_17 => P(11)(17),
1213  P11_18 => P(11)(18),
1214  P11_19 => P(11)(19),
1215  P11_20 => P(11)(20),
1216  P11_21 => P(11)(21),
1217  P11_22 => P(11)(22),
1218  P11_23 => P(11)(23),
1219  P11_24 => P(11)(24),
1220  --
1221  P12_0 => P(12)(0),
1222  P12_1 => P(12)(1),
1223  P12_2 => P(12)(2),
1224  P12_3 => P(12)(3),
1225  P12_4 => P(12)(4),
1226  P12_5 => P(12)(5),
1227  P12_6 => P(12)(6),
1228  P12_7 => P(12)(7),
1229  P12_8 => P(12)(8),
1230  P12_9 => P(12)(9),
1231  P12_10 => P(12)(10),
1232  P12_11 => P(12)(11),
1233  P12_12 => P(12)(12),
1234  P12_13 => P(12)(13),
1235  P12_14 => P(12)(14),
1236  P12_15 => P(12)(15),
1237  P12_16 => P(12)(16),
1238  P12_17 => P(12)(17),
1239  P12_18 => P(12)(18),
1240  P12_19 => P(12)(19),
1241  P12_20 => P(12)(20),
1242  P12_21 => P(12)(21),
1243  P12_22 => P(12)(22),
1244  P12_23 => P(12)(23),
1245  P12_24 => P(12)(24),
1246  --
1247  P13_0 => P(13)(0),
1248  P13_1 => P(13)(1),
1249  P13_2 => P(13)(2),
1250  P13_3 => P(13)(3),
1251  P13_4 => P(13)(4),
1252  P13_5 => P(13)(5),
1253  P13_6 => P(13)(6),
1254  P13_7 => P(13)(7),
1255  P13_8 => P(13)(8),
1256  P13_9 => P(13)(9),
1257  P13_10 => P(13)(10),
1258  P13_11 => P(13)(11),
1259  P13_12 => P(13)(12),
1260  P13_13 => P(13)(13),
1261  P13_14 => P(13)(14),
1262  P13_15 => P(13)(15),
1263  P13_16 => P(13)(16),
1264  P13_17 => P(13)(17),
1265  P13_18 => P(13)(18),
1266  P13_19 => P(13)(19),
1267  P13_20 => P(13)(20),
1268  P13_21 => P(13)(21),
1269  P13_22 => P(13)(22),
1270  P13_23 => P(13)(23),
1271  P13_24 => P(13)(24),
1272  --
1273  P14_0 => P(14)(0),
1274  P14_1 => P(14)(1),
1275  P14_2 => P(14)(2),
1276  P14_3 => P(14)(3),
1277  P14_4 => P(14)(4),
1278  P14_5 => P(14)(5),
1279  P14_6 => P(14)(6),
1280  P14_7 => P(14)(7),
1281  P14_8 => P(14)(8),
1282  P14_9 => P(14)(9),
1283  P14_10 => P(14)(10),
1284  P14_11 => P(14)(11),
1285  P14_12 => P(14)(12),
1286  P14_13 => P(14)(13),
1287  P14_14 => P(14)(14),
1288  P14_15 => P(14)(15),
1289  P14_16 => P(14)(16),
1290  P14_17 => P(14)(17),
1291  P14_18 => P(14)(18),
1292  P14_19 => P(14)(19),
1293  P14_20 => P(14)(20),
1294  P14_21 => P(14)(21),
1295  P14_22 => P(14)(22),
1296  P14_23 => P(14)(23),
1297  P14_24 => P(14)(24),
1298  --
1299  P15_0 => P(15)(0),
1300  P15_1 => P(15)(1),
1301  P15_2 => P(15)(2),
1302  P15_3 => P(15)(3),
1303  P15_4 => P(15)(4),
1304  P15_5 => P(15)(5),
1305  P15_6 => P(15)(6),
1306  P15_7 => P(15)(7),
1307  P15_8 => P(15)(8),
1308  P15_9 => P(15)(9),
1309  P15_10 => P(15)(10),
1310  P15_11 => P(15)(11),
1311  P15_12 => P(15)(12),
1312  P15_13 => P(15)(13),
1313  P15_14 => P(15)(14),
1314  P15_15 => P(15)(15),
1315  P15_16 => P(15)(16),
1316  P15_17 => P(15)(17),
1317  P15_18 => P(15)(18),
1318  P15_19 => P(15)(19),
1319  P15_20 => P(15)(20),
1320  P15_21 => P(15)(21),
1321  P15_22 => P(15)(22),
1322  P15_23 => P(15)(23),
1323  P15_24 => P(15)(24),
1324  --
1327 
1328  BF_DEBUG_0 => open,
1329  BF_DEBUG_1 => open,
1330  BF_DEBUG_2 => open,
1331  BF_DEBUG_3 => open,
1332  BF_DEBUG_4 => open,
1333  BF_DEBUG_5 => open,
1334  BF_DEBUG_6 => open,
1335  BF_DEBUG_7 => open,
1336  BF_DEBUG_8 => open,
1337  BF_DEBUG_9 => open,
1338 
1339 
1340  BF_REQ_CTP_1_INPUT => open,
1341  BF_REQ_CTP_2_INPUT => open,
1342  BF_REQ_CABLE_1_INPUT => open,
1343  BF_REQ_CABLE_2_INPUT => open,
1344  BF_REQ_CABLE_3_INPUT => open,
1345  BF_LED_REQ_0 => open,
1346  BF_LED_REQ_1 => open,
1347  BF_LED_REQ_2 => open,
1348  BF_LED_REQ_3 => open,
1349  BF_LED_REQ_4 => open,
1350  BF_TO_FROM_BSPT_0 => '0',
1351  BF_TO_FROM_BSPT_1 => '0',
1352  BF_TO_FROM_BSPT_2 => open,
1353  BF_TO_FROM_BSPT_3 => open,
1354  BF_TO_FROM_BSPT_4 => open,
1355  BF_TO_FROM_BSPT_5 => open,
1356  BF_TO_FROM_BSPT_6 => open,
1357  BF_TO_FROM_BSPT_7 => open,
1358 
1359 
1360  BF_DOUT_CTP_00 => CTPout(0),
1361  BF_DOUT_CTP_01 => CTPout(1),
1362  BF_DOUT_CTP_02 => CTPout(2),
1363  BF_DOUT_CTP_03 => CTPout(3),
1364  BF_DOUT_CTP_04 => CTPout(4),
1365  BF_DOUT_CTP_05 => CTPout(5),
1366  BF_DOUT_CTP_06 => CTPout(6),
1367  BF_DOUT_CTP_07 => CTPout(7),
1368  BF_DOUT_CTP_08 => CTPout(8),
1369  BF_DOUT_CTP_09 => CTPout(9),
1370  BF_DOUT_CTP_10 => CTPout(10),
1371  BF_DOUT_CTP_11 => CTPout(11),
1372  BF_DOUT_CTP_12 => CTPout(12),
1373  BF_DOUT_CTP_13 => CTPout(13),
1374  BF_DOUT_CTP_14 => CTPout(14),
1375  BF_DOUT_CTP_15 => CTPout(15),
1376  BF_DOUT_CTP_16 => CTPout(16),
1377  BF_DOUT_CTP_17 => CTPout(17),
1378  BF_DOUT_CTP_18 => CTPout(18),
1379  BF_DOUT_CTP_19 => CTPout(19),
1380  BF_DOUT_CTP_20 => CTPout(20),
1381  BF_DOUT_CTP_21 => CTPout(21),
1382  BF_DOUT_CTP_22 => CTPout(22),
1383  BF_DOUT_CTP_23 => CTPout(23),
1384  BF_DOUT_CTP_24 => CTPout(24),
1385  BF_DOUT_CTP_25 => CTPout(25),
1386  BF_DOUT_CTP_26 => CTPout(26),
1387  BF_DOUT_CTP_27 => CTPout(27),
1388  BF_DOUT_CTP_28 => CTPout(28),
1389  BF_DOUT_CTP_29 => CTPout(29),
1390  BF_DOUT_CTP_30 => CTPout(30),
1391  BF_DOUT_CTP_31 => CTPout(31),
1392  BF_DOUT_CTP_64 => CTPout(64), -- changed from 64
1393 
1394  BF_DOUT_CTP_32 => CTPout(32),
1395  BF_DOUT_CTP_33 => CTPout(33),
1396  BF_DOUT_CTP_34 => CTPout(34),
1397  BF_DOUT_CTP_35 => CTPout(35),
1398  BF_DOUT_CTP_36 => CTPout(36),
1399  BF_DOUT_CTP_37 => CTPout(37),
1400  BF_DOUT_CTP_38 => CTPout(38),
1401  BF_DOUT_CTP_39 => CTPout(39),
1402  BF_DOUT_CTP_40 => CTPout(40),
1403  BF_DOUT_CTP_41 => CTPout(41),
1404  BF_DOUT_CTP_42 => CTPout(42),
1405  BF_DOUT_CTP_43 => CTPout(43),
1406  BF_DOUT_CTP_44 => CTPout(44),
1407  BF_DOUT_CTP_45 => CTPout(45),
1408  BF_DOUT_CTP_46 => CTPout(46),
1409  BF_DOUT_CTP_47 => CTPout(47),
1410  BF_DOUT_CTP_48 => CTPout(48),
1411  BF_DOUT_CTP_49 => CTPout(49),
1412  BF_DOUT_CTP_50 => CTPout(50),
1413  BF_DOUT_CTP_51 => CTPout(51),
1414  BF_DOUT_CTP_52 => CTPout(52),
1415  BF_DOUT_CTP_53 => CTPout(53),
1416  BF_DOUT_CTP_54 => CTPout(54),
1417  BF_DOUT_CTP_55 => CTPout(55),
1418  BF_DOUT_CTP_56 => CTPout(56),
1419  BF_DOUT_CTP_57 => CTPout(57),
1420  BF_DOUT_CTP_58 => CTPout(58),
1421  BF_DOUT_CTP_59 => CTPout(59),
1422  BF_DOUT_CTP_60 => CTPout(60),
1423  BF_DOUT_CTP_61 => CTPout(61),
1424  BF_DOUT_CTP_62 => CTPout(62),
1425  BF_DOUT_CTP_63 => CTPout(63),
1426  BF_DOUT_CTP_65 => CTPout(65),
1427 
1428  D_CBL_00_B => open,
1429  D_CBL_01_B => open,
1430  D_CBL_02_B => open,
1431  D_CBL_03_B => open,
1432  D_CBL_04_B => open,
1433  D_CBL_05_B => open,
1434  D_CBL_06_B => open,
1435  D_CBL_07_B => open,
1436  D_CBL_08_B => open,
1437  D_CBL_09_B => open,
1438  D_CBL_10_B => open,
1439  D_CBL_11_B => open,
1440  D_CBL_12_B => open,
1441  D_CBL_13_B => open,
1442  D_CBL_14_B => open,
1443  D_CBL_15_B => open,
1444  D_CBL_16_B => open,
1445  D_CBL_17_B => open,
1446  D_CBL_18_B => open,
1447  D_CBL_19_B => open,
1448  D_CBL_20_B => open,
1449  D_CBL_21_B => open,
1450  D_CBL_22_B => open,
1451  D_CBL_23_B => open,
1452  D_CBL_24_B => open,
1453  D_CBL_25_B => open,
1454  D_CBL_26_B => open,
1455  D_CBL_81_B => open,
1456 
1457  D_CBL_27_B => open,
1458  D_CBL_28_B => open,
1459  D_CBL_29_B => open,
1460  D_CBL_30_B => open,
1461  D_CBL_31_B => open,
1462  D_CBL_32_B => open,
1463  D_CBL_33_B => open,
1464  D_CBL_34_B => open,
1465  D_CBL_35_B => open,
1466  D_CBL_36_B => open,
1467  D_CBL_37_B => open,
1468  D_CBL_38_B => open,
1469  D_CBL_39_B => open,
1470  D_CBL_40_B => open,
1471  D_CBL_41_B => open,
1472  D_CBL_42_B => open,
1473  D_CBL_43_B => open,
1474  D_CBL_44_B => open,
1475  D_CBL_45_B => open,
1476  D_CBL_46_B => open,
1477  D_CBL_47_B => open,
1478  D_CBL_48_B => open,
1479  D_CBL_49_B => open,
1480  D_CBL_50_B => open,
1481  D_CBL_51_B => open,
1482  D_CBL_52_B => open,
1483  D_CBL_53_B => open,
1484  D_CBL_82_B => open,
1485 
1486  D_CBL_54_B => open,
1487  D_CBL_55_B => open,
1488  D_CBL_56_B => open,
1489  D_CBL_57_B => open,
1490  D_CBL_58_B => open,
1491  D_CBL_59_B => open,
1492  D_CBL_60_B => open,
1493  D_CBL_61_B => open,
1494  D_CBL_62_B => open,
1495  D_CBL_63_B => open,
1496  D_CBL_64_B => open,
1497  D_CBL_65_B => open,
1498  D_CBL_66_B => open,
1499  D_CBL_67_B => open,
1500  D_CBL_68_B => open,
1501  D_CBL_69_B => open,
1502  D_CBL_70_B => open,
1503  D_CBL_71_B => open,
1504  D_CBL_72_B => open,
1505  D_CBL_73_B => open,
1506  D_CBL_74_B => open,
1507  D_CBL_75_B => open,
1508  D_CBL_76_B => open,
1509  D_CBL_77_B => open,
1510  D_CBL_78_B => open,
1511  D_CBL_79_B => open,
1512  D_CBL_80_B => open,
1513  D_CBL_83_B => open,
1514 
1519 
1522 
1525  BF_DAQ_DATA_OUT_DIR => open,
1526  BF_DAQ_DATA_OUT_CMP => open,
1527  BF_ROI_DATA_OUT_DIR => open,
1528  BF_ROI_DATA_OUT_CMP => open
1529 
1530  );
1531 
1532  -- Clock process definitions
1533  clk_process_120 :process -- CLK 120 is out of phase with clk_40
1534  begin
1537  wait for clk120_period/2;
1540  wait for clk120_period/2;
1541  end process;
1542 
1543 
1544  -- Clock process definitions
1545  clk_process :process
1546  begin
1547  clk40_DIR <= '0';
1548  clk40_CMP <= '1';
1549  wait for clk40_DIR_period/2;
1550  clk40_DIR <= '1';
1551  clk40_CMP <= '0';
1552  wait for clk40_DIR_period/2;
1553  end process;
1554 
1555 
1556  -- Clock process definitions
1557  clk_process_backplane : process -- This covers the backplane clocks and data strobes
1558  begin
1559  wait until (clk40_CMP'event and clk40_CMP='1');
1560  loop
1561  clk160 <= '1';
1562  clk80 <= '0';
1563  WAIT FOR clk160_period/2;
1564  clk160 <= '0';
1565  clk80 <= '1';
1566  WAIT FOR clk160_period/2;
1567  clk160 <= '1';
1568  clk80 <= '1';
1569  WAIT FOR clk160_period/2;
1570  clk160 <= '0';
1571  clk80 <= '0';
1572  WAIT FOR clk160_period/2;
1573  end loop;
1574  end process clk_process_backplane;
1575 
1576  clock_gen: for i in 0 to 15 generate
1577  P(i)<= clk80 & "ZZZZZZZZZZZZZZZZZZZZZZZZ";
1578  end generate;
1579 
1580  --strobe for vme the fixed vme write so reset is '0'
1581  zeros<=(others=>'0');
1582 
1583  strobe_process: process
1584  begin
1585 
1586  OCB_DS_B<='1';
1587  OCB_A_BOARD_ADDR<=x"70";
1588 
1589  OCB_A_LOCAL_ADDR<=std_logic_vector(to_unsigned(ADDR_REG_RW_INPUT_MOD_RESET,16));
1590  OCB_D<=(others=>'0');
1591  wait for 500 ns;
1592  OCB_DS_B<='0';
1593  wait for 100 ns;
1594  OCB_DS_B<='1';
1595  wait for 100 ns;
1596 
1597  OCB_A_LOCAL_ADDR<=std_logic_vector(to_unsigned(ADDR_REG_RW_DAQ_SLICE,16));
1598  OCB_D<=(others=>'0');
1599  wait for 500 ns;
1600  OCB_DS_B<='0';
1601  wait for 100 ns;
1602  OCB_DS_B<='1';
1603  wait for 100 ns;
1604 
1605  OCB_A_LOCAL_ADDR<=std_logic_vector(to_unsigned(ADDR_REG_RW_DAQ_RAM_OFFSET,16));
1606  OCB_D<=std_logic_vector(to_unsigned(7,16));
1607  wait for 500 ns;
1608  OCB_DS_B<='0';
1609  wait for 100 ns;
1610  OCB_DS_B<='1';
1611  wait for 100 ns;
1612 
1613  OCB_A_LOCAL_ADDR<=std_logic_vector(to_unsigned(ADDR_REG_RW_BCID_RESET_VAL,16));
1614  OCB_D<=std_logic_vector(to_unsigned(350,16));
1615  wait for 500 ns;
1616  OCB_DS_B<='0';
1617  wait for 100 ns;
1618  OCB_DS_B<='1';
1619  wait for 100 ns;
1620 
1621  OCB_A_LOCAL_ADDR<=std_logic_vector(to_unsigned(ADDR_REG_RW_DAQ_ROI_RESET,16));
1622  OCB_D<=x"0001";
1623  wait for 500 ns;
1624  OCB_DS_B<='0';
1625  wait for 100 ns;
1626  OCB_DS_B<='1';
1627  wait for 100 ns;
1628 
1629 
1630  OCB_A_LOCAL_ADDR<=std_logic_vector(to_unsigned(ADDR_REG_RW_DAQ_ROI_RESET,16));
1631  OCB_D<=x"0000";
1632  wait for 100 ns;
1633  OCB_DS_B<='0';
1634  wait for 100 ns;
1635  OCB_DS_B<='1';
1636  wait for 100 ns;
1637 
1638  wait;
1639  end process strobe_process;
1640 
1641 
1642  -- Stimulus process
1643  stim_proc: process
1644  begin
1645  l1a<='0';
1646  BUF_TTC_BNCH_CNT_RES<='0';
1647  wait for 5000 ns;
1648  wait until rising_edge(clk40_DIR);
1649  BUF_TTC_BNCH_CNT_RES<='1';
1650  wait until rising_edge(clk40_DIR);
1651  BUF_TTC_BNCH_CNT_RES<='0';
1652  wait for 500 ns;
1653  wait until falling_edge(clk40_DIR);
1654  l1a <= '1';
1655  wait until falling_edge(clk40_DIR);
1656  l1a<='0';
1657  wait until falling_edge(clk40_DIR);
1658  wait until falling_edge(clk40_DIR);
1659  wait until falling_edge(clk40_DIR);
1660  wait until falling_edge(clk40_DIR);
1661  wait until falling_edge(clk40_DIR);
1662  wait until falling_edge(clk40_DIR);
1663  l1a <= '1';
1664  wait until falling_edge(clk40_DIR);
1665  l1a<='0';
1666 
1667  wait;
1668  end process stim_proc;
1669 
1670 JEM_INPUTS: process
1671 
1672  VARIABLE fileline_jem0 : LINE;
1673  VARIABLE fileline_jem1 : LINE;
1674  VARIABLE fileline_jem2 : LINE;
1675  VARIABLE fileline_jem3 : LINE;
1676  VARIABLE fileline_jem4 : LINE;
1677  VARIABLE fileline_jem5 : LINE;
1678  VARIABLE fileline_jem6 : LINE;
1679  VARIABLE fileline_jem7 : LINE;
1680  VARIABLE fileline_jem8 : LINE;
1681  VARIABLE fileline_jem9 : LINE;
1682  VARIABLE fileline_jem10 : LINE;
1683  VARIABLE fileline_jem11 : LINE;
1684  VARIABLE fileline_jem12 : LINE;
1685  VARIABLE fileline_jem13 : LINE;
1686  VARIABLE fileline_jem14 : LINE;
1687  VARIABLE fileline_jem15 : LINE;
1688 
1689  type mystring is array(15 downto 0) of string(24 downto 1); --always counts from one
1690  VARIABLE dstring : mystring;
1691 
1692  begin
1693  for i in 0 to 15 loop -- Blank backplane data
1694  P(i) <= 'Z' & "100000000000000000000000";
1695  end loop;
1696  WAIT for 5500 ns;
1697  WAIT until (clk160_CMP'event and clk160='1'); -- Synchronize with backplane timing
1698  while not endfile (data_jem0) loop -- assume all files have equal length
1699  -- Read lines from input files:
1700  readline(data_jem0,fileline_jem0);
1701  readline(data_jem1,fileline_jem1);
1702  readline(data_jem2,fileline_jem2);
1703  readline(data_jem3,fileline_jem3);
1704  readline(data_jem4,fileline_jem4);
1705  readline(data_jem5,fileline_jem5);
1706  readline(data_jem6,fileline_jem6);
1707  readline(data_jem7,fileline_jem7);
1708  readline(data_jem8,fileline_jem8);
1709  readline(data_jem9,fileline_jem9);
1710  readline(data_jem10,fileline_jem10);
1711  readline(data_jem11,fileline_jem11);
1712  readline(data_jem12,fileline_jem12);
1713  readline(data_jem13,fileline_jem13);
1714  readline(data_jem14,fileline_jem14);
1715  readline(data_jem15,fileline_jem15);
1716  -- Extract data strings from the lines
1717  read(fileline_jem0,dstring(0));
1718  read(fileline_jem1,dstring(1));
1719  read(fileline_jem2,dstring(2));
1720  read(fileline_jem3,dstring(3));
1721  read(fileline_jem4,dstring(4));
1722  read(fileline_jem5,dstring(5));
1723  read(fileline_jem6,dstring(6));
1724  read(fileline_jem7,dstring(7));
1725  read(fileline_jem8,dstring(8));
1726  read(fileline_jem9,dstring(9));
1727  read(fileline_jem10,dstring(10));
1728  read(fileline_jem11,dstring(11));
1729  read(fileline_jem12,dstring(12));
1730  read(fileline_jem13,dstring(13));
1731  read(fileline_jem14,dstring(14));
1732  read(fileline_jem15,dstring(15));
1733  -- Finally, enter the extracted data into the backplane inputs
1734  for i in 0 to 15 loop
1735  P(i) <= 'Z' & str_to_stdvec(dstring(i)(24 downto 1));
1736  end loop;
1737  WAIT until (clk160'event and clk160='1');
1738  end loop;
1739  for i in 0 to 15 loop -- Blank backplane data
1740  P(i) <= 'Z' & "100000000000000000000000";
1741  end loop;
1742 
1743  wait; -- Wait forever
1744 end process JEM_INPUTS; -- end of input stimulus process;
1745 
1746  -- invert the (already inverted) CTP output for convenience sake
1747 
1748  CTPout_clean <=
1749  (not(CTPout(65) & CTPout(63 downto 32) & CTPout(64) & CTPout (31 downto 0)) AND
1750  "000111111111111111111111111111111000111111111111111111111111111111");
1751 
1752 CTP_OUTPUT : process
1753 
1754  VARIABLE fileline_ctp : LINE;
1755  VARIABLE ctpstring : string(32 downto 1);
1756 
1757  begin
1758  ctpvec_low <= (others => '0');
1759  ctpvec_high <= (others => '0');
1760  WAIT for 5500 ns;
1761  WAIT for clk40_DIR_period * ctp_delay;
1762  WAIT until (clk40_DIR'event and clk40_DIR='1'); -- Synchronize with backplane timing
1763  while not endfile (ctp_out) loop -- assume all files have equal length
1764  readline(ctp_out,fileline_ctp);
1765  read (fileline_ctp, ctpstring);
1766  ctpvec_low <= str_to_stdvec(ctpstring(32 downto 1));
1767  readline(ctp_out,fileline_ctp);
1768  read (fileline_ctp, ctpstring);
1769  ctpvec_high <= str_to_stdvec(ctpstring(32 downto 1));
1770  WAIT until (clk40_DIR'event and clk40_DIR='1');
1771  end loop;
1772  ctpvec_low <= (others => '0');
1773  ctpvec_high <= (others => '0');
1774  wait;
1775 end process CTP_OUTPUT;
1776 
1777 -- build the reference vector
1778 
1779 CTPout_ref <= '0' & ctpvec_high & '0' & ctpvec_low;
1780 
1781 -- check for errors
1782 
1783 CTP_FLAG_ERRORS : process
1784 
1785 begin
1786 
1787  WAIT until (clk40_DIR'event);
1788  if (CTPout_ref = CTPout_clean) then
1789  ctp_error <= '0';
1790  else
1791  ctp_error <= '1';
1792  end if;
1793 
1794 end process CTP_FLAG_ERRORS;
1795 
1796 -- PROCESS -- clock process for USR_CLK
1797 -- BEGIN
1798 -- WAIT for OFFSET;
1799 -- CLOCK_LOOP : LOOP
1800 -- USR_CLK <= '0';
1801 -- WAIT FOR (PERIOD_USR_CLK - (PERIOD_USR_CLK * DUTY_CYCLE));
1802 -- USR_CLK <= '1';
1803 -- WAIT FOR (PERIOD_USR_CLK * DUTY_CYCLE);
1804 -- END LOOP CLOCK_LOOP;
1805 -- END PROCESS;
1806 
1807 
1808 -- -- Trigger Output
1809 -- tb_trigout:
1810 -- PROCESS(USR_CLK)
1811 -- BEGIN
1812 -- if (USR_CLK='1' AND USR_CLK'EVENT) then
1813 -- if TRG_OUT='1' then
1814 -- write(trigsave, HT); -- put the tab
1815 -- write(trigsave,slv2int(EDEP(0,1)));
1816 -- writeline(data_trig_out,trigsave);
1817 -- end if;
1818 -- end if;
1819 -- END PROCESS tb_trigout;
1820 --
1821 
1822 END;
in P6_5std_logic
out BF_DOUT_CTP_41std_logic
in P3_21std_logic
in P9_17std_logic
in P1_7std_logic
in P12_4std_logic
in P3_6std_logic
in P11_20std_logic
out D_CBL_48_Bstd_logic
in P6_24std_logic
out BF_DOUT_CTP_01std_logic
in P13_17std_logic
in P10_16std_logic
in P14_21std_logic
in P11_18std_logic
out BF_TO_FROM_BSPT_2std_logic
time :=6.238 ns CLK160_period
out BF_DAQ_DATA_OUT_CMPstd_logic
in OCB_A10std_logic
in CLK_120MHz000_XTAL_1_BF_TRNCV_DIRstd_logic
in P11_7std_logic
in P14_13std_logic
out D_CBL_74_Bstd_logic
in P1_21std_logic
in P7_20std_logic
out D_CBL_32_Bstd_logic
in BF_TO_TP_ROI_SLINK_RETURN_CMPstd_logic
out BF_TO_FROM_BSPT_3std_logic
in P5_10std_logic
in P7_10std_logic
in P2_14std_logic
in P1_2std_logic
in P9_3std_logic
in P1_10std_logic
out D_CBL_42_Bstd_logic
in P1_19std_logic
in P4_12std_logic
in P7_5std_logic
in P12_6std_logic
TEXT open READ_MODE is "../../Jet_common/trunk/data/test15.txt" data_jem15
out BF_LED_REQ_4std_logic
in P8_24std_logic
in OCB_A19std_logic
in BF_TO_FROM_BSPT_0std_logic
out D_CBL_17_Bstd_logic
in P7_18std_logic
in P6_15std_logic
out BF_DOUT_CTP_61std_logic
in P3_14std_logic
in P4_21std_logic
in OCB_A21std_logic
in P1_11std_logic
out D_CBL_64_Bstd_logic
in P5_13std_logic
in P6_19std_logic
out BF_DOUT_CTP_34std_logic
in P15_5std_logic
in P5_6std_logic
in P9_10std_logic
out BF_DOUT_CTP_32std_logic
out D_CBL_81_Bstd_logic
in P11_3std_logic
in P6_4std_logic
in P9_7std_logic
in P9_12std_logic
in P13_18std_logic
out D_CBL_67_Bstd_logic
in P7_9std_logic
in P0_6std_logic
in P6_1std_logic
in P10_5std_logic
in P1_4std_logic
in P13_20std_logic
in D_CBL_24_Bstd_logic
out D_CBL_28_Bstd_logic
out BF_TO_FROM_BSPT_6std_logic
in P8_19std_logic
std_logic_vector INT2SLV16val,
in P6_16std_logic
out BF_LED_REQ_1std_logic
in P11_0std_logic
in P5_21std_logic
out BF_DEBUG_2std_logic
in P5_8std_logic
out BF_DOUT_CTP_21std_logic
in P7_21std_logic
out D_CBL_79_Bstd_logic
in P1_8std_logic
out D_CBL_59_Bstd_logic
in P6_0std_logic
out BF_DOUT_CTP_46std_logic
in P2_18std_logic
in P10_23std_logic
out D_CBL_38_Bstd_logic
in P11_8std_logic
out BF_DOUT_CTP_04std_logic
in P2_15std_logic
in OCB_A09std_logic
in P8_9std_logic
out BF_DOUT_CTP_65std_logic
in P3_11std_logic
in P11_1std_logic
out BF_DOUT_CTP_55std_logic
in P11_23std_logic
in P0_8std_logic
in P9_6std_logic
in P4_20std_logic
in P12_12std_logic
out BF_DOUT_CTP_19std_logic
in P1_16std_logic
in OCB_A14std_logic
in P3_23std_logic
in OCB_DS_Bstd_logic
in OCB_A11std_logic
in P6_21std_logic
out BF_DOUT_CTP_14std_logic
out BF_DOUT_CTP_47std_logic
in D_CBL_39_Bstd_logic
in P4_18std_logic
in P9_2std_logic
in P4_14std_logic
out D_CBL_27_Bstd_logic
in P10_18std_logic
in P9_21std_logic
in P15_18std_logic
in OCB_A15std_logic
in P8_21std_logic
time :=12.476 ns CLK80_period
in P2_1std_logic
out D_CBL_06_Bstd_logic
in P14_17std_logic
out BF_LED_REQ_2std_logic
in P7_6std_logic
in P9_13std_logic
in BF_TO_TP_DAQ_SLINK_RETURN_DIRstd_logic
in P9_18std_logic
out D_CBL_76_Bstd_logic
in P10_11std_logic
out D_CBL_01_Bstd_logic
in P14_9std_logic
in P3_16std_logic
in P4_13std_logic
out BF_LED_REQ_0std_logic
in P2_6std_logic
in P13_6std_logic
out BF_DOUT_CTP_00std_logic
in P15_19std_logic
in P6_11std_logic
in P1_20std_logic
in P15_15std_logic
in D_CBL_20_Bstd_logic
in P14_6std_logic
in P3_15std_logic
in P5_4std_logic
in P4_17std_logic
in P1_18std_logic
in P5_2std_logic
out D_CBL_58_Bstd_logic
out BF_DOUT_CTP_49std_logic
in P14_10std_logic
in P7_7std_logic
in P12_23std_logic
in P10_15std_logic
out BF_DEBUG_7std_logic
in P9_11std_logic
in P0_11std_logic
out BF_DOUT_CTP_64std_logic
in P7_3std_logic
in P1_1std_logic
in P5_14std_logic
in P14_7std_logic
in P2_19std_logic
in P8_16std_logic
out D_CBL_21_Bstd_logic
out D_CBL_04_Bstd_logic
in P12_24std_logic
out BF_ROI_DATA_OUT_DIRstd_logic
in P0_18std_logic
in P15_0std_logic
in P2_3std_logic
in P5_24std_logic
in P15_2std_logic
in P12_19std_logic
in P8_8std_logic
in P6_7std_logic
in P12_0std_logic
in P12_17std_logic
in P13_9std_logic
out D_CBL_80_Bstd_logic
in P14_12std_logic
in P12_2std_logic
out D_CBL_29_Bstd_logic
out D_CBL_57_Bstd_logic
out BF_DOUT_CTP_05std_logic
TEXT open READ_MODE is "../../Jet_common/trunk/data/test14.txt" data_jem14
out BF_DEBUG_4std_logic
out D_CBL_14_Bstd_logic
in P10_6std_logic
out BF_DOUT_CTP_50std_logic
in P1_0std_logic
in P12_9std_logic
in P8_20std_logic
in P13_2std_logic
in P13_4std_logic
in P11_6std_logic
in P8_1std_logic
in P0_15std_logic
in P12_11std_logic
in P3_22std_logic
in P3_2std_logic
out BF_DOUT_CTP_57std_logic
in P14_1std_logic
out D_CBL_25_Bstd_logic
in P10_19std_logic
out BF_DOUT_CTP_42std_logic
in P3_13std_logic
in P15_24std_logic
in P9_22std_logic
std_logic_vector (31 downto 0) ctpvec_low
in OCB_A12std_logic
in P3_4std_logic
in P6_18std_logic
in P3_0std_logic
std_logic :='0' CLK_120MHz000_XTAL_1_BF_TRNCV_DIR
in P2_17std_logic
in P2_13std_logic
in OCB_A07std_logic
in P10_9std_logic
out BF_DOUT_CTP_51std_logic
out D_CBL_33_Bstd_logic
out BF_DOUT_CTP_54std_logic
in OCB_A03std_logic
in BF_TO_FROM_BSPT_1std_logic
in OCB_A22std_logic
out BF_DOUT_CTP_45std_logic
in P4_22std_logic
in P10_10std_logic
_library_ workwork
in P12_20std_logic
in P14_8std_logic
time :=8.334 ns CLK120_period
in P0_10std_logic
in P6_14std_logic
in P5_16std_logic
in P3_8std_logic
in P13_19std_logic
out BF_DOUT_CTP_60std_logic
in P4_19std_logic
in P4_23std_logic
out BF_DOUT_CTP_07std_logic
out BF_TO_FROM_BSPT_5std_logic
in P11_2std_logic
in P2_0std_logic
out D_CBL_07_Bstd_logic
in P15_10std_logic
out D_CBL_62_Bstd_logic
in P12_3std_logic
in P13_24std_logic
in OCB_A16std_logic
in P7_2std_logic
in P1_5std_logic
in P4_24std_logic
TEXT open READ_MODE is "../../Jet_common/trunk/data/test9.txt" data_jem9
in P12_8std_logic
in P2_24std_logic
in P4_9std_logic
TEXT open READ_MODE is "../../Jet_common/trunk/data/test3.txt" data_jem3
out BF_DOUT_CTP_17std_logic
out D_CBL_09_Bstd_logic
in P7_17std_logic
out BF_DOUT_CTP_31std_logic
out BF_DOUT_CTP_38std_logic
out D_CBL_22_Bstd_logic
in P1_24std_logic
out BF_DOUT_CTP_37std_logic
in P10_14std_logic
in P1_23std_logic
in P11_10std_logic
out D_CBL_83_Bstd_logic
in P6_3std_logic
out BF_DEBUG_8std_logic
out BF_DOUT_CTP_29std_logic
out BF_REQ_CABLE_3_INPUTstd_logic
out D_CBL_82_Bstd_logic
out BF_DOUT_CTP_35std_logic
out D_CBL_69_Bstd_logic
in P3_1std_logic
out BF_DOUT_CTP_26std_logic
in P14_4std_logic
out BF_DOUT_CTP_39std_logic
in P4_15std_logic
in P1_22std_logic
out BF_DOUT_CTP_23std_logic
in P15_23std_logic
in P6_8std_logic
in P5_0std_logic
in P1_15std_logic
out BF_DOUT_CTP_16std_logic
in P4_8std_logic
in P4_4std_logic
in P3_7std_logic
in P5_11std_logic
in P10_12std_logic
in P5_18std_logic
out D_CBL_03_Bstd_logic
in P10_13std_logic
in P0_13std_logic
in P8_3std_logic
in P0_19std_logic
out D_CBL_54_Bstd_logic
in P7_0std_logic
out D_CBL_30_Bstd_logic
in P3_10std_logic
in P12_7std_logic
in P7_15std_logic
in P3_24std_logic
in P13_22std_logic
in P14_5std_logic
out D_CBL_23_Bstd_logic
out D_CBL_73_Bstd_logic
in P0_17std_logic
in P15_20std_logic
in P4_10std_logic
in P11_14std_logic
in P2_11std_logic
std_logic_vector str_to_stdvecinp,
in P9_4std_logic
in P5_7std_logic
out BF_DOUT_CTP_28std_logic
TEXT open READ_MODE is "../../Jet_common/trunk/data/test7.txt" data_jem7
in P7_16std_logic
in P11_19std_logic
in P0_1std_logic
in P15_12std_logic
in P2_23std_logic
in D_CBL_08_Bstd_logic
in OCB_A05std_logic
in P2_22std_logic
in P2_21std_logic
in P8_15std_logic
TEXT open READ_MODE is "../../Jet_common/trunk/data/test4.txt" data_jem4
in P1_17std_logic
in P12_18std_logic
in P8_6std_logic
out BF_DOUT_CTP_24std_logic
in BF_TO_TP_DAQ_SLINK_RETURN_CMPstd_logic
in P3_5std_logic
in P4_6std_logic
in P14_14std_logic
out D_CBL_78_Bstd_logic
in P13_23std_logic
in OCB_A18std_logic
out BF_DOUT_CTP_53std_logic
in P15_16std_logic
TEXT open READ_MODE is "../../Jet_common/trunk/data/test5.txt" data_jem5
TEXT open READ_MODE is "../../Jet_common/trunk/data/test10.txt" data_jem10
in P15_14std_logic
in P13_0std_logic
in P7_14std_logic
out BF_REQ_CABLE_1_INPUTstd_logic
in P11_16std_logic
in OCB_A17std_logic
in OCB_A23std_logic
in OCB_A01std_logic
TEXT open READ_MODE is "../../Jet_common/trunk/data/testctp.txt" ctp_out
in P9_20std_logic
in P0_7std_logic
out D_CBL_15_Bstd_logic
in P0_22std_logic
in P14_20std_logic
in CLK_120MHz000_XTAL_1_BF_TRNCV_CMPstd_logic
in P8_13std_logic
out BF_DOUT_CTP_18std_logic
out BF_DOUT_CTP_06std_logic
out BF_DOUT_CTP_27std_logic
out BF_DOUT_CTP_43std_logic
mat_var (numactchan - 1 downto 0) :=( others =>( others =>'0' ) ) P
out D_CBL_49_Bstd_logic
time :=24.952 ns CLK40_DIR_period
in P3_19std_logic
in P2_16std_logic
in P9_14std_logic
out D_CBL_11_Bstd_logic
TEXT open READ_MODE is "../../Jet_common/trunk/data/test2.txt" data_jem2
in P2_7std_logic
in P12_10std_logic
in P10_24std_logic
in P0_0std_logic
in P9_1std_logic
in P11_5std_logic
in P14_16std_logic
out D_CBL_34_Bstd_logic
out BF_DOUT_CTP_58std_logic
in P8_2std_logic
out BF_DOUT_CTP_10std_logic
in OCB_SYS_RESET_Bstd_logic
in P10_1std_logic
in P7_22std_logic
in P15_4std_logic
out D_CBL_70_Bstd_logic
in P3_3std_logic
out BF_DOUT_CTP_03std_logic
out D_CBL_65_Bstd_logic
in P14_22std_logic
in BUF_TTC_BNCH_CNT_RESstd_logic
out BF_DEBUG_9std_logic
in P12_22std_logic
out D_CBL_51_Bstd_logic
in P6_22std_logic
in P11_22std_logic
in P13_15std_logic
in P10_8std_logic
out D_CBL_72_Bstd_logic
out D_CBL_00_Bstd_logic
out BF_DEBUG_5std_logic
in P11_21std_logic
in P12_16std_logic
in P9_16std_logic
in P0_21std_logic
out D_CBL_77_Bstd_logic
out D_CBL_41_Bstd_logic
in P1_6std_logic
in P13_8std_logic
out D_CBL_53_Bstd_logic
in P15_13std_logic
in P8_5std_logic
out BF_DEBUG_0std_logic
in P3_20std_logic
in P10_21std_logic
in P11_12std_logic
in OCB_A08std_logic
out BF_REQ_CTP_1_INPUTstd_logic
out BF_LED_REQ_3std_logic
std_logic :='0' CLK_120MHz000_XTAL_1_BF_TRNCV_CMP
out BF_TO_FROM_BSPT_7std_logic
in P4_11std_logic
out BF_DOUT_CTP_25std_logic
out D_CBL_63_Bstd_logic
std_logic_vector (31 downto 0) ctpvec_high
std_logic_vector (23 downto 0) OCB_A
in P14_24std_logic
in P14_18std_logic
in P7_23std_logic
in P5_12std_logic
in P13_11std_logic
in P2_10std_logic
in P3_18std_logic
in P3_12std_logic
in P8_17std_logic
out BF_DOUT_CTP_20std_logic
in P13_5std_logic
in P13_14std_logic
in P11_11std_logic
in OCB_A06std_logic
out D_CBL_05_Bstd_logic
in P1_9std_logic
in P9_9std_logic
in P15_6std_logic
in P0_16std_logic
in P11_4std_logic
std_logic_vector INT2SLVval,size,
in P14_3std_logic
out BF_DOUT_CTP_30std_logic
in P13_13std_logic
in P4_1std_logic
std_logic_vector (15 downto 0) OCB_D
in P0_5std_logic
in P6_6std_logic
in P5_15std_logic
in P5_1std_logic
in BUF_TTC_L1_ACCEPTstd_logic
TEXT open READ_MODE is "../../Jet_common/trunk/data/test0.txt" data_jem0
in P6_10std_logic
out BF_DEBUG_3std_logic
in P2_4std_logic
in P12_14std_logic
in P8_7std_logic
in P12_1std_logic
in P7_12std_logic
in P14_11std_logic
in P0_14std_logic
out D_CBL_37_Bstd_logic
in P8_10std_logic
out BF_DAQ_DATA_OUT_DIRstd_logic
out BF_DOUT_CTP_22std_logic
in P5_17std_logic
out BF_DOUT_CTP_08std_logic
in P7_19std_logic
out D_CBL_44_Bstd_logic
in P15_8std_logic
in P14_2std_logic
in P8_0std_logic
out BF_TO_FROM_BSPT_4std_logic
out BF_DEBUG_6std_logic
in P15_22std_logic
out BF_DOUT_CTP_09std_logic
TEXT open READ_MODE is "../../Jet_common/trunk/data/test12.txt" data_jem12
in P8_14std_logic
in P15_3std_logic
in P11_24std_logic
in P9_15std_logic
in P4_16std_logic
in P15_21std_logic
in P12_21std_logic
in P7_13std_logic
in P13_21std_logic
in P0_12std_logic
in OCB_A13std_logic
in D_CBL_16_Bstd_logic
in P7_4std_logic
in P7_24std_logic
in OCB_A04std_logic
out BF_REQ_CABLE_2_INPUTstd_logic
in P8_23std_logic
in P9_8std_logic
in OCB_WRITE_Bstd_logic
TEXT open READ_MODE is "../../Jet_common/trunk/data/test8.txt" data_jem8
in P4_2std_logic
in OCB_GEO_ADRS_0std_logic
in P13_3std_logic
in P5_9std_logic
in P10_4std_logic
in P2_9std_logic
in P0_20std_logic
in P1_14std_logic
in P12_13std_logic
out BF_DOUT_CTP_63std_logic
out D_CBL_75_Bstd_logic
in P6_20std_logic
in P1_13std_logic
in P2_12std_logic
in P5_19std_logic
in P6_23std_logic
in P11_13std_logic
TEXT open READ_MODE is "../../Jet_common/trunk/data/test6.txt" data_jem6
out BF_DOUT_CTP_40std_logic
std_logic_vector (15 downto 0) :=( others =>'0' ) zeros
in P5_20std_logic
in P5_22std_logic
out D_CBL_60_Bstd_logic
out BF_ROI_DATA_OUT_CMPstd_logic
out BF_DOUT_CTP_15std_logic
in P6_9std_logic
in D_CBL_43_Bstd_logic
in P2_5std_logic
out BF_DOUT_CTP_62std_logic
in P10_2std_logic
in P14_19std_logic
out BF_DOUT_CTP_33std_logic
in P0_23std_logic
out D_CBL_26_Bstd_logic
in P12_5std_logic
in P8_18std_logic
in P0_24std_logic
std_logic_vector (65 downto 0) CTPout
std_logic_vector (7 downto 0) OCB_A_BOARD_ADDR
out D_CBL_47_Bstd_logic
in P8_11std_logic
CMX_top_Base uutuut
out D_CBL_68_Bstd_logic
in P12_15std_logic
in P7_11std_logic
in P8_12std_logic
out D_CBL_55_Bstd_logic
in P4_3std_logic
in P0_9std_logic
in P11_9std_logic
in P6_12std_logic
in P13_7std_logic
out D_CBL_36_Bstd_logic
out D_CBL_56_Bstd_logic
in CLK_40MHz08_DSKW_1_BF_LOGIC_CMPstd_logic
in P9_24std_logic
out BF_DOUT_CTP_48std_logic
in OCB_A02std_logic
in P4_0std_logic
out D_CBL_50_Bstd_logic
out D_CBL_40_Bstd_logic
out BF_DOUT_CTP_44std_logic
in P9_23std_logic
in P13_12std_logic
out BF_DOUT_CTP_52std_logic
std_logic_vector (65 downto 0) CTPout_ref
in P15_9std_logic
test registers
out D_CBL_12_Bstd_logic
in OCB_A20std_logic
in P0_4std_logic
in P6_13std_logic
in P10_3std_logic
in P1_3std_logic
in P0_3std_logic
out BF_REQ_CTP_2_INPUTstd_logic
in P14_15std_logic
in P9_5std_logic
in P9_19std_logic
out D_CBL_46_Bstd_logic
in P7_8std_logic
in P14_0std_logic
TEXT open READ_MODE is "../../Jet_common/trunk/data/test13.txt" data_jem13
in P2_2std_logic
in P10_0std_logic
in P6_2std_logic
in P10_7std_logic
in P10_22std_logic
TEXT open READ_MODE is "../../Jet_common/trunk/data/test11.txt" data_jem11
in P4_5std_logic
in P8_4std_logic
in P7_1std_logic
in P15_1std_logic
inout OCB_Dstd_logic_vector (15 downto 0)
in P13_10std_logic
in D_CBL_35_Bstd_logic
in P0_2std_logic
in P10_20std_logic
in P2_8std_logic
in P5_5std_logic
_library_ ieeeieee
in P15_11std_logic
out BF_DOUT_CTP_02std_logic
std_logic_vector (15 downto 0) OCB_A_LOCAL_ADDR
in P3_9std_logic
in D_CBL_31_Bstd_logic
out D_CBL_13_Bstd_logic
in CLK_40MHz08_DSKW_1_BF_LOGIC_DIRstd_logic
out BF_DOUT_CTP_13std_logic
in P13_1std_logic
in P15_7std_logic
TEXT open READ_MODE is "../../Jet_common/trunk/data/test1.txt" data_jem1
out D_CBL_61_Bstd_logic
in P6_17std_logic
in P5_3std_logic
out BF_DOUT_CTP_59std_logic
out D_CBL_71_Bstd_logic
in BF_TO_TP_ROI_SLINK_RETURN_DIRstd_logic
out BF_DOUT_CTP_56std_logic
in P15_17std_logic
in P4_7std_logic
in P2_20std_logic
std_logic_vector (65 downto 0) CTPout_clean
out D_CBL_19_Bstd_logic
in P14_23std_logic
out BF_DOUT_CTP_11std_logic
in P3_17std_logic
out BF_DOUT_CTP_36std_logic
out D_CBL_66_Bstd_logic
in P11_15std_logic
in P5_23std_logic
in P13_16std_logic
in P9_0std_logic
in P1_12std_logic
in P8_22std_logic
array (15 downto 0 ) of string (24 downto 1) mystring
Definition: trig_sim.vhd:194
out BF_DEBUG_1std_logic
out D_CBL_02_Bstd_logic
out D_CBL_52_Bstd_logic
in P11_17std_logic
out D_CBL_18_Bstd_logic
out D_CBL_10_Bstd_logic
in P10_17std_logic
out BF_DOUT_CTP_12std_logic
out D_CBL_45_Bstd_logic