Store Forward Mode

In Store Forward mode, the MAC buffers the entire frame in the transmit FIFO before initiating transmission on the PHY interface. The TXFIFO must be large enough to accommodate the complete frame, including Ethernet headers and optional VLAN tags. Transmission begins only after the entire frame has been received (tx_axis_mac_tlast asserted), subject to the transmit priority rules described in TX PHY Interface.

The minimum TXFIFO depth required is calculated as follows:
  • Without VLAN tag:
  • With VLAN tag:

If the TXFIFO overflows before the entire frame is stored, the incomplete frame is discarded and is not transmitted.

During operation, when tx_axis_mac_tvalid = 1, the MAC stores the corresponding tx_axis_mac_tdata, tx_axis_mac_tstrb, and tx_axis_mac_tlast. When tx_axis_mac_tvalid = 0, no data is stored for that cycle. The frame is not terminated, and transmission still proceeds once the complete frame is received.

However, if tx_axis_mac_tstrb deasserts before tx_axis_mac_tlast (i.e., dropped bytes within the middle of a frame), the MAC treats the frame as invalid. In this case, the frame is flagged as an error frame and terminated. See Terminating Bad TX Frames for more details.

Figure 1. Store Forward Mode