Intel® Simics® Simulator for Intel® FPGAs: Agilex™ 5 Virtual Platform User Guide

ID 786901
Date 11/16/2024
Public
Document Table of Contents

2.1.3.6. USB Disks Hot-Plug Support

The virtual platform instantiates up to three USB disks that support hot-plugging by using Intel® Simics® CLI commands to emulate plugging and unplugging the USB disks.

In the virtual platform, only the disks that have a file image assigned to them are connected by default if a USB port is available. In the virtual platform, there is a single port of the USB 3.1 controller (usb1_typec) and one for the USB 2.0 OTG controller (usb0_otg) to match the real Agilex™ 5 development kit, and because of this, you can connect up to two disks at a time.

The usb3_disk is a SuperSpeed disk. You can connect it to any of the ports even though when using the plug command with this disk, the auto-completion feature of Intel® Simics® CLI shows only the usb1_typec port from the USB 3.1 controller (usb1_typec).

The usb3_hs_disk and usbotg_disk are HighSpeed disks. You can connect them to either a USB 3.1 controller (usb1_typec) or a USB 2.0 OTG controller (usb0_otg) port.

If a disk is already connected to a port and you want to connect (plug) another disk in this port, you must disconnect (unplug) the former one first. For example, if usb3_disk is already connected to usb1_typec port, to connect the usb3_hs_disk disk into this port, you must unplug the usb3_disk disk first to release the usb1_typec port and then can connect the usb3_hs_disk to this port with the plug command.

If a disk image file is assigned to the usb3_disk or to the usb3_hs_disk, it is connected by default to the usb1_typec port. Since only one of these can be connected to the usb1_typec port, the usb3_disk has precedence over the usb3_hs_disk. In the case of usbotg_disk, it is connected by default to the usb0_otg port if a disk image is assigned to it.

The following table describes the disks available in this virtual platform and their characteristics:
Table 9.  Characteristics of Disks Available in the Virtual Platform
Disk Type Port to Connect USB Controller
usb3_disk SuperSpeed (SS)

usb3_disk_comp

usb1_typec (default)

usb0_otg 2

USB 3.1 Gen 1 (usb3)
usb3_hs_disk High Speed (HS)

usb3_disk_hs_comp

usb1_typec (default)

usb0_otg

USB 3.1 Gen 1 (usb3)
usbotg_disk High Speed (HS)

usb3_disk_hs_comp

usb0_typec

usb0_otg (default)

USB 2.0 OTG (usb2)
The following CLI commands emulate plugging, unplugging, and port connected to the USB disks:
Table 10.  CLI Commands
Task Command
Plugging
  • system.board.usb3_disk.plug port = usb1_typec
  • system.board.usb3_hs_disk.plug port = usb1_typec
  • system.board.usbotg_disk.plug port = usb0_otg
Unplugging
  • system.board.usb3_disk.unplug
  • system.board.usb3_hs_disk.unplug
  • system.board.usbotg_disk.unplug
Port connected to
  • system.board.usb3_disk.usb_device->usb_host
  • system.board.usb3_hs_disk.usb_device->usb_host
  • system.board.usbotg_disk.usb_device->usb_host
2 Not shown as an option when using the auto-completion feature with the plug Intel® Simics® command.