Entity: JesdAlignChGen
- File: JesdAlignChGen.vhd
Diagram
Description
Company : SLAC National Accelerator Laboratory
Description: Alignment character generator Scrambles incoming data if enabled Inverts incoming data if enabled
Replaces data with F and A characters. A(K28.3) - x"7C" - Inserted at the end of a multi-frame. F(K28.7) - x"FC" - Inserted at the end of a frame.
Note: Character replacement mechanism is different weather scrambler is enabled or disabled. Disabled: The characters are inserted if two corresponding octets in consecutive samples have the same value. Enabled: The characters are inserted it the corresponding octet has the same value as the inserted character.
3 c-c data latency
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 | |
F_G | positive | 2 |
Ports
Port name | Direction | Type | Description |
---|---|---|---|
clk | in | sl | |
rst | in | sl | |
enable_i | in | sl | Enable counter |
scrEnable_i | in | sl | Enable scrambling/descrambling |
lmfc_i | in | sl | Local multi clock |
dataValid_i | in | sl | Valid data from Tx FSM |
inv_i | in | sl | Invert ADC data |
sampleData_i | in | slv(GT_WORD_SIZE_C*8-1 downto 0) | |
sampleData_o | out | slv(GT_WORD_SIZE_C*8-1 downto 0) | Outs |
sampleK_o | out | slv(GT_WORD_SIZE_C-1 downto 0) |
Signals
Name | Type | Description |
---|---|---|
r | RegType | |
rin | RegType |
Constants
Name | Type | Value | Description |
---|---|---|---|
SAMPLES_IN_WORD_C | positive | (GT_WORD_SIZE_C/F_G) | |
REG_INIT_C | RegType | ( sampleDataReg => (others => '0'), sampleDataInv => (others => '0'), sampleDataD1 => (others => '0'), sampleDataD2 => (others => '0'), sampleKD1 => (others => '0'), lfsr => (others => '0'), lmfcD1 => '0' ) |
Types
Name | Type | Description |
---|---|---|
RegType | Register type |
Processes
- comb: ( r, rst, sampleData_i, dataValid_i, enable_i, lmfc_i, scrEnable_i,
inv_i )
- seq: ( clk )