[Back to Design Hierarchy Report](../design_hierarchy.md#vhdl-entities)
# Entity - data_link
## Summary
| Name | Location | Description |
| --- | --- | --- |
|data_link|data_link.vhd#31||
## Instantiations
Count: 1
| Name | Location | Description | Details |
| --- | --- | --- | :---: |
| inst_data_link | spacefibre_light_top.vhd#567 | | [
](module_16/instantiation_1.md) |
## Generics
Count: 1
| Name | Type | Default value | Description |
| --- | --- | --- | --- |
|G_VC_NUM|integer|8|Number of virtual channel|
## Ports
Count: 69
| Name | Mode | Type | Description |
| --- | --- | --- | --- |
|RST_N|in|std_logic|global reset|
|CLK|in|std_logic|Clock generated by GTY IP|
|AXIS_ARSTN_TX_NW|in|std_logic_vector ( G_VC_NUM downto 0 )|Active-low asynchronous reset signals for each virtual channel (VC) in the TX path|
|AXIS_ACLK_TX_NW|in|std_logic_vector ( G_VC_NUM downto 0 )|Clock signals for each VC in the TX path|
|AXIS_TREADY_TX_DL|out|std_logic_vector ( G_VC_NUM downto 0 )|Indicates that the data link layer is ready to accept data on each VC|
|AXIS_TDATA_TX_NW|in|vc_data_array ( G_VC_NUM downto 0 )|Data signals from the network layer to the data link layer for each VC|
|AXIS_TUSER_TX_NW|in|vc_k_array ( G_VC_NUM downto 0 )|Sideband information (e.g., control or metadata) from the network layer to the data link layer for each VC|
|AXIS_TLAST_TX_NW|in|std_logic_vector ( G_VC_NUM downto 0 )|Indicates the last transfer in a packet/transaction on each VC|
|AXIS_TVALID_TX_NW|in|std_logic_vector ( G_VC_NUM downto 0 )|Indicates that valid data is available on the TX data bus for each VC|
|AXIS_ARSTN_RX_NW|in|std_logic_vector ( G_VC_NUM downto 0 )|Active-low asynchronous reset signals for each VC in the RX path|
|AXIS_ACLK_RX_NW|in|std_logic_vector ( G_VC_NUM downto 0 )|Clock signals for each VC in the RX path|
|AXIS_TREADY_RX_NW|in|std_logic_vector ( G_VC_NUM downto 0 )|Indicates that the network layer is ready to receive data on each VC|
|AXIS_TDATA_RX_DL|out|vc_data_array ( G_VC_NUM downto 0 )|Data signals from the data link layer to the network layer for each VC|
|AXIS_TUSER_RX_DL|out|vc_k_array ( G_VC_NUM downto 0 )|Sideband information from the data link layer to the network layer for each VC|
|AXIS_TLAST_RX_DL|out|std_logic_vector ( G_VC_NUM downto 0 )|Indicates the last transfer in a packet/transaction on each VC|
|AXIS_TVALID_RX_DL|out|std_logic_vector ( G_VC_NUM downto 0 )|Indicates that valid data is available on the RX data bus for each VC|
|CURRENT_TIME_SLOT_NW|in|std_logic_vector ( 7 downto 0 )|Current time slot|
|DATA_TX_DL|out|std_logic_vector ( 31 downto 00 )|Data parallel to be send from Data-Link Layer|
|CAPABILITY_TX_DL|out|std_logic_vector ( 07 downto 00 )|Capability send on TX link in INIT3 control word|
|NEW_DATA_TX_DL|out|std_logic|Flag to write data in FIFO TX|
|VALID_K_CHARAC_TX_DL|out|std_logic_vector ( 03 downto 00 )|K charachter valid in the 32-bit DATA_TX_DL vector|
|FIFO_TX_FULL_PPL|in|std_logic|Flag full of the FIFO TX|
|FIFO_RX_RD_EN_DL|out|std_logic|Flag to read data in FIFO RX|
|DATA_RX_PPL|in|std_logic_vector ( 31 downto 00 )|Data parallel to be received to Data-Link Layer|
|FIFO_RX_EMPTY_PPL|in|std_logic|Flag EMPTY of the FIFO RX|
|FIFO_RX_DATA_VALID_PPL|in|std_logic|Flag DATA_VALID of the FIFO RX|
|VALID_K_CHARAC_RX_PPL|in|std_logic_vector ( 03 downto 00 )|K charachter valid in the 32-bit DATA_TR_PPL vector|
|FAR_END_CAPA_PPL|in|std_logic_vector ( 07 downto 00 )|Capability field receive in INIT3 control word|
|LANE_ACTIVE_PPL|in|std_logic|Lane Active flag for the DATA Link Layer|
|LANE_RESET_DL|out|std_logic|Lane Reset command|
|INTERFACE_RESET_MIB|in|std_logic|Reset the link and all configuration register of the Data Link layer|
|LINK_RESET_MIB|in|std_logic|Reset the link|
|NACK_RST_EN_MIB|in|std_logic|Enable automatic link reset on NACK reception|
|NACK_RST_MODE_MIB|in|std_logic|Up for instant link reset on NACK reception, down for link reset at the end of the current received frame on NACK reception|
|PAUSE_VC_MIB|in|std_logic_vector ( G_VC_NUM downto 0 )|Pause the corresponding virtual channel after the end of current transmission|
|CONTINUOUS_VC_MIB|in|std_logic_vector ( G_VC_NUM - 1 downto 0 )|Enable the corresponding virtual channel continuous mode|
|SEQ_NUMBER_TX_DL|out|std_logic_vector ( 8 - 1 downto 0 )|SEQ_NUMBER in transmission|
|SEQ_NUMBER_RX_DL|out|std_logic_vector ( 8 - 1 downto 0 )|SEQ_NUMBER in reception|
|CREDIT_VC_DL|out|std_logic_vector ( G_VC_NUM - 1 downto 0 )|Indicates if each corresponding far-end input buffer has credit|
|INPUT_BUF_OVF_VC_DL|out|std_logic_vector ( G_VC_NUM - 1 downto 0 )|Indicates input buffer overflow|
|FCT_CREDIT_OVERFLOW_DL|out|std_logic_vector ( G_VC_NUM - 1 downto 0 )|Indicates overflow of each corresponding input buffer|
|CRC_LONG_ERROR_DL|out|std_logic|CRC long error|
|CRC_SHORT_ERROR_DL|out|std_logic|CRC short error|
|FRAME_ERROR_DL|out|std_logic|Frame error|
|SEQUENCE_ERROR_DL|out|std_logic|Sequence error|
|FAR_END_LINK_RESET_DL|out|std_logic|Far-end link reset status|
|FRAME_FINISHED_DL|out|std_logic_vector ( G_VC_NUM downto 0 )|Indicates that corresponding channel finished emitting a frame|
|FRAME_TX_DL|out|std_logic_vector ( G_VC_NUM downto 0 )|Indicates that corresponding channel is emitting a frame|
|DATA_COUNTER_TX_DL|out|std_logic_vector ( 6 downto 0 )|Indicate the number of data transmitted in last frame emitted|
|DATA_COUNTER_RX_DL|out|std_logic_vector ( 6 downto 0 )|Indicate the number of data received in last frame received|
|ACK_COUNTER_TX_DL|out|std_logic_vector ( 2 downto 0 )|ACK counter TX|
|NACK_COUNTER_TX_DL|out|std_logic_vector ( 2 downto 0 )|NACK counter TX|
|FCT_COUNTER_TX_DL|out|std_logic_vector ( 3 downto 0 )|FCT counter TX|
|ACK_COUNTER_RX_DL|out|std_logic_vector ( 2 downto 0 )|ACK counter RX|
|NACK_COUNTER_RX_DL|out|std_logic_vector ( 2 downto 0 )|NACK counter RX|
|FCT_COUNTER_RX_DL|out|std_logic_vector ( 3 downto 0 )|FCT counter RX|
|FULL_COUNTER_RX_DL|out|std_logic_vector ( 1 downto 0 )|FULL counter RX|
|RETRY_COUNTER_RX_DL|out|std_logic_vector ( 1 downto 0 )|RETRY counter RX|
|CURRENT_TIME_SLOT_DL|out|std_logic_vector ( 7 downto 0 )|Current time slot|
|RESET_PARAM_DL|out|std_logic|Reset configuration parameters control|
|LINK_RST_ASSERTED_DL|out|std_logic|Link has been reseted|
|NACK_SEQ_NUM_DL|out|std_logic_vector ( 7 downto 0 )|NACK Seq_num received|
|ACK_SEQ_NUM_DL|out|std_logic_vector ( 7 downto 0 )|ACK Seq_num received|
|DATA_PULSE_RX_DL|out|std_logic|Data received pulse signal|
|ACK_PULSE_RX_DL|out|std_logic|ACK received pulse signal|
|NACK_PULSE_RX_DL|out|std_logic|NACK received pulse signal|
|FCT_PULSE_RX_DL|out|std_logic|FCT received pulse signal|
|FULL_PULSE_RX_DL|out|std_logic|FULL received pulse signal|
|RETRY_PULSE_RX_DL|out|std_logic|RETRY received pulse signal|
[Back to Design Hierarchy Report](../design_hierarchy.md#vhdl-entities)