1 ------------------------------------------------------------------------------- 3 -- Company : SLAC National Accelerator Laboratory 4 -- Created : 2014-05-02 5 -- Last update: 2016-10-17 6 ------------------------------------------------------------------------------- 7 -- Description: This module is the AXIS FIFO with a frame filter 9 -- Note: If EN_FRAME_FILTER_G = true, then this module DOES NOT support 10 -- interleaving of channels during the middle of a frame transfer. 11 ------------------------------------------------------------------------------- 12 -- This file is part of 'SLAC Firmware Standard Library'. 13 -- It is subject to the license terms in the LICENSE.txt file found in the 14 -- top-level directory of this distribution and at: 15 -- https://confluence.slac.stanford.edu/display/ppareg/LICENSE.html. 16 -- No part of 'SLAC Firmware Standard Library', including this file, 17 -- may be copied, modified, propagated, or distributed except according to 18 -- the terms contained in the LICENSE.txt file. 19 ------------------------------------------------------------------------------- 22 use ieee.std_logic_1164.
all;
29 --! @ingroup protocols_ssi 32 -- General Configurations 41 -- FIFO configurations 53 -- AXI Stream Port Configurations 125 -- General Configurations 132 -- FIFO configurations 144 -- AXI Stream Port Configurations 154 -- FIFO status & config , synchronous to sAxisClk 176 dataIn => rxCtrl.overflow,
FIFO_ADDR_WIDTH_Ginteger range 4 to 48:= 9
out sAxisCtrlAxiStreamCtrlType
ALTERA_RAM_Gstring := "M9K"
SLAVE_READY_EN_Gboolean := true
VALID_THOLD_Gnatural := 1
SLAVE_READY_EN_Gboolean := true
slv( 7 downto 0) txTLastTUser
PIPE_STAGES_Gnatural range 0 to 16:= 1
in mAxisSlaveAxiStreamSlaveType
out mAxisMasterAxiStreamMasterType
AXIS_CONFIG_GAxiStreamConfigType := ssiAxiStreamConfig( 16)
FIFO_PAUSE_THRESH_Gpositive := 1
SLAVE_AXI_CONFIG_GAxiStreamConfigType := AXI_STREAM_CONFIG_INIT_C
FIFO_ADDR_WIDTH_Ginteger range 4 to 48:= 9
AxiStreamMasterType rxMaster
SLAVE_READY_EN_Gboolean := true
FIFO_FIXED_THRESH_Gboolean := true
out sAxisCtrlAxiStreamCtrlType
INT_PIPE_STAGES_Gnatural := 0
GEN_SYNC_FIFO_Gboolean := false
out mAxisMasterAxiStreamMasterType
GEN_SYNC_FIFO_Gboolean := false
XIL_DEVICE_Gstring := "7SERIES"
XIL_DEVICE_Gstring := "7SERIES"
ALTERA_SYN_Gboolean := false
VALID_THOLD_Gnatural := 1
EN_FRAME_FILTER_Gboolean := true
in rstsl :=not RST_POLARITY_G
INT_PIPE_STAGES_Gnatural range 0 to 16:= 0
FIFO_FIXED_THRESH_Gboolean := true
VALID_BURST_MODE_Gboolean := false
USE_BUILT_IN_Gboolean := false
in mAxisCtrlAxiStreamCtrlType
AxiStreamMasterType txMaster
natural range 0 to 8 TUSER_BITS_C
out sAxisSlaveAxiStreamSlaveType
ALTERA_SYN_Gboolean := false
in mAxisSlaveAxiStreamSlaveType
VALID_BURST_MODE_Gboolean := false
AxiStreamConfigType := ssiAxiStreamConfig( 16) SSI_CONFIG_INIT_C
out sAxisSlaveAxiStreamSlaveType
in sAxisMasterAxiStreamMasterType
EN_FRAME_FILTER_Gboolean := true
in sTLastTUserslv( 7 downto 0)
out mTLastTUserslv( 7 downto 0)
in sAxisMasterAxiStreamMasterType
in sAxisMasterAxiStreamMasterType
out mAxisMasterAxiStreamMasterType
SLAVE_AXI_CONFIG_GAxiStreamConfigType := SSI_CONFIG_INIT_C
CASCADE_SIZE_Gpositive := 1
AXIS_CONFIG_GAxiStreamConfigType := ssiAxiStreamConfig( 16)
out sAxisCtrlAxiStreamCtrlType
ALTERA_RAM_Gstring := "M9K"
in fifoPauseThreshslv( FIFO_ADDR_WIDTH_G- 1 downto 0) :=( others => '1')
in fifoPauseThreshslv( FIFO_ADDR_WIDTH_G- 1 downto 0) :=( others => '1')
in mAxisSlaveAxiStreamSlaveType
CASCADE_SIZE_Ginteger range 1 to ( 2** 24):= 1
USE_BUILT_IN_Gboolean := false
in mAxisSlaveAxiStreamSlaveType
FIFO_PAUSE_THRESH_Ginteger range 1 to ( 2** 24):= 1
VALID_THOLD_Ginteger range 0 to ( 2** 24):= 1
AxiStreamSlaveType txSlave
CASCADE_PAUSE_SEL_Gnatural := 0
PIPE_STAGES_Gnatural := 1
MASTER_AXI_CONFIG_GAxiStreamConfigType := SSI_CONFIG_INIT_C
MASTER_AXI_CONFIG_GAxiStreamConfigType := AXI_STREAM_CONFIG_INIT_C
out sAxisSlaveAxiStreamSlaveType
out sAxisSlaveAxiStreamSlaveType
CASCADE_PAUSE_SEL_Ginteger range 0 to ( 2** 24):= 0
out mAxisMasterAxiStreamMasterType
EN_FRAME_FILTER_Gboolean := true
OR_DROP_FLAGS_Gboolean := false
AxiStreamSlaveType rxSlave
in sAxisMasterAxiStreamMasterType