Intel® Simics® Simulator for Intel® FPGAs: Intel Agilex® 5 E-Series Virtual Platform User Guide

ID 786901
Date 12/04/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

3.3.1. FPGA Fabric

Three components integrate the FPGA fabric model:

  • Peripheral subsystem
  • On-Chip memory example design
  • FPGA-To-HPS Bridge memory spaces

The following sections provide additional details about these components:

Peripheral Subsystem

The peripheral subsystem only includes an FPGA fabric example design instance, which consists of an On-chip memory IP. This memory is connected to the HPS through the lwhps2fpga bridge. For more information about this model, refer to the On-Chip Memory Example Design section.

On-Chip Memory Example Design

The On-Chip memory IP allows read/write operations from/to the HPS software connected through the hps2fpga bridge.
  • An instance of the On-Chip memory is instantiated directly under the qsys_top component and is connected with the HPS through the hps2fpga bridge (example_design).
  • The second instance of the On-Chip memory is instantiated under the peripheral sub-system (also instantiated under the qsys_top component) and is connected with the HPS through the lwhps2fpga bridge (example_design_lw).

The mapping of the memory instances is defined as follows:

Example Design Name

Bridge

Size

Start Address

End Address

example_design

hps2fpga

1 MB

0x0040000000

0x00400FFFFF

example_design_lw

lwhps2fpga

1 MB

0x0020000000

0x00200FFFFF

The example design instances in the FPGA fabric receive a parameter named base_addr that defines an offset value that indicates the mapping of the instance, taking as reference the Start Address value defined in the previous table.

The objects corresponding to the example design are the following:

  • system.board.fpga.soc_inst.example_design
  • system.board.fpga.soc_inst.periph_subsys.example_design_lw

FPGA-To-HPS Bridge Memory Spaces

Initiators in the FPGA logic model use these memory spaces to start read/write operations directed to the HPS or SDRAM components.