Segmented 100G mode uses a 384-bit datapath. This mode is limited to a
single Ethernet client (Client 0) and consequently <N> = 0 for the various
tx_axis_*_<N>
signals. Higher numbered signals such as
tx_axis_tvalid_(1-3)
, tx_axis_tready_(1-3)
, etc., are unused and should be driven to 0. Note:
tx_axis_tlast
and rx_axis_tlast
signals are not used in the segmented
mode.Port Name | I/O | Description |
---|---|---|
tx_axis_tvalid_0 | I | Asserted by user logic to indicate that the current bus cycle is valid. |
tx_axis_tready_0 | O | Driven by the MRMAC to indicate that the interface is able to accept the data currently present on the bus. If the tready signal deasserts during a transfer the user logic must hold the current data on the bus until tready is asserted again. |
tx_axis_tdata<M>[63:0] | I | Segmented packet data, in network order. |
tx_axis_tkeep_user_<M>[0] | I | ENA. Setting this input to 1 indicates that the associated tx_axis_tdata(0-5) signal contains valid data, and that the other flags on the associated tx_axis_tkeep_user_* signals are valid. When set to 0, all the corresponding tkeep_user flags are ignored by the interface. |
tx_axis_tkeep_user_<M>[1] | I | SOP. Setting this input to 1 indicates that the associated tx_axis_tdata(0-5) segment contains the beginning of a new packet. Only valid when ENA is 1. |
tx_axis_tkeep_user_<M>[2] | I | EOP. Setting this input to 1 indicates that the associated tx_axis_tdata(0-5) segment contains the last byte of a packet transfer. Only valid when ENA is 1. |
tx_axis_tkeep_user_<M>[3] | I | ERR. Setting this input to 1 indicates the packet in transfer is to be aborted with an error. The packet is marked poisoned with an invalid FCS, as is typical in cut-through architectures. This flag is only valid in a segment where both EOP and ENA are set to 1. |
tx_axis_tkeep_user_<M>[6:4] | I | MTY[2:0]. Empty
indicates the number of empty (unused) bytes in the final (EOP) segment. Valid only
in the segment where EOP and ENA are asserted to 1. 3'd0 - 8 bytes valid 3'd1 - 7 bytes valid ... 3'd7 - 1 byte valid |
tx_axis_tkeep_user_<M>[7] | I | Preempt. When set to 1, it indicates that the packet in progress is to be preempted. When preempting a packet the interface requires that both EOP and ENA be set to 1 as well. For more details on frame preemption support, see the related information below. |
tx_axis_tkeep_user_<M>[8] | I | Resume. Set to 1 when the currently transmitting packet is a resumption of a previously preempted packet. This signal is to be asserted at the beginning of new packet transfer. It is only valid in a segment where the corresponding SOP and ENA are asserted. |
tx_preamblein_0[55:0] | I | This signal is used to convey preamble when custom preamble mode is enabled. It is also used when Frame Preemption is enabled. The tx_preamblein_0 signal must be provided during the first transfer of data. When enabled, seven preamble bytes must be provided. The MRMAC always sets the first byte to 0x55. |
tx_ptp_1588op_in_0[1:0] | I | Select the desired PTP operation.
|
tx_ptp_cf_offset_0[15:0] | I | This specifies the offset (in octets) to the PTP Correction field. Offset 0 corresponds to the first byte of the Ethernet Destination Address. If UDP checksum adjustment is required (tx_ptp_upd_chksum_in is set), the first byte of the checksum is assumed to be located at tx_ptp_cf_offset - 10 octets. Note, this value must be even, and for timestamping applications not following IEEE 1588 protocol but wanting to use the 1-step timestamp insertion feature, any user specified correction field offset must be a minimum of 18 bytes from the end of the packet. |
tx_ptp_upd_chksum_in_0 | I | Update UDP checksum:
|
tx_ptp_tag_field_in_0[15:0] | I | Identifying tag to use for egress PTP packet. This should be valid during the SOP cycle on the AXI4-Stream interface. |
tx_ptp_tag_out_0[15:0] | O | Egress Tag. Valid when tx_ptp_tstamp_valid_out<N> is set. |
tx_ptp_tstamp_valid_out_0 | O | Indicates that Egress tag/timestamp is valid. |
tx_ptp_rsfec_offset_out_0[6:0] | O | Egress RSFEC codeword offset of start of packet. This is only valid when RSFEC is enabled. |
tx_ptp_tstamp_out_0[54:0] | O | Egress Timestamp. Valid when tx_ptp_tstamp_valid_out_<N> is set. |
Port Name | I/O | Description |
---|---|---|
rx_axis_tvalid_0 | O | Indicates that the data and flags on the AXI4-Stream bus are valid. |
rx_axis_tdata<M>[63:0] | O | Contains the data for the received packet in network order. |
rx_axis_tkeep_user_<M>[0] | O | ENA. When this output is 1, it indicates that the associated rx_axis_tdata(0-5) signal contains valid data, and that the other flags on the associated rx_axis_tkeep_user_(0-5) signal are valid. When set to 0, all the corresponding tkeep_user flags are ignored by the interface. |
rx_axis_tkeep_user_<M>[1] | O | SOP. When this output is 1, it indicates that the associated rx_axis_tdata(0-5) segment contains the beginning of a new packet. Only valid when ENA is 1. |
rx_axis_tkeep_user_<M>[2] | O | EOP. When this output is 1, it indicates that the associated rx_axis_tdata(0-5) segment contains the last byte of a packet transfer. Only valid when ENA is 1. |
rx_axis_tkeep_user_<M>[3] | O | ERR. When this output is 1, it indicates the packet in transfer was found to contain an error. This flag is only valid in a segment where both EOP and ENA are set to 1. |
rx_axis_tkeep_user_<M>[6:4] | O | MTY[2:0]. Empty
indicates the number of empty (unused) bytes in the final (EOP) segment. Valid only
in the segment where EOP and ENA are asserted to 1. 3'd0 - 8 bytes valid 3'd1 - 7 bytes valid ... 3'd7 - 1 byte valid |
rx_axis_tkeep_user_<M>[7] | O | Preempt. When set to 1, it indicates that the packet in progress was preempted. For more details on frame preemption support, see the related information below. |
rx_axis_tkeep_user_<M>[8] | O | Resume. When set to 1, it indicates that the currently active packet is a resumption of a previously preempted packet. This signal is to be asserted at the beginning of new packet transfer. It is only valid in a segment where the corresponding SOP and ENA are asserted. For more details on frame preemption support, see the related information below. |
rx_preambleout_0[55:0] | O | This signal is used to convey preamble when custom preamble mode is enabled. It is also used when Frame Preemption is enabled. The rx_preambleout_0 signal must be provided during the first transfer of data. When enabled, seven preamble bytes are provided. The MRMAC discards the first byte (0x55). |
rx_ptp_rsfec_offset_out_0[6:0] | O | Ingress RSFEC codeword offset of start of packet. This is only valid when RSFEC is enabled. |
rx_ptp_tstamp_out_0[54:0] | O | Ingress timestamp. Note: This signal is also shared with the Flex I/F. When used in Flex
I/F mode (ctl_pcs_rx_ts_en_<N>==1), the timestamp is valid for the first word
of the data.
|