1 ------------------------------------------------------------------------------- 2 -- File : SspEncoder10b12b.vhd 3 -- Company : SLAC National Accelerator Laboratory 4 -- Created : 2014-07-14 5 -- Last update: 2017-05-01 6 ------------------------------------------------------------------------------- 7 -- Description: SimpleStreamingProtocol - A simple protocol layer for inserting 8 -- idle and framing control characters into a raw data stream. This module 9 -- ties the framing core to an RTL 10b12b encoder. 10 ------------------------------------------------------------------------------- 11 -- This file is part of 'SLAC Firmware Standard Library'. 12 -- It is subject to the license terms in the LICENSE.txt file found in the 13 -- top-level directory of this distribution and at: 14 -- https://confluence.slac.stanford.edu/display/ppareg/LICENSE.html. 15 -- No part of 'SLAC Firmware Standard Library', including this file, 16 -- may be copied, modified, propagated, or distributed except according to 17 -- the terms contained in the LICENSE.txt file. 18 ------------------------------------------------------------------------------- 21 use ieee.std_logic_1164.
all;
22 use IEEE.STD_LOGIC_UNSIGNED.
all;
23 use IEEE.STD_LOGIC_ARITH.
all;
29 --! @ingroup protocols_ssp 50 end entity SspEncoder10b12b;
54 signal framedData : slv(9 downto 0);
55 signal framedDataK : slv(0 downto 0);
107 end architecture rtl;
FLOW_CTRL_EN_Gboolean := false
slv( 9 downto 0) := "1010111100" K_28_21_C
in rstsl := RST_POLARITY_G
FLOW_CTRL_EN_Gboolean := false
in dataInslv( WORD_SIZE_G- 1 downto 0)
USE_CLK_EN_Gboolean := false
RST_ASYNC_Gboolean := true
out dataKOutslv( K_SIZE_G- 1 downto 0)
slv( 9 downto 0) := "0101011100" K_28_10_C
out dataOutslv( 11 downto 0)
out dataOutslv( WORD_SIZE_G- 1 downto 0)
slv( 9 downto 0) := "0001111100" K_28_3_C
FLOW_CTRL_EN_Gboolean := false
out dataOutslv( 11 downto 0)
RST_ASYNC_Gboolean := true
RST_ASYNC_Gboolean := true
in dataInslv( 9 downto 0)
in rstsl := RST_POLARITY_G
AUTO_FRAME_Gboolean := true
in dataInslv( 9 downto 0)
in rstsl :=not RST_POLARITY_G
AUTO_FRAME_Gboolean := true