Entity: AxiStreamGearboxPack
- File: AxiStreamGearboxPack.vhd
Diagram
Description
Company : SLAC National Accelerator Laboratory
Description: AXI stream Packer Module
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 | |
| AXI_STREAM_CONFIG_G | AxiStreamConfigType | ||
| RANGE_HIGH_G | integer | 13 | |
| RANGE_LOW_G | integer | 2 |
Ports
| Port name | Direction | Type | Description |
|---|---|---|---|
| axisClk | in | sl | |
| axisRst | in | sl | |
| rawAxisMaster | in | AxiStreamMasterType | |
| rawAxisSlave | out | AxiStreamSlaveType | |
| rawAxisCtrl | out | AxiStreamCtrlType | |
| packedAxisMaster | out | AxiStreamMasterType | |
| packedAxisSlave | in | AxiStreamSlaveType | |
| packedAxisCtrl | in | AxiStreamCtrlType |
Signals
| Name | Type | Description |
|---|---|---|
| r | RegType | |
| rin | RegType | |
| rawSsiMaster | SsiMasterType | |
| packedSsiSlave | SsiSlaveType |
Constants
| Name | Type | Value | Description |
|---|---|---|---|
| STREAM_WIDTH_C | integer | AXI_STREAM_CONFIG_G.TDATA_BYTES_C*8 | |
| PACK_SIZE_C | integer | RANGE_HIGH_G-RANGE_LOW_G+1 | |
| SIZE_DIFFERENCE_C | integer | STREAM_WIDTH_C-PACK_SIZE_C | |
| ASSIGNMENT_INDECIES_C | IntegerArray | computeIndicies | |
| REG_INIT_C | RegType | ( packedSsiMaster => ssiMasterInit(AXI_STREAM_CONFIG_G), rawSsiSlave => ssiSlaveInit(AXI_STREAM_CONFIG_G), data => (others => '0'), index => (others => '0')) |
Types
| Name | Type | Description |
|---|---|---|
| RegType |
Functions
- computeIndicies () return IntegerArray
Description
Vivado chokes if you try to calculate these on the fly inside the comb process.
Precompute all of the assignment indicies instead
Processes
- comb: ( axisRst, r, rawSsiMaster )
- seq: ( axisClk )