Visible to Intel only — GUID: nik1411004533528
Ixiasoft
Visible to Intel only — GUID: nik1411004533528
Ixiasoft
5.3. 50G Interlaken IP Core User Data Transfer Interface Signals
Signal Name |
Direction |
Width (Bits) |
Description |
---|---|---|---|
50G Interlaken IP Core Transmit User Interface |
|||
itx_chan |
Input |
8 |
Transmit logic channel number. The IP core supports up to 256 channels. The 50G Interlaken IP core samples this value only when itx_sop or itx_sob is high and itx_num_valid has a non-zero value. |
itx_num_valid |
Input |
3 |
itx_num_valid[2:0] specifies the number of valid 64-bit words in the current packet in the current data symbol. The maximum value of itx_num_valid[2:0] is four, because a data symbol on the 256 bit wide data path has four words (4 x 64 bits = 256 bits). In non-valid cycles, you must set the value of itx_num_valid[2:0] to zero. In valid cycles, you must set the value of itx_num_valid[2:0] as follows:
You must set the value of itx_num_valid to zero in all non-valid cycles, even when itx_ready is not asserted. |
itx_sop |
Input |
1 |
Indicates the current data symbol on itx_din_words contains the start of a packet (SOP). This signal has the following valid values:
|
itx_eopbits |
Input |
4 |
Indicates whether the current data symbol contains the end of a packet (EOP) with or without an error, and specifies the number of valid bytes in the current end-of-packet, non-error 8-byte data word, if relevant. You must set the value of itx_eopbits as follows:
All other values (4'b01xx, 4'b001x) are undefined. The valid bytes always start in bit positions [63:56] of the final valid data word of the packet. |
itx_sob |
Input |
1 |
Indicates the current data symbol contains the start of a burst (SOB). If the 50G Interlaken IP core is in Interleaved mode, you are responsible for providing this start of the burst signal. If the50G Interlaken IP core is in Packet mode, the IP core ignores this signal. The 50G Interlaken IP core samples the itx_chan signal during this cycle. This signal has the following valid values:
Typically, you use this mode for sending interleaved packets. However, you can still send non-interleaved packets as long as you provide the itx_sob and itx_eob signal values. You are responsible to comply with the BurstMax and BurstMin parameters. If the burst you send is too large, it can overflow the 50G Interlaken transmit buffer. |
itx_eob |
Input |
1 |
End of the burst. If the 50G Interlaken IP core is in Interleaved mode, you are responsible for providing this end of the burst signal. If the 50G Interlaken IP core is in Packet mode, the IP core ignores this signal. You are responsible to comply with the BurstMax and BurstMin parameters. |
itx_din_words |
Input |
256 | The four 64-bit words of input data (one data symbol). When itx_num_valid has the value of zero, the IP core ignores itx_din_words. |
itx_calendar |
Input |
16 N |
Multiple pages (16 bits per page) of calendar input bits. The 50G Interlaken IP Core copies these bits to the in-band flow control bits in N control words that it sends on the Interlaken link. N is the value of the Number of calendar pages parameter, which can be any of 1, 2, 4, 8. or 16. This signal is synchronous with tx_usr_clk, although it is not part of the user data transfer protocol. |
itx_ready |
Output |
1 |
Flow control signal to back pressure transmit traffic. When this signal is high, you can send traffic to the IP core. When this signal is low, you should stop sending traffic to the IP core within one to four cycles. You can consider the inverse of itx_ready to be a FIFO-almost-full indicator. In full duplex mode, itx_ready is low when rx_lanes_aligned is low. |
itx_ifc_err |
Output |
1 |
Indicates the transmit side user data transfer interface received traffic that the 50G Interlaken IP Core does not support. The IP core asserts the itx_ifc_err signal in the following cases:
The IP core asserts the itx_ifc_err signal for a single clock cycle. The signal pulses within the current burst, with a delay of one or two cycles after the error on the transmit side user data transfer interface. |
50G Interlaken IP Core Receive User Interface |
|||
irx_chan |
Output |
8 |
Receive logic channel number. The IP core supports up to 256 channels. You should sample this value when irx_sop or irx_sob is high and irx_num_valid has a non-zero value. |
irx_num_valid |
Output |
3 |
irx_num_valid[2:0] specifies the number of valid 64-bit words in the current packet in the current data symbol. The maximum value of irx_num_valid[2:0] is four, because a data symbol on the 256 bit wide data path has four words (4 x 64 bits = 256 bits). In valid cycles, the IP core sets the value of irx_num_valid[2:0] as follows:
The IP core sets the value of irx_num_valid to zero in all non-valid cycles. |
irx_sop |
Output |
1 |
Indicates the current data symbol on irx_dout_words contains the start of a packet (SOP). This signal has the following valid values:
|
irx_eopbits |
Output |
4 |
Indicates whether the current data symbol contains the end of a packet (EOP) with or without an error, and specifies the number of valid bytes in the current end-of-packet, non-error 8-byte data word, if relevant. The IP core sets the value of irx_eopbits as follows:
All other values (4'b01xx, 4'b001x) are undefined and are not generated by the IP core. The valid bytes always start in bit positions [63:56] of the final valid data word of the packet. |
irx_sob |
Output |
1 |
Start of the burst. The 50G Interlaken IP core indicates the start of the burst. The signal irx_channel is only valid when irx_sob is high. This signal toggles in Packet Mode and in Interleaved Mode. This signal has the following valid values:
|
irx_eob |
Output |
1 |
End of the burst. The 50G Interlaken IP core indicates the end of the burst. This signal toggles in Packet Mode and in Interleaved Mode. |
irx_dout_words |
Output |
256 | The four 64-bit words of output data (one data symbol). When irx_num_valid has the value of zero, you should ignore irx_dout_words. |
irx_calendar |
Output |
16 × N |
Multiple pages (16 bits per page) of calendar output bits. The value is the in-band flow control bits from N control words on the incoming Interlaken link. N is the value of the Number of calendar pages parameter, which can be any of 1, 2, 4, 8, or 16. This signal is synchronous with rx_usr_clk, although it is not part of the user data transfer protocol. |
irx_err |
Output |
1 |
Indicates an errored packet. This signal is valid only when both irx_num_valid[2:0] and irx_eopbits[3:0] are non-zero. When a CRC24 or other error occurs, the 50G Interlaken IP core asserts this signal for all open channel packets to label them all as errored packets, because the IP core cannot assign the error to a specific channel. |