Entity: AxiStreamResize

Diagram

time TPD_G boolean READY_EN_G natural PIPE_STAGES_G positive SIDE_BAND_WIDTH_G AxiStreamConfigType SLAVE_AXI_CONFIG_G AxiStreamConfigType MASTER_AXI_CONFIG_G sl axisClk sl axisRst AxiStreamMasterType sAxisMaster slv(SIDE_BAND_WIDTH_G-1 downto 0) sSideBand AxiStreamSlaveType mAxisSlave AxiStreamSlaveType sAxisSlave AxiStreamMasterType mAxisMaster slv(SIDE_BAND_WIDTH_G-1 downto 0) mSideBand

Description


Company : SLAC National Accelerator Laboratory

Description: Block to resize AXI Streams. Re-sizing is always little endian.

Resizer should not be used when interleaving tDests

This file is part of 'SLAC Firmware Standard Library'. It is subject to the license terms in the LICENSE.txt file found in the top-level directory of this distribution and at: https://confluence.slac.stanford.edu/display/ppareg/LICENSE.html. No part of 'SLAC Firmware Standard Library', including this file, may be copied, modified, propagated, or distributed except according to

the terms contained in the LICENSE.txt file.

Generics

Generic name Type Value Description
TPD_G time 1 ns General Configurations
READY_EN_G boolean true
PIPE_STAGES_G natural 0
SIDE_BAND_WIDTH_G positive 1 General purpose sideband
SLAVE_AXI_CONFIG_G AxiStreamConfigType AXI Stream Port Configurations
MASTER_AXI_CONFIG_G AxiStreamConfigType

Ports

Port name Direction Type Description
axisClk in sl Clock and reset
axisRst in sl
sAxisMaster in AxiStreamMasterType Slave Port
sSideBand in slv(SIDE_BAND_WIDTH_G-1 downto 0)
sAxisSlave out AxiStreamSlaveType
mAxisMaster out AxiStreamMasterType Master Port
mSideBand out slv(SIDE_BAND_WIDTH_G-1 downto 0)
mAxisSlave in AxiStreamSlaveType

Signals

Name Type Description
r RegType
rin RegType
pipeAxisMaster AxiStreamMasterType
pipeSideBand slv(SIDE_BAND_WIDTH_G-1 downto 0)
pipeAxisSlave AxiStreamSlaveType

Constants

Name Type Value Description
SLV_BYTES_C positive SLAVE_AXI_CONFIG_G.TDATA_BYTES_C
MST_BYTES_C positive MASTER_AXI_CONFIG_G.TDATA_BYTES_C
SLV_USER_C positive ite(SLAVE_AXI_CONFIG_G.TUSER_BITS_C /= 0,
SLAVE_AXI_CONFIG_G.TUSER_BITS_C,
1)
MST_USER_C positive ite(MASTER_AXI_CONFIG_G.TUSER_BITS_C /= 0,
MASTER_AXI_CONFIG_G.TUSER_BITS_C,
1)
COUNT_C positive ite(SLV_BYTES_C > MST_BYTES_C,
SLV_BYTES_C / MST_BYTES_C,
MST_BYTES_C / SLV_BYTES_C)
REG_INIT_C RegType ( count => (others => '0'),
obMaster => axiStreamMasterInit(MASTER_AXI_CONFIG_G),
sideBand => (others => '0'),
ibSlave => AXI_STREAM_SLAVE_INIT_C )

Types

Name Type Description
RegType

Processes

Instantiations

Description
Optional output pipeline registers to ease timing