R-Tile Avalon® Streaming Intel® FPGA IP for PCI Express* User Guide
ID
683501
Date
4/07/2025
Public
A newer version of this document is available. Customers should click here to go to the newest version.
1. About the R-Tile Avalon® Streaming Intel® FPGA IP for PCI Express
2. IP Architecture and Functional Description
3. Advanced Features
4. Interfaces
5. Parameters
6. Troubleshooting/Debugging
7. R-Tile Avalon® Streaming Intel® FPGA IP for PCI Express* User Guide Archives
8. Document Revision History for the R-Tile Avalon® Streaming Intel® FPGA IP for PCI Express* User Guide
A. Configuration Space Registers
B. Root Port Enumeration
C. Implementation of Address Translation Services (ATS) in Endpoint Mode
D. Packets Forwarded to the User Application in TL Bypass Mode
E. Margin Masks for the R-Tile Avalon Streaming Intel FPGA IP for PCI Express
F. Using the Avery BFM for R-Tile PCI Express Gen5 Simulations
3.2.2.5.1. VirtIO Common Configuration Capability Register (Address: 0x012)
3.2.2.5.2. VirtIO Common Configuration BAR Indicator Register (Address: 0x013)
3.2.2.5.3. VirtIO Common Configuration BAR Offset Register (Address: 0x014)
3.2.2.5.4. VirtIO Common Configuration Structure Length Register (Address 0x015)
3.2.2.5.5. VirtIO Notifications Capability Register (Address: 0x016)
3.2.2.5.6. VirtIO Notifications BAR Indicator Register (Address: 0x017)
3.2.2.5.7. VirtIO Notifications BAR Offset Register (Address: 0x018)
3.2.2.5.8. VirtIO Notifications Structure Length Register (Address: 0x019)
3.2.2.5.9. VirtIO Notifications Notify Off Multiplier Register (Address: 0x01A)
3.2.2.5.10. VirtIO ISR Status Capability Register (Address: 0x02F)
3.2.2.5.11. VirtIO ISR Status BAR Indicator Register (Address: 0x030)
3.2.2.5.12. VirtIO ISR Status BAR Offset Register (Address: 0x031)
3.2.2.5.13. VirtIO ISR Status Structure Length Register (Address: 0x032)
3.2.2.5.14. VirtIO Device Specific Capability Register (Address: 0x033)
3.2.2.5.15. VirtIO Device Specific BAR Indicator Register (Address: 0x034)
3.2.2.5.16. VirtIO Device Specific BAR Offset Register (Address 0x035)
3.2.2.5.17. VirtIO Device Specific Structure Length Register (Address: 0x036)
3.2.2.5.18. VirtIO PCI Configuration Access Capability Register (Address: 0x037)
3.2.2.5.19. VirtIO PCI Configuration Access BAR Indicator Register (Address: 0x038)
3.2.2.5.20. VirtIO PCI Configuration Access BAR Offset Register (Address: 0x039)
3.2.2.5.21. VirtIO PCI Configuration Access Structure Length Register (Address: 0x03A)
3.2.2.5.22. VirtIO PCI Configuration Access Data Register (Address: 0x03B)
4.3.1. Avalon® Streaming Interface
4.3.2. Precision Time Measurement (PTM) Interface (Endpoint Only)
4.3.3. Hot Plug Interface
4.3.4. Interrupt Interface
4.3.5. Hard IP Reconfiguration Interface
4.3.6. Error Interface
4.3.7. Completion Timeout Interface
4.3.8. Configuration Intercept Interface
4.3.9. Power Management Interface
4.3.10. Hard IP Status Interface
4.3.11. Page Request Services (PRS) Interface (Endpoint Only)
4.3.12. Function-Level Reset (FLR) Interface (Endpoint Only)
4.3.13. SR-IOV VF Error Flag Interface (Endpoint Only)
4.3.14. General Purpose VSEC Interface
5.2.3.1. Device Capabilities
5.2.3.2. VirtIO Parameters
5.2.3.3. Link Capabilities
5.2.3.4. Legacy Interrupt Pin Register
5.2.3.5. MSI Capabilities
5.2.3.6. MSI-X Capabilities
5.2.3.7. Slot Capabilities
5.2.3.8. Latency Tolerance Reporting (LTR)
5.2.3.9. Process Address Space ID (PASID)
5.2.3.10. Device Serial Number Capability
5.2.3.11. Page Request Service (PRS)
5.2.3.12. Access Control Service (ACS)
5.2.3.13. Power Management
5.2.3.14. Vendor Specific Extended Capability (VSEC) Registers
5.2.3.15. TLP Processing Hints (TPH)
5.2.3.16. Address Translation Services (ATS) Capabilities
5.2.3.17. Precision Time Measurement (PTM)
F.4.2. Simulation Scripts Set-up
Before you compile and simulate the design, add the set-up and run scripts to your testbench environment:
- Navigate to the <example_design_folder>/pcie_ed_sim/sim/mentor directory.
- Copy the msim_avery.tcl and run_avery_questsim.sh files into this directory.
- Edit the msim_avery.tcl file to include the path for the QUARTUS_INSTALL_DIR, AVERY_PCIE and AVERY_PLI variables.
- Search for <QUARTUS_INSTALL_DIR> and replace it with your Quartus installation path.
- Example (your specific path may differ):
- set QUARTUS_INSTALL_DIR “mydisk/linux64/quartus/"
- Search for <AVERY_PCIE_PATH> and <AVERY_PLI_PATH> and replace with the paths to your Avery directories.
- Search for <QUARTUS_INSTALL_DIR> and replace it with your Quartus installation path.
Example (your Avery version may differ):
- set AVERY_PCIE "/mydisk/avery/apciexactor-2.5"
set AVERY_PLI "/mydisk/avery/pli/avery_pli-2021_0104/"
- The simulation is set up for PIPE mode simulation by default. To change it to run a serial simulation, replace all instances of +define+RTILE_PIPE_MODE with +define+RTILE_SERIAL_MODE_SIM in the msim_avery.tcl file.
The msim_avery.tcl script sets up the simulation environment, calling the Quartus® Prime-generated msim_setup.tcl script of the PCIe design example to compile and elaborate the PCIe design example files. It also calls the commands to compile the Avery testbench components integrated above, and runs the simulation.