From: hadaq Date: Mon, 25 Jun 2012 07:45:21 +0000 (+0000) Subject: TDC with 32 channels is added. X-Git-Url: https://jspc29.x-matter.uni-frankfurt.de/git/?a=commitdiff_plain;h=14ac4c3e3065790718ffe588238013cb0816664b;p=trb3.git TDC with 32 channels is added. --- diff --git a/cbmrich/cbmrich.prj b/cbmrich/cbmrich.prj index 1d41dea..a7f8d64 100644 --- a/cbmrich/cbmrich.prj +++ b/cbmrich/cbmrich.prj @@ -140,23 +140,13 @@ add_file -vhdl -lib "work" "../base/cores/pll_in200_out100.vhd" add_file -vhdl -lib "work" "cbmrich.vhd" -# add_file -vhdl -lib "work" "source/Adder_304.vhd" -# add_file -vhdl -lib "work" "source/bit_sync.vhd" -# add_file -vhdl -lib "work" "source/Channel.vhd" -# add_file -vhdl -lib "work" "source/ddr_off.vhd" -# add_file -vhdl -lib "work" "source/Encoder_304_Bit.vhd" -# add_file -vhdl -lib "work" "source/FIFO_32x512_OutReg.vhd" -# add_file -vhdl -lib "work" "source/MB_SPI.vhd" -# add_file -vhdl -lib "work" "source/pll_100_in_5_out.vhd" -# add_file -vhdl -lib "work" "source/pll_100_in_40_out.vhd" -# add_file -vhdl -lib "work" "source/Reference_channel.vhd" -# -# #add_file -vhdl -lib "work" "source/ROM_Encoder.vhd" -# #add_file -vhdl -lib "work" "source/ROM_encoder_2.vhd" -# add_file -vhdl -lib "work" "source/ROM_encoder_3.vhd" -# -# add_file -vhdl -lib "work" "source/ROM_FIFO.vhd" -# add_file -vhdl -lib "work" "source/TDC.vhd" -# add_file -vhdl -lib "work" "source/trb3_periph.vhd" -# add_file -vhdl -lib "work" "source/up_counter.vhd" - +add_file -vhdl -lib "work" "tdc_source/Adder_304.vhd" +add_file -vhdl -lib "work" "tdc_source/bit_sync.vhd" +add_file -vhdl -lib "work" "tdc_source/Channel.vhd" +add_file -vhdl -lib "work" "tdc_source/Encoder_304_Bit.vhd" +add_file -vhdl -lib "work" "tdc_source/FIFO_32x512_OutReg.vhd" +add_file -vhdl -lib "work" "tdc_source/Reference_channel.vhd" +add_file -vhdl -lib "work" "tdc_source/ROM_encoder_3.vhd" +add_file -vhdl -lib "work" "tdc_source/ROM_FIFO.vhd" +add_file -vhdl -lib "work" "tdc_source/TDC.vhd" +add_file -vhdl -lib "work" "tdc_source/up_counter.vhd" diff --git a/cbmrich/cbmrich.vhd b/cbmrich/cbmrich.vhd index 89c3047..2463950 100644 --- a/cbmrich/cbmrich.vhd +++ b/cbmrich/cbmrich.vhd @@ -99,8 +99,8 @@ end entity; architecture cbmrich_arch of cbmrich is --Constants - constant REGIO_NUM_STAT_REGS : integer := 2; - constant REGIO_NUM_CTRL_REGS : integer := 2; + constant REGIO_NUM_STAT_REGS : integer := 5; + constant REGIO_NUM_CTRL_REGS : integer := 3; attribute syn_keep : boolean; attribute syn_preserve : boolean; @@ -215,24 +215,44 @@ architecture cbmrich_arch of cbmrich is --FPGA Test signal time_counter : unsigned(31 downto 0); --- --TDC component --- component TDC --- generic ( --- CHANNEL_NUMBER : integer range 0 to 64); --- port ( --- RESET : in std_logic; --- CLK_TDC : in std_logic; --- CLK_READOUT : in std_logic; --- HIT_IN : in std_logic_vector(CHANNEL_NUMBER-1 downto 0); --- TRIGGER_IN : in std_logic; --- TRIGGER_WIN_IN : in std_logic_vector(31 downto 0); --- DATA_OUT : out std_logic_vector(31 downto 0); --- TRB_WR_CLK_OUT : out std_logic; --- DATA_VALID_OUT : out std_logic; --- DATA_FINISHED_OUT : out std_logic; --- READY_OUT : out std_logic; --- TDC_DEBUG_00 : out std_logic_vector(31 downto 0)); --- end component; + --TDC + signal hit_in_i : std_logic_vector(63 downto 1); + + --TDC component + component TDC + generic ( + CHANNEL_NUMBER : integer range 0 to 64; + STATUS_REG_NR : integer range 0 to 6; + CONTROL_REG_NR : integer range 0 to 6); + port ( + RESET : in std_logic; + CLK_TDC : in std_logic; + CLK_READOUT : in std_logic; + REFERENCE_TIME : in std_logic; + HIT_IN : in std_logic_vector(CHANNEL_NUMBER-1 downto 1); + TRG_WIN_PRE : in std_logic_vector(10 downto 0); + TRG_WIN_POST : in std_logic_vector(10 downto 0); + TRG_DATA_VALID_IN : in std_logic; + VALID_TIMING_TRG_IN : in std_logic; + VALID_NOTIMING_TRG_IN : in std_logic; + INVALID_TRG_IN : in std_logic; + TMGTRG_TIMEOUT_IN : in std_logic; + SPIKE_DETECTED_IN : in std_logic; + MULTI_TMG_TRG_IN : in std_logic; + SPURIOUS_TRG_IN : in std_logic; + TRG_NUMBER_IN : in std_logic_vector(15 downto 0); + TRG_CODE_IN : in std_logic_vector(7 downto 0); + TRG_INFORMATION_IN : in std_logic_vector(23 downto 0); + TRG_TYPE_IN : in std_logic_vector(3 downto 0); + TRG_RELEASE_OUT : out std_logic; + TRG_STATUSBIT_OUT : out std_logic_vector(31 downto 0); + DATA_OUT : out std_logic_vector(31 downto 0); + DATA_WRITE_OUT : out std_logic; + DATA_FINISHED_OUT : out std_logic; + TDC_DEBUG : out std_logic_vector(32*2**STATUS_REG_NR-1 downto 0); + LOGIC_ANALYSER_OUT : out std_logic_vector(15 downto 0); + CONTROL_REG_IN : in std_logic_vector(32*2**CONTROL_REG_NR-1 downto 0)); + end component; begin --------------------------------------------------------------------------- @@ -605,4 +625,58 @@ timing_trg_received_i <= SPARE_LINE(0); time_counter <= time_counter + 1; end process; +------------------------------------------------------------------------------- +-- TDC +------------------------------------------------------------------------------- + THE_TDC : TDC + generic map ( + CHANNEL_NUMBER => 32, -- Number of TDC channels + STATUS_REG_NR => REGIO_NUM_STAT_REGS, + CONTROL_REG_NR => REGIO_NUM_CTRL_REGS) + port map ( + RESET => reset_i, + CLK_TDC => CLK_PCLK_LEFT, -- Clock used for the time measurement + CLK_READOUT => clk_100_i, -- Clock for the readout + REFERENCE_TIME => timing_trg_received_i, -- Reference time input + HIT_IN => hit_in_i(31 downto 1), -- Channel start signals + TRG_WIN_PRE => ctrl_reg(42 downto 32), -- Pre-Trigger window width + TRG_WIN_POST => ctrl_reg(58 downto 48), -- Post-Trigger window width + -- + -- Trigger signals from handler + TRG_DATA_VALID_IN => trg_data_valid_i, -- trig data valid signal from trbnet + VALID_TIMING_TRG_IN => trg_timing_valid_i, -- valid timing trigger signal from trbnet + VALID_NOTIMING_TRG_IN => trg_notiming_valid_i, -- valid notiming signal from trbnet + INVALID_TRG_IN => trg_invalid_i, -- invalid trigger signal from trbnet + TMGTRG_TIMEOUT_IN => trg_timeout_detected_i, -- timing trigger timeout signal from trbnet + SPIKE_DETECTED_IN => trg_spike_detected_i, + MULTI_TMG_TRG_IN => trg_multiple_trg_i, + SPURIOUS_TRG_IN => trg_spurious_trg_i, + -- + TRG_NUMBER_IN => trg_number_i, -- LVL1 trigger information package + TRG_CODE_IN => trg_code_i, -- + TRG_INFORMATION_IN => trg_information_i, -- + TRG_TYPE_IN => trg_type_i, -- LVL1 trigger information package + -- + --Response to handler + TRG_RELEASE_OUT => fee_trg_release_i, -- trigger release signal + TRG_STATUSBIT_OUT => fee_trg_statusbits_i, -- status information of the tdc + DATA_OUT => fee_data_i, -- tdc data + DATA_WRITE_OUT => fee_data_write_i, -- data valid signal + DATA_FINISHED_OUT => fee_data_finished_i, -- readout finished signal + -- + TDC_DEBUG => stat_reg, + LOGIC_ANALYSER_OUT => TEST_LINE, + CONTROL_REG_IN => ctrl_reg); + + + hit_in_i(31 downto 1) <= INPUT(31 downto 1); + + -- to detect rising & falling edges + --hit_in_i(1) <= not timing_trg_received_i; + + --Gen_Hit_In_Signals : for i in 1 to 15 generate + -- hit_in_i(i*2) <= INPUT(i-1); + -- hit_in_i(i*2+1) <= not INPUT(i-1); + --end generate Gen_Hit_In_Signals; + end architecture; diff --git a/cbmrich/cbmrich_2012_06_25.bit b/cbmrich/cbmrich_2012_06_25.bit new file mode 100644 index 0000000..80fda34 Binary files /dev/null and b/cbmrich/cbmrich_2012_06_25.bit differ diff --git a/cbmrich/cbmrich_constraints.lpf b/cbmrich/cbmrich_constraints.lpf index fe85f1d..a1165bb 100644 --- a/cbmrich/cbmrich_constraints.lpf +++ b/cbmrich/cbmrich_constraints.lpf @@ -1,3 +1,4 @@ + BLOCK RESETPATHS ; BLOCK ASYNCPATHS ; BLOCK RD_DURING_WR_PATHS ; @@ -18,8 +19,8 @@ BLOCK RD_DURING_WR_PATHS ; # Reset Nets ################################################################# GSR_NET NET "GSR_N"; - - +GSR_NET NET "THE_TDC/reset_tdc"; +GSR_NET NET "reset_i; ################################################################# @@ -28,9 +29,9 @@ GSR_NET NET "GSR_N"; LOCATE COMP "THE_MEDIA_UPLINK/gen_serdes_0_200_ctc_THE_SERDES/PCSD_INST" SITE "PCSA" ; -REGION "MEDIA_UPLINK" "R90C95D" 13 25; -REGION "REGION_SPI" "R13C150D" 12 16 DEVSIZE; -REGION "REGION_IOBUF" "R10C43D" 88 86 DEVSIZE; +REGION "MEDIA_UPLINK" "R102C95D" 13 25; +REGION "REGION_SPI" "R11C164D" 10 18 DEVSIZE; +#REGION "REGION_IOBUF" "R10C43D" 88 86 DEVSIZE; LOCATE UGROUP "THE_SPI_MASTER/SPI_group" REGION "REGION_SPI" ; LOCATE UGROUP "THE_SPI_MEMORY/SPI_group" REGION "REGION_SPI" ; @@ -40,3 +41,435 @@ LOCATE UGROUP "THE_MEDIA_UPLINK/media_interface_group" REGION "MEDIA_UPLINK" ; MULTICYCLE TO CELL "THE_MEDIA_DOWNLINK/SCI_DATA_OUT*" 50 ns; MULTICYCLE TO CELL "THE_MEDIA_UPLINK/SCI_DATA_OUT*" 50 ns; +################################################################# +# TDC Constraints +################################################################# +############################################################################## +## REGION DECLERATION ## +############################################################################## +REGION "Region_E&F_1" "R11C50D" 10 60 DEVSIZE; +REGION "Region_E&F_2" "R24C50D" 5 60 DEVSIZE; +REGION "Region_E&F_3" "R38C50D" 10 60 DEVSIZE; +REGION "Region_E&F_4" "R56C50D" 10 60 DEVSIZE; +REGION "Region_E&F_5" "R74C50D" 10 60 DEVSIZE; +REGION "Region_E&F_6" "R92C50D" 10 60 DEVSIZE; + +REGION "Region_E&F_7" "R11C120D" 10 44 DEVSIZE; +REGION "Region_E&F_8" "R24C120D" 5 60 DEVSIZE; +REGION "Region_E&F_9" "R38C120D" 10 60 DEVSIZE; +REGION "Region_E&F_10" "R56C120D" 10 60 DEVSIZE; +REGION "Region_E&F_11" "R74C120D" 10 60 DEVSIZE; +REGION "Region_E&F_12" "R92C120D" 10 60 DEVSIZE; + +############################################################################## +## REFERENCE CHANNEL PLACEMENT ## +############################################################################## +UGROUP "Ref_Ch" BBOX 1 51 + BLKNAME THE_TDC/The_Reference_Time/FC; +LOCATE UGROUP "Ref_Ch" SITE "R8C66D" ; +UGROUP "hit_ref_ch" + BLKNAME THE_TDC/The_Reference_Time/hit_buf_RNO; +LOCATE UGROUP "hit_ref_ch" SITE "R9C68D" ; + +############################################################################## +## DELAY LINE and HIT BUFFER PLACEMENTS ## +############################################################################## +# +UGROUP "FC_1" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_1_Channels/FC; +LOCATE UGROUP "FC_1" SITE "R10C66D" ; +UGROUP "hit_1" + BLKNAME THE_TDC/GEN_Channels_1_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_1" SITE "R11C68D" ; +# +UGROUP "FC_2" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_2_Channels/FC; +LOCATE UGROUP "FC_2" SITE "R21C66D" ; +UGROUP "hit_2" + BLKNAME THE_TDC/GEN_Channels_2_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_2" SITE "R22C68D" ; +# +UGROUP "FC_3" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_3_Channels/FC; +LOCATE UGROUP "FC_3" SITE "R23C66D" ; +UGROUP "hit_3" + BLKNAME THE_TDC/GEN_Channels_3_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_3" SITE "R24C68D" ; +# +UGROUP "FC_4" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_4_Channels/FC; +LOCATE UGROUP "FC_4" SITE "R30C66D" ; +UGROUP "hit_4" + BLKNAME THE_TDC/GEN_Channels_4_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_4" SITE "R31C68D" ; +# +UGROUP "FC_5" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_5_Channels/FC; +LOCATE UGROUP "FC_5" SITE "R32C66D" ; +UGROUP "hit_5" + BLKNAME THE_TDC/GEN_Channels_5_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_5" SITE "R33C68D" ; +# +UGROUP "FC_6" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_6_Channels/FC; +LOCATE UGROUP "FC_6" SITE "R35C66D" ; +UGROUP "hit_6" + BLKNAME THE_TDC/GEN_Channels_6_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_6" SITE "R36C68D" ; +# +UGROUP "FC_7" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_7_Channels/FC; +LOCATE UGROUP "FC_7" SITE "R37C66D" ; +UGROUP "hit_7" + BLKNAME THE_TDC/GEN_Channels_7_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_7" SITE "R38C68D" ; +# +UGROUP "FC_8" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_8_Channels/FC; +LOCATE UGROUP "FC_8" SITE "R48C66D" ; +UGROUP "hit_8" + BLKNAME THE_TDC/GEN_Channels_8_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_8" SITE "R49C68D" ; +# +UGROUP "FC_9" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_9_Channels/FC; +LOCATE UGROUP "FC_9" SITE "R50C66D" ; +UGROUP "hit_9" + BLKNAME THE_TDC/GEN_Channels_9_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_9" SITE "R51C68D" ; +# +UGROUP "FC_10" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_10_Channels/FC; +LOCATE UGROUP "FC_10" SITE "R53C66D" ; +UGROUP "hit_10" + BLKNAME THE_TDC/GEN_Channels_10_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_10" SITE "R54C68D" ; +# +UGROUP "FC_11" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_11_Channels/FC; +LOCATE UGROUP "FC_11" SITE "R55C66D" ; +UGROUP "hit_11" + BLKNAME THE_TDC/GEN_Channels_11_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_11" SITE "R56C68D" ; +# +UGROUP "FC_12" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_12_Channels/FC; +LOCATE UGROUP "FC_12" SITE "R66C66D" ; +UGROUP "hit_12" + BLKNAME THE_TDC/GEN_Channels_12_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_12" SITE "R67C68D" ; +# +UGROUP "FC_13" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_13_Channels/FC; +LOCATE UGROUP "FC_13" SITE "R68C66D" ; +UGROUP "hit_13" + BLKNAME THE_TDC/GEN_Channels_13_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_13" SITE "R69C68D" ; +# +UGROUP "FC_14" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_14_Channels/FC; +LOCATE UGROUP "FC_14" SITE "R71C66D" ; +UGROUP "hit_14" + BLKNAME THE_TDC/GEN_Channels_14_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_14" SITE "R72C68D" ; +# +UGROUP "FC_15" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_15_Channels/FC; +LOCATE UGROUP "FC_15" SITE "R73C66D" ; +UGROUP "hit_15" + BLKNAME THE_TDC/GEN_Channels_15_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_15" SITE "R74C68D" ; + + + + + +UGROUP "FC_16" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_16_Channels/FC; +LOCATE UGROUP "FC_16" SITE "R8C125D" ; +UGROUP "hit_16" + BLKNAME THE_TDC/GEN_Channels_16_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_16" SITE "R9C127D" ; +# +UGROUP "FC_17" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_17_Channels/FC; +LOCATE UGROUP "FC_17" SITE "R10C125D" ; +UGROUP "hit_17" + BLKNAME THE_TDC/GEN_Channels_17_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_17" SITE "R11C127D" ; +# +UGROUP "FC_18" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_18_Channels/FC; +LOCATE UGROUP "FC_18" SITE "R21C125D" ; +UGROUP "hit_18" + BLKNAME THE_TDC/GEN_Channels_18_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_18" SITE "R22C127D" ; +# +UGROUP "FC_19" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_19_Channels/FC; +LOCATE UGROUP "FC_19" SITE "R23C125D" ; +UGROUP "hit_19" + BLKNAME THE_TDC/GEN_Channels_19_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_19" SITE "R24C127D" ; +# +UGROUP "FC_20" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_20_Channels/FC; +LOCATE UGROUP "FC_20" SITE "R30C125D" ; +UGROUP "hit_20" + BLKNAME THE_TDC/GEN_Channels_20_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_20" SITE "R31C127D" ; +# +UGROUP "FC_21" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_21_Channels/FC; +LOCATE UGROUP "FC_21" SITE "R32C125D" ; +UGROUP "hit_21" + BLKNAME THE_TDC/GEN_Channels_21_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_21" SITE "R33C127D" ; +# +UGROUP "FC_22" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_22_Channels/FC; +LOCATE UGROUP "FC_22" SITE "R35C125D" ; +UGROUP "hit_22" + BLKNAME THE_TDC/GEN_Channels_22_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_22" SITE "R36C127D" ; +# +UGROUP "FC_23" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_23_Channels/FC; +LOCATE UGROUP "FC_23" SITE "R37C125D" ; +UGROUP "hit_23" + BLKNAME THE_TDC/GEN_Channels_23_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_23" SITE "R38C127D" ; +# +UGROUP "FC_24" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_24_Channels/FC; +LOCATE UGROUP "FC_24" SITE "R48C125D" ; +UGROUP "hit_24" + BLKNAME THE_TDC/GEN_Channels_24_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_24" SITE "R49C127D" ; +# +UGROUP "FC_25" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_25_Channels/FC; +LOCATE UGROUP "FC_25" SITE "R50C125D" ; +UGROUP "hit_25" + BLKNAME THE_TDC/GEN_Channels_25_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_25" SITE "R51C127D" ; +# +UGROUP "FC_26" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_26_Channels/FC; +LOCATE UGROUP "FC_26" SITE "R53C125D" ; +UGROUP "hit_26" + BLKNAME THE_TDC/GEN_Channels_26_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_26" SITE "R54C127D" ; +# +UGROUP "FC_27" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_27_Channels/FC; +LOCATE UGROUP "FC_27" SITE "R55C125D" ; +UGROUP "hit_27" + BLKNAME THE_TDC/GEN_Channels_27_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_27" SITE "R56C127D" ; +# +UGROUP "FC_28" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_28_Channels/FC; +LOCATE UGROUP "FC_28" SITE "R66C125D" ; +UGROUP "hit_28" + BLKNAME THE_TDC/GEN_Channels_28_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_28" SITE "R67C127D" ; +# +UGROUP "FC_29" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_29_Channels/FC; +LOCATE UGROUP "FC_29" SITE "R68C125D" ; +UGROUP "hit_29" + BLKNAME THE_TDC/GEN_Channels_29_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_29" SITE "R69C127D" ; +# +UGROUP "FC_30" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_30_Channels/FC; +LOCATE UGROUP "FC_30" SITE "R71C125D" ; +UGROUP "hit_30" + BLKNAME THE_TDC/GEN_Channels_30_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_30" SITE "R72C127D" ; +# +UGROUP "FC_31" BBOX 1 51 + BLKNAME THE_TDC/GEN_Channels_31_Channels/FC; +LOCATE UGROUP "FC_31" SITE "R73C125D" ; +UGROUP "hit_31" + BLKNAME THE_TDC/GEN_Channels_31_Channels/hit_buf_RNO; +LOCATE UGROUP "hit_31" SITE "R74C127D" ; + +############################################################################## +## CHANNEL PLACEMENTS ## +############################################################################## +UGROUP "E&F_ref" # BBOX 4 5 + BLKNAME THE_TDC/The_Reference_Time/hit_detect_i + BLKNAME THE_TDC/The_Reference_Time/hit_detect_reg + BLKNAME THE_TDC/The_Reference_Time/result_2_reg; +LOCATE UGROUP "E&F_ref" REGION "Region_E&F_1" ; +UGROUP "E&F_1" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_1_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_1_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_1_Channels/result_2_reg; +LOCATE UGROUP "E&F_1" REGION "Region_E&F_1" ; +UGROUP "E&F_2" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_2_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_2_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_2_Channels/result_2_reg; +LOCATE UGROUP "E&F_2" REGION "Region_E&F_1" ; +UGROUP "E&F_3" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_3_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_3_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_3_Channels/result_2_reg; +LOCATE UGROUP "E&F_3" REGION "Region_E&F_1" ; +UGROUP "E&F_4" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_4_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_4_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_4_Channels/result_2_reg; +LOCATE UGROUP "E&F_4" REGION "Region_E&F_2" ; +UGROUP "E&F_5" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_5_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_5_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_5_Channels/result_2_reg; +LOCATE UGROUP "E&F_5" REGION "Region_E&F_2" ; +UGROUP "E&F_6" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_6_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_6_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_6_Channels/result_2_reg; +LOCATE UGROUP "E&F_6" REGION "Region_E&F_3" ; +UGROUP "E&F_7" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_7_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_7_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_7_Channels/result_2_reg; +LOCATE UGROUP "E&F_7" REGION "Region_E&F_3" ; +UGROUP "E&F_8" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_8_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_8_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_8_Channels/result_2_reg; +LOCATE UGROUP "E&F_8" REGION "Region_E&F_3" ; +UGROUP "E&F_9" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_9_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_9_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_9_Channels/result_2_reg; +LOCATE UGROUP "E&F_9" REGION "Region_E&F_3" ; +UGROUP "E&F_10" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_10_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_10_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_10_Channels/result_2_reg; +LOCATE UGROUP "E&F_10" REGION "Region_E&F_4" ; +UGROUP "E&F_11" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_11_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_11_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_11_Channels/result_2_reg; +LOCATE UGROUP "E&F_11" REGION "Region_E&F_4" ; +UGROUP "E&F_12" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_12_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_12_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_12_Channels/result_2_reg; +LOCATE UGROUP "E&F_12" REGION "Region_E&F_4" ; +UGROUP "E&F_13" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_13_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_13_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_13_Channels/result_2_reg; +LOCATE UGROUP "E&F_13" REGION "Region_E&F_4" ; +UGROUP "E&F_14" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_14_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_14_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_14_Channels/result_2_reg; +LOCATE UGROUP "E&F_14" REGION "Region_E&F_5" ; +UGROUP "E&F_15" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_15_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_15_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_15_Channels/result_2_reg; +LOCATE UGROUP "E&F_15" REGION "Region_E&F_5" ; + + +UGROUP "E&F_16" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_16_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_16_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_16_Channels/result_2_reg; +LOCATE UGROUP "E&F_16" REGION "Region_E&F_7" ; +UGROUP "E&F_17" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_17_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_17_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_17_Channels/result_2_reg; +LOCATE UGROUP "E&F_17" REGION "Region_E&F_7" ; +UGROUP "E&F_18" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_18_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_18_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_18_Channels/result_2_reg; +LOCATE UGROUP "E&F_18" REGION "Region_E&F_7" ; +UGROUP "E&F_19" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_19_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_19_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_19_Channels/result_2_reg; +LOCATE UGROUP "E&F_19" REGION "Region_E&F_7" ; +UGROUP "E&F_20" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_20_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_20_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_20_Channels/result_2_reg; +LOCATE UGROUP "E&F_20" REGION "Region_E&F_8" ; +UGROUP "E&F_21" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_21_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_21_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_21_Channels/result_2_reg; +LOCATE UGROUP "E&F_21" REGION "Region_E&F_8" ; +UGROUP "E&F_22" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_22_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_22_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_22_Channels/result_2_reg; +LOCATE UGROUP "E&F_22" REGION "Region_E&F_9" ; +UGROUP "E&F_23" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_23_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_23_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_23_Channels/result_2_reg; +LOCATE UGROUP "E&F_23" REGION "Region_E&F_9" ; +UGROUP "E&F_24" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_24_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_24_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_24_Channels/result_2_reg; +LOCATE UGROUP "E&F_24" REGION "Region_E&F_9" ; +UGROUP "E&F_25" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_25_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_25_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_25_Channels/result_2_reg; +LOCATE UGROUP "E&F_25" REGION "Region_E&F_9" ; +UGROUP "E&F_26" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_26_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_26_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_26_Channels/result_2_reg; +LOCATE UGROUP "E&F_26" REGION "Region_E&F_10" ; +UGROUP "E&F_27" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_27_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_27_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_27_Channels/result_2_reg; +LOCATE UGROUP "E&F_27" REGION "Region_E&F_10" ; +UGROUP "E&F_28" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_28_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_28_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_28_Channels/result_2_reg; +LOCATE UGROUP "E&F_28" REGION "Region_E&F_10" ; +UGROUP "E&F_29" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_29_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_29_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_29_Channels/result_2_reg; +LOCATE UGROUP "E&F_29" REGION "Region_E&F_10" ; +UGROUP "E&F_30" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_30_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_30_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_30_Channels/result_2_reg; +LOCATE UGROUP "E&F_30" REGION "Region_E&F_11" ; +UGROUP "E&F_31" # BBOX 4 5 + BLKNAME THE_TDC/GEN_Channels_31_Channels/hit_detect_i + BLKNAME THE_TDC/GEN_Channels_31_Channels/hit_detect_reg + BLKNAME THE_TDC/GEN_Channels_31_Channels/result_2_reg; +LOCATE UGROUP "E&F_31" REGION "Region_E&F_11" ; + +############################################################################## + +#MULTICYCLE TO PORT "TEST_LINE_*" 2.000000 X ; + +MULTICYCLE TO CELL "THE_TDC/GEN_Channels_*_Channels/lost_hit_cntr_*" 3.000000 X ; +MULTICYCLE FROM CELL "THE_TDC/reset_tdc*" 3.000000 X ; + + +MAXDELAY NET "THE_TDC/The_Reference_Time/hit_buf" 0.700000 nS DATAPATH_ONLY ; +MAXDELAY NET "THE_TDC/GEN_Channels_*_Channels/hit_buf" 0.700000 nS DATAPATH_ONLY ; +