Visible to Intel only — GUID: nik1411172601751
Ixiasoft
Visible to Intel only — GUID: nik1411172601751
Ixiasoft
3.2.2.2. Low Latency 40-100GbE IP Core TX Data Bus with Adapters (Avalon-ST Interface)
The Low Latency 40-100GbE IP core TX datapath with adapters employs the Avalon-ST protocol. The Avalon-ST protocol is a synchronous point-to-point, unidirectional interface that connects the producer of a data stream (source) to a consumer of data (sink). The key properties of this interface include:
- Start of packet (SOP) and end of packet (EOP) signals delimit frame transfers.
- A valid signal qualifies signals from source to sink.
- The sink applies backpressure to the source by using the ready signal. The source typically responds to the deassertion of the ready signal from the sink by driving the same data until the sink can accept it. The readyLatency defines the relationship between assertion and deassertion of the ready signal, and cycles which are considered to be ready for data transfer.The readyLatency on the TX client interface is zero cycles.
Altera provides an Avalon-ST interface with adapters for both the LL 40GbE and LL 100GbE IP cores. The Avalon-ST interface requires that the start of packet (SOP) always be in the MSB, simplifying the interpretation and processing of incoming data.
In the LL 40GbE IP core, the interface width is 256 bits, and in the LL 100GbE IP core, the interface width is 512 bits. The LL 40GbE Avalon-ST interface operates at 312.5 MHz and the LL 100GbE Avalon-ST interface operates at 390.625 MHz.
The client acts as a source and the TX MAC acts as a sink in the transmit direction.
Signal Name |
Direction |
Description |
---|---|---|
l<n>_tx_data[<n>*64-1:0] | Input |
TX data. If the preamble pass-through feature is enabled, data begins with the preamble. The Low Latency 40-100GbE IP core does not process incoming frames of less than nine bytes correctly. You must ensure such frames do not reach the TX client interface. You must send each TX data packet without intermediate idle cycles. Therefore, you must ensure your application can provide the data for a single packet in consecutive clock cycles. If data might not be available otherwise, you must buffer the data in your design and wait to assert l<n>_tx_startofpacket when you are assured the packet data to send on l<n>_tx_data[<n>*64-1:0] is available or will be available on time. |
l<n>_tx_empty[<l>-1:0] | Input |
Indicates the number of empty bytes on l<n>_tx_data when l<n>_tx_endofpacket is asserted. |
l<n>_tx_startofpacket | Input |
When asserted, indicates the start of a packet. The packet starts on the MSB. |
l<n>_tx_endofpacket | Input |
When asserted, indicates the end of packet. |
l<n>_tx_ready | Output |
When asserted, the MAC is ready to receive data. The l<n>_tx_ready signal acts as an acknowledge. The source drives l<n>_tx_valid and l<n>_tx_data[<n>*64-1:0], then waits for the sink to assert l<n>_tx_ready. The readyLatency is zero cycles, so that the IP core accepts valid data in the same cycle in which it asserts l<n>_tx_ready. The l<n>_tx_ready signal indicates the MAC is ready to receive data in normal operational model. However, the l<n>_tx_ready signal might not be an adequate indication following reset. To avoid sending packets before the Ethernet link is able to transmit them reliably, you should ensure that the application does not send packets on the TX client interface until after the tx_lanes_stable signal is asserted. |
l<n>_tx_valid | Input |
When asserted l<n>_tx_data is valid. This signal must be continuously asserted between the assertions of l<n>_tx_startofpacket and l<n>_tx_endofpacket for the same packet. |
l<n>_tx_error | Input | When asserted in an EOP cycle (while l<n>_tx_endofpacket is asserted), directs the IP core to insert an error in the packet before sending it on the Ethernet link. This signal is a test and debug feature. In loopback mode, the IP core recognizes the packet upon return as a malformed packet. |