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;
--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
---------------------------------------------------------------------------
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;
+
BLOCK RESETPATHS ;
BLOCK ASYNCPATHS ;
BLOCK RD_DURING_WR_PATHS ;
# Reset Nets
#################################################################
GSR_NET NET "GSR_N";
-
-
+GSR_NET NET "THE_TDC/reset_tdc";
+GSR_NET NET "reset_i;
#################################################################
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" ;
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 ;
+