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.1.6. Board Component

The board component represents the PCB model containing the Agilex™ 5 SoC FPGA device and other onboard device components. This component instantiates the FPGA component and the devices controlled by the FPGA component, such as GPIO, Ethernet, SPI, I2C, I3C, and external flash storage devices (NAND, SD Card, QSPI, and USB disks).

The board component is implemented as a Python script named sm_universal_board_comp.py and the hierarchical name of this component is system.board.

The virtual platform board component has the following parameters:

Table 6.  Virtual Platform Board Components
Board Component Parameters Values Defined
USB Disks
  • Two high-speed disks that can be connected to either USB 3.1 Gen 1 or USB 2.0 OTG controller's ports (usb1_typec or usb0_otg ports respectively).

    Maximum disk size 1: 64 TB

    Object:
    system.board.usbotg_disk
    system.board.usb3_hs_disk
  • One SuperSpeed disk that can be connected to USB 3.1 Gen 1 controller port (usb1_typec port). For backwards compatibility, it can also be connected to USB 2.0 OTG controller port (usb0_otg port) although it is not shown when using the auto-completion feature with the plug Intel® Simics® CLI command.

    Maximum disk size1: 64 TB

    Object:
    system.board.usb3_disk

Marvell PHY

None.

Object:

system.board.phy0 
system.board.phy1 
system.board.phy2

NAND Flash Device

  • Page Size: 8192 bytes
  • Number of pages per block: 128
  • Bus width: 8 bits
  • Number of Blocks: 4096
  • Spare Page Size: 448 bytes
  • Number of Planes: 1
Object:
system.board.nand

SD Card Device

Size: 16 GB

Object:
system.board.sd_card

SPI Flash Device

  • One instance connected to the SPI0 Host controller.

    Sector Size: 64 x 1024 bytes

    Number of sectors: 4096

    system.board.spi_flash
  • Once instance connected to the QSPI controller.

    Sector Size: 64 x 1024 bytes

    Number of sectors: 4096

Object:
system.board.qspi

GPIO Loopback

Implemented GPIO loopback configuration in GPIO0 and GPIO1 ports. In each GPIO port, the pins that are connected are: [0,1], [5,6], [18,19] and [20,21].

Object:
system.board.gpio_loopback
I3C Devices
Connected to I3C0 instance:
  • pid: 0xFB1122330001 dcr = 0xE1

    inverted_loopback: false

    Object:
    system.board.i3c0_device1
  • pid: 0xFB1122330002 dcr = 0xE2

    inverted_loopback: false

    Object:
    system.board.i3c0_device2
  • pid: 0xFB1122330003 dcr = 0xE3

    inverted_loopback: false

    Object:
    system.board.i3c0_device3
Connected to I3C1 instance:
  • pid: 0xFB1122550001 dcr = 0xC6

    inverted_loopback: false

    Object:
    system.board.i3c1_device1
I2C EEPROM Devices (AT24Cxx)
  • One instance connected to each one of the I2C controllers (0 to 4).

    Addressing size: 8 bits

    Device Address: 0x54

    Size: 1 KB

    Objects:
    system.board.eeprom_8b_0
    system.board.eeprom_8b_1
    system.board.eeprom_8b_2
    system.board.eeprom_8b_3
    system.board.eeprom_8b_4
  • One instance connected to each one of the I2C controllers (0 to 4).

    Addressing size: 16 bits

    Device Address: 0x50

    Size: 4 KB

    Objects:
    system.board.eeprom_16b_0
    system.board.eeprom_16b_1
    system.board.eeprom_16b_2
    system.board.eeprom_16b_3
    system.board.eeprom_16b_4
  • One instance connected to the I3C0 controller.

    Addressing size: 8 bits

    Device Address: 0x54

    Size: 1 KB

    Objects:
    system.board.eeprom_8b_i3c0
  • One instance connected to the I3C1 controller.

    Addressing size: 16 bits

    Device Address: 0x50

    Size: 4 KB

    Objects:
    system.board.eeprom_16b_i3c1

A block diagram of the board component is as follows:

Figure 6. Board Component Block Diagram
1 Actual disk size depends on size of disk image loaded