Agilex™ 7 Hard Processor System Technical Reference Manual

ID 683567
Date 8/13/2024
Public
Document Table of Contents

18.5.1.6.1. USB Transactions

In device mode, the MAC decodes and checks the integrity of all token packets. For valid OUT or SETUP tokens, the following DATA packet is also checked. If the data packet is valid, the MAC performs the following steps:

  1. Writes the data to the receive FIFO buffer
  2. Sends the appropriate handshake when required to the USB host

If a receive FIFO buffer is not available, the MAC sends a NAK response to the host. The MAC also supports ping protocol.

For IN tokens, if data is available in the transmit FIFO buffer, the MAC performs the following steps:

  1. Reads the data from the FIFO buffer
  2. Forms the data packet
  3. Transmits the packet to the host
  4. Receives the response from the host
  5. Sends the updated status to the PFC

In host mode, the MAC receives a token request from the AIU. The MAC performs the following steps:

  1. Builds the token packet
  2. Sends the packet to the device

For OUT or SETUP transactions, the MAC also performs the following steps:

  1. Reads the data from the transmit FIFO buffer
  2. Assembles the data packet
  3. Sends the packet to the device
  4. Waits for a response

The response from the device causes the MAC to send a status update to the AIU.

For IN or PING transactions, the MAC waits for the data or handshake response from the device. For data responses, the MAC performs the following steps:

  1. Validates the data
  2. Writes the data to the receive FIFO buffer
  3. Sends a status update to the AIU
  4. Sends a handshake to the device, if appropriate