1 ------------------------------------------------------------------------------- 2 -- File : TenGigEthRst.vhd 3 -- Company : SLAC National Accelerator Laboratory 4 -- Created : 2015-03-30 5 -- Last update: 2015-10-20 6 ------------------------------------------------------------------------------- 7 -- Description: 10GbE Reset Module 8 ------------------------------------------------------------------------------- 9 -- This file is part of 'SLAC Firmware Standard Library'. 10 -- It is subject to the license terms in the LICENSE.txt file found in the 11 -- top-level directory of this distribution and at: 12 -- https://confluence.slac.stanford.edu/display/ppareg/LICENSE.html. 13 -- No part of 'SLAC Firmware Standard Library', including this file, 14 -- may be copied, modified, propagated, or distributed except according to 15 -- the terms contained in the LICENSE.txt file. 16 ------------------------------------------------------------------------------- 19 use ieee.std_logic_1164.
all;
20 use ieee.std_logic_unsigned.
all;
21 use ieee.std_logic_arith.
all;
26 use unisim.vcomponents.
all;
29 --! @ingroup ethernet_TenGigEthCore_core 57 signal rstCnt : slv(8 downto 0) := "000000000";
58 signal rstPulse : slv(3 downto 0) := "1110";
103 if rising_edge(phyClk) then 104 -- Hold off release the GT resets until 500ns after configuration. 105 -- 256 ticks at the minimum possible 2.56ns period (390MHz) will be >> 500 ns. 106 if rstCnt(8) = '0' then 107 rstCnt <= rstCnt + 1 after TPD_G;
109 rstCnt <= rstCnt after TPD_G;
113 rstPulse <= "1110" after TPD_G;
114 elsif rstCnt(8) = '1' then 115 rstPulse(3) <= '0' after TPD_G;
116 rstPulse(2 downto 0) <= rstPulse(3 downto 1) after TPD_G;
123 if rising_edge(txClock) then 124 if txReset = '1' then
in rstsl :=not RST_POLARITY_G
RST_ASYNC_Gboolean := false