signal send_rst_word_i : std_logic_vector(7 downto 0);
signal send_dlm_word_i : std_logic_vector(7 downto 0);
+ signal init_quad : std_logic;
+
begin
---------------------------------------------------------------------------
DEBUG_OUT => debug_clock_reset
);
+ init_quad <= not GSR_N;
+
---------------------------------------------------------------------------
-- PCBSB: TrbNet Uplink
---------------------------------------------------------------------------
CLK_REF_FULL => CLK_SUPPL_PCLK,
SYSCLK => clk_sys,
RESET => reset_i,
+ CLEAR => init_quad,
-- Media Interface TX/RX
MEDIA_MED2INT(0 to 2) => open,
MEDIA_MED2INT(3) => med2int(4),
---------------------------------------------------------------------------
THE_MAIN_TX_RST: main_tx_reset_RS
port map (
- CLEAR => '0',
+ CLEAR => init_quad,
CLK_REF => CLK_SUPPL_PCLK,
TX_PLL_LOL_QD_A_IN => tx_pll_lol_qd_a_i,
TX_PLL_LOL_QD_B_IN => tx_pll_lol_qd_b_i,
CLK_REF_FULL => CLK_SUPPL_PCLK,
SYSCLK => clk_sys,
RESET => reset_i,
+ CLEAR => init_quad,
-- Media Interface TX/RX
MEDIA_MED2INT(0) => med2int(0),
MEDIA_MED2INT(1) => med2int(1),
signal slv_act_cnt : unsigned(15 downto 0);
signal slave_active_fake : std_logic;
signal send_reset_i : std_logic;
-
+
+ signal init_quad : std_logic;
+
begin
THE_TIME_COUNTER_PROC: process( clk_full_osc )
DEBUG_OUT => debug_clock_reset
);
+ init_quad <= not GSR_N;
+
-- Reset by GbE: a minimum delay of 1us is kept before the reset
-- pulse is injected into the reset handler.
PROC_MAKE_RESET : process
-- Clocks and reset
CLK_REF_FULL => CLK_SUPPL_PCLK,
SYSCLK => clk_sys,
+ CLEAR => init_quad,
RESET => reset_i,
-- Media Interface TX/RX
MEDIA_MED2INT(0 to 2) => open,
THE_MAIN_TX_RST: main_tx_reset_RS
port map (
- CLEAR => '0', -- DO NOT USE
+ CLEAR => init_quad,
CLK_REF => CLK_SUPPL_PCLK,
TX_PLL_LOL_QD_A_IN => '0',
TX_PLL_LOL_QD_B_IN => tx_pll_lol_qd_b_i,
signal send_rst_i : std_logic;
signal send_rst_word_i : std_logic_vector(7 downto 0);
signal send_dlm_word_i : std_logic_vector(7 downto 0);
-
+
+ signal init_quad : std_logic;
+
begin
---------------------------------------------------------------------------
-- Clock & Reset Handling
DEBUG_OUT => debug_clock_reset
);
-
+ init_quad <= not GSR_N;
+
---------------------------------------------------------------------------
-- PCSA: Uplink when backplane is used
---------------------------------------------------------------------------
CLK_REF_FULL => CLK_SUPPL_PCLK,
SYSCLK => clk_sys,
RESET => reset_i,
+ CLEAR => init_quad,
-- Media Interface TX/RX
MEDIA_MED2INT(0) => med2int(INTERFACE_NUM-1),
MEDIA_MED2INT(1 to 3) => open,
CLK_REF_FULL => CLK_SUPPL_PCLK,
SYSCLK => clk_sys,
RESET => reset_i,
+ CLEAR => init_quad,
-- Media Interface TX/RX
MEDIA_MED2INT(0) => med2int(4),
MEDIA_MED2INT(1) => med2int(5),
CLK_REF_FULL => CLK_SUPPL_PCLK,
SYSCLK => clk_sys,
RESET => reset_i,
+ CLEAR => init_quad,
-- Media Interface TX/RX
MEDIA_MED2INT(0) => med2int(4),
MEDIA_MED2INT(1) => med2int(5),
THE_MAIN_TX_RST: main_tx_reset_RS
port map (
- CLEAR => '0',
+ CLEAR => init_quad,
CLK_REF => CLK_SUPPL_PCLK,
TX_PLL_LOL_QD_A_IN => tx_pll_lol_qd_a_i,
TX_PLL_LOL_QD_B_IN => tx_pll_lol_qd_b_i,
CLK_REF_FULL => CLK_SUPPL_PCLK,
SYSCLK => clk_sys,
RESET => reset_i,
+ CLEAR => init_quad,
-- Media Interface TX/RX
MEDIA_MED2INT(0) => med2int(2),
MEDIA_MED2INT(1) => med2int(3),
CLK_REF_FULL => CLK_SUPPL_PCLK,
SYSCLK => clk_sys,
RESET => reset_i,
+ CLEAR => init_quad,
-- Media Interface TX/RX
MEDIA_MED2INT(0) => med2int(8),
MEDIA_MED2INT(1) => med2int(7),
signal send_rst_word_i : std_logic_vector(7 downto 0);
signal send_dlm_word_i : std_logic_vector(7 downto 0);
- signal kill_quad : std_logic;
+ signal init_quad : std_logic;
begin
DEBUG_OUT => debug_clock_reset
);
- kill_quad <= not GSR_N;
+ init_quad <= not GSR_N;
gen_cal125 : if (USE_CALIBRATION_200MHZ = c_NO) generate
pll_calibration : entity work.pll_in125_out33
-- Clocks and reset
CLK_REF_FULL => CLK_SUPPL_PCLK,
SYSCLK => clk_sys,
- CLEAR => kill_quad,
+ CLEAR => init_quad,
RESET => reset_i,
-- Media Interface TX/RX
MEDIA_MED2INT(0) => open,
THE_MAIN_TX_RST: main_tx_reset_RS
port map (
- CLEAR => kill_quad, --'0',
+ CLEAR => init_quad,
CLK_REF => CLK_SUPPL_PCLK,
TX_PLL_LOL_QD_A_IN => '0',
TX_PLL_LOL_QD_B_IN => tx_pll_lol_qd_b_i,