Hard Processor System Technical Reference Manual: Agilex™ 5 SoCs

ID 814346
Date 7/19/2024
Public
Document Table of Contents

5.6.5.10.3. USB 3.1 Mode-switch Controller

The USB mode switch controller represents the current mode of the HPS USB 3.1 controller. At reset state, the USB 3.1 controller is configured as host during HPS boot phase. The combination of vbus_det and usb31_id signals decide whether the USB 3.1 controller needs to switch state or not. The figure shows how the controller state changes based on these two signals:

Figure 175. Controller State Changes

Host Mode

  • At reset, FSM state is at host mode: “vbus_det” == 1’b1 and “usb31_id” == 1’b0
  • USB31 Controller remains in host mode: “vbus_det” == 1’b1 and “usb31_id” == 1’b0
  • USB31 Controller remains in Host mode: “vbus_det” == 1’b0 and “usb31_id” == 1’b0
  • USB31 Controller switch to device mode: “vbus_det” == 1’b1 and “usb31_id” == 1’b1

Device Mode

  • USB31 Controller remains in Device mode: “vbus_det” == 1’b0 and “usb31_id” == 1’b0
  • • USB31 Controller remains in Device mode: “vbus_det” == 1’b0 and “usb31_id” == 1’b1
  • USB31 Controller switch to Host mode: “vbus_det” == 1’b1 and “usb31_id” == 1’b0

Driving “PowerPreset”

  • When HPS USB31 Controller is configured as Host, “PowerPresent” is tied to 1’b1
  • • When HPS USB31 Controller is configured as Device, “PowerPresent” is tied to “vbus_det”

The following table shows the detailed information for the USB 3.1 mode-switch controller signals.

Table 235.  USB 3.1 Mode-Switch Controller Signals
Signal Name Width Input/Output Comments
CTRL_RST_MODE 2 Parameter

Controller reset mode parameter can be configured during instantiation to specify the controller state;

2’b01: Host

2’b10: Device

2’b00, 2’b11: Reserved

clk 1 Input Clock
rst_b 1 Input Reset
usb31_id 1 Input

USB31 ID value from fabric.

1’b0: UFP (Device) is connected to Type-C Connector

1’b1: DFP (Host) is connected to Type-C Connector

vbus_det 1 Input

VBUS detect

1’b0: No device is attached to Type-C connector

1’b1: Device is attached to Type-C Connector

PowerPresent 1 Output

Power present

1’b0: No device is attached to Type-C connector when Controller is in Device

1’b1: Device is attached to Type-C Connector or Controller is in Host mode