1 ------------------------------------------------------------------------------- 2 -- File : JesdIlasGen.vhd 3 -- Company : SLAC National Accelerator Laboratory 4 -- Created : 2015-04-15 5 -- Last update: 2015-04-15 6 ------------------------------------------------------------------------------- 7 -- Description: Initial lane alignment sequence Generator 8 -- Adds A na R characters at the LMFC borders. 9 ------------------------------------------------------------------------------- 10 -- This file is part of 'SLAC Firmware Standard Library'. 11 -- It is subject to the license terms in the LICENSE.txt file found in the 12 -- top-level directory of this distribution and at: 13 -- https://confluence.slac.stanford.edu/display/ppareg/LICENSE.html. 14 -- No part of 'SLAC Firmware Standard Library', including this file, 15 -- may be copied, modified, propagated, or distributed except according to 16 -- the terms contained in the LICENSE.txt file. 17 ------------------------------------------------------------------------------- 20 use ieee.std_logic_1164.
all;
21 use ieee.std_logic_unsigned.
all;
22 use ieee.std_logic_arith.
all;
25 use work.jesd204bpkg.
all;
28 --! @ingroup protocols_jesd204b 50 end entity JesdIlasGen;
54 type RegType is record 59 constant REG_INIT_C : RegType := ( 64 signal r : RegType := REG_INIT_C;
77 -- Delay LMFC for 2 c-c 81 -- Combinatorial logic 82 v_ilasData := (others => '0');
83 v_ilasK := (others => '0');
87 if r.lmfcD1 = '1' then 88 v_ilasData(v_ilasData'high downto v_ilasData'high-7) := A_CHAR_C;
89 v_ilasK(v_ilasK'high) := '1';
92 if r.lmfcD2 = '1' then 93 v_ilasData (7 downto 0) := R_CHAR_C;
109 seq :
process (
clk)
is 111 if (rising_edge(clk)) then 112 r <= rin after TPD_G;
115 --------------------------------------- 116 end architecture rtl;
out ilasK_oslv( GT_WORD_SIZE_C- 1 downto 0)
out ilasData_oslv( GT_WORD_SIZE_C* 8- 1 downto 0)