Visible to Intel only — GUID: yfm1538517983772
Ixiasoft
1. About the P-tile Avalon® Intel® FPGA IPs for PCI Express
2. IP Architecture and Functional Description
3. Advanced Features
4. Interfaces
5. Parameters
6. Testbench
7. Troubleshooting/Debugging
8. Intel® P-tile Avalon® Streaming IP for PCI Express* User Guide Archives
9. Document Revision History for the P-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 TLP Bypass Mode
E. Using the Avery BFM for Intel P-Tile PCI Express Gen4 x16 Simulations
F. Bifurcated Endpoint Support for Independent Warm Resets
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.1. Overview
4.2. Clocks and Resets
4.3. Serial Data Interface
4.4. Avalon-ST Interface
4.5. Hard IP Status Interface
4.6. Interrupt Interface
4.7. Error Interface
4.8. Hot Plug Interface (RP Only)
4.9. Power Management Interface
4.10. Configuration Output Interface
4.11. Configuration Intercept Interface (EP Only)
4.12. Hard IP Reconfiguration Interface
4.13. PHY Reconfiguration Interface
4.14. Page Request Service (PRS) Interface (EP Only)
4.4.1. TLP Header and Data Alignment for the Avalon-ST RX and TX Interfaces
4.4.2. Avalon® -ST RX Interface
4.4.3. Avalon® -ST RX Interface rx_st_ready Behavior
4.4.4. RX Flow Control Interface
4.4.5. Avalon® -ST TX Interface
4.4.6. Avalon® -ST TX Interface tx_st_ready Behavior
4.4.7. TX Flow Control Interface
4.4.8. Tag Allocation
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) Capabilities
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
6.3.5.1. ebfm_barwr Procedure
6.3.5.2. ebfm_barwr_imm Procedure
6.3.5.3. ebfm_barrd_wait Procedure
6.3.5.4. ebfm_barrd_nowt Procedure
6.3.5.5. ebfm_cfgwr_imm_wait Procedure
6.3.5.6. ebfm_cfgwr_imm_nowt Procedure
6.3.5.7. ebfm_cfgrd_wait Procedure
6.3.5.8. ebfm_cfgrd_nowt Procedure
6.3.5.9. BFM Configuration Procedures
6.3.5.10. BFM Shared Memory Access Procedures
6.3.5.11. BFM Log and Message Procedures
6.3.5.12. Verilog HDL Formatting Functions
6.3.5.11.1. ebfm_display Verilog HDL Function
6.3.5.11.2. ebfm_log_stop_sim Verilog HDL Function
6.3.5.11.3. ebfm_log_set_suppressed_msg_mask Task
6.3.5.11.4. ebfm_log_set_stop_on_msg_mask Verilog HDL Task
6.3.5.11.5. ebfm_log_open Verilog HDL Function
6.3.5.11.6. ebfm_log_close Verilog HDL Function
A.3.1. Intel-Defined VSEC Capability Header (Offset 00h)
A.3.2. Intel-Defined Vendor Specific Header (Offset 04h)
A.3.3. Intel Marker (Offset 08h)
A.3.4. JTAG Silicon ID (Offset 0x0C - 0x18)
A.3.5. User Configurable Device and Board ID (Offset 0x1C - 0x1D)
A.3.6. General Purpose Control and Status Register (Offset 0x30)
A.3.7. Uncorrectable Internal Error Status Register (Offset 0x34)
A.3.8. Uncorrectable Internal Error Mask Register (Offset 0x38)
A.3.9. Correctable Internal Error Status Register (Offset 0x3C)
A.3.10. Correctable Internal Error Mask Register (Offset 0x40)
Visible to Intel only — GUID: yfm1538517983772
Ixiasoft
1.2. Features
The P-tile Avalon® streaming IP for PCI Express* supports the following features:
PCIe* Features:
- Complete protocol stack including the Transaction, Data Link, and Physical Layers implemented as a Hard IP.
- Configurations supported:
Table 1. Configurations Supported by the P-Tile Avalon® streaming IP for PCI Express Gen3/Gen4 1x16 Gen3/Gen4 1x8 Gen3/Gen4 2x8 Gen3/Gen4 4x4 Endpoint (EP) Yes Yes Yes N/A Root Port (RP) Yes N/A N/A Yes TLP Bypass Yes N/A Yes Yes Note: The addition of the Gen3/Gen4 1x8 modes allows for some power saving.Note: Gen1/Gen2 configurations are supported via link down-training. - Static port bifurcation (four x4s Root Port, two x8s Endpoint).
- Supports TLP Bypass mode.
- Supports one x16, two x8, or four x4 interfaces.
Note: The 1x8 configuration is only available in Endpoint mode.
- Supports upstream/downstream TLP bypass mode.
- Supports one x16, two x8, or four x4 interfaces.
- Supports up to 512-byte maximum payload size (MPS).
- Supports up to 4096-byte (4 KB) maximum read request size (MRRS).
- Single Virtual Channel (VC).
- Page Request Services (PRS).
- Completion Timeout Ranges.
- Atomic Operations (FetchAdd/Swap/CAS).
- Extended Tag Support.
- 10-bit Tag Support (Port 0 x16 Controller only)
- Separate Refclk with Independent Spread Spectrum Clocking (SRIS).
- Separate Refclk with no Spread Spectrum Clocking (SRNS).
- Common Refclk architecture.
- PCI Express* Advanced Error Reporting (PF only).
Note: Advanced Error Reporting is always enabled in the P-Tile Avalon® streaming IP for PCIe.
- ECRC generation and checking.
- Data bus parity protection.
- Supports D0 and D3 PCIe power states.
- Lane Margining at Receiver.
- Retimers presence detection.
Multifunction and Virtualization Features:
- SR-IOV support (8 PFs, 2K VFs per each Endpoint).
- Access Control Service (ACS) capability.
Note: For ACS, only ports 0 and 1 are supported.
- Alternative Routing-ID Interpretation (ARI).
- Function Level Reset (FLR).
- TLP Processing Hint (TPH).
Note: TPH supports the "No Steering Tag (ST)" mode only.
- Address Translation Services (ATS). (For more information, refer to Implementation of Address Translation Services (ATS) in Endpoint Mode).
- Process Address Space ID (PasID).
- Configuration Intercept Interface (CII).
User Interface Features:
- User packet interface with separate header, data and prefix.
- User packet interface with a split-bus architecture where the header, data and prefix busses consist of two segments each (1x16 Hard IP mode only). This improves the bandwidth efficiency of this interface as it can handle up to 2 TLPs in any given cycle.
- Maximum numbers of outstanding Non-Posted requests (NPRs) supported when 8-bit tags or 10-bit tags are enabled are summarized in the table below:
Table 2. Outstanding Non-Posted Requests Supported Ports Active Cores 8-bit Tags 10-bit Tags 0 x16 256 512 (*) 1 x8 256 N/A 2 and 3 x4 256 N/A Note: (*): Use tags 256 to 767. - Completion timeout interface.
- The PCIe Hard IP can optionally track outgoing non-posted packets to report completion timeout information to the application.
- You cannot change the pin allocations for the P-Tile Avalon® streaming IP for PCI Express* in the Intel® Quartus® Prime project. However, this IP does support lane reversal per port (x16, x8 or x4) and polarity inversion on the PCB by default.
- Supports Autonomous Hard IP mode.
- This mode allows the PCIe Hard IP to communicate with the Host before the FPGA configuration and entry into User mode are complete.
Note: Unless Readiness Notifications mechanisms are used, the Root Complex or system software must allow at least 1.0 s after a Conventional Reset of a device before it may determine that a device that fails to return a Successful Completion status for a valid Configuration Request is a broken device. This period is independent of how quickly Link training completes.
- This mode allows the PCIe Hard IP to communicate with the Host before the FPGA configuration and entry into User mode are complete.
- FPGA core configuration via PCIe link (CvP Init and CvP Update).
Note: CvP Init and CvP Update are available for Intel® Stratix® 10 DX devices. For Intel® Agilex™ devices, CvP Init is available, and CvP Update will be available in a future Intel® Quartus® Prime release.Note: For Gen3 and Gen4 x16 variants, Port 0 (corresponding to lanes 0 - 15) supports the CvP features. For Gen3 and Gen4 x8 variants, only Port 0 (corresponding to lanes 0 - 7) supports the CvP features. Port 1 (corresponding to lanes 8 - 15) does not support CvP.
- Device-dependent PLD clock (coreclkout_hip) frequency.
- 350 MHz / 400 MHz / 450 MHz for Intel® Stratix® 10 DX devices, 350 MHz / 400 MHz / 450 MHz / 500 MHz for Intel® Agilex™ devices.
- P-Tile Debug Toolkit including the following features:
- Protocol and link status information.
- Basic and advanced debugging capabilities including PMA register access and Eye viewing capability.
- Riviera*, Siemens EDA QuestaSim* and VCS* are the simulators supported in the 22.2 release of Intel® Quartus® Prime. Other simulators may be supported in a future release.
Note: Throughout this User Guide, the term Avalon-ST may be used as an abbreviation for the Avalon® streaming interface or IP.