Visible to Intel only — GUID: ndg1634147400437
Ixiasoft
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 TLP Bypass Mode
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. Interrupt Interface
4.3.4. Hard IP Reconfiguration Interface
4.3.5. Error Interface
4.3.6. Completion Timeout Interface
4.3.7. Configuration Intercept Interface
4.3.8. Power Management Interface
4.3.9. Hard IP Status Interface
4.3.10. Page Request Services (PRS) Interface (Endpoint Only)
4.3.11. Function-Level Reset (FLR) Interface (Endpoint Only)
4.3.12. SR-IOV VF Error Flag Interface (Endpoint Only)
4.3.13. 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 Management (PTM)
Visible to Intel only — GUID: ndg1634147400437
Ixiasoft
6.1.1. Using the Hard IP Reconfiguration Interface to Enable and Read ECRC and LCRC Error Counts
Offset | Bit Positions | Register | ||
---|---|---|---|---|
x16 | x8 | x4 | ||
0x0000_0119 | 0x0000_0119 | 0x0000_0119 | [0] | Register: AER_CAP/ADV_ERR_CAP_CTRL_OFF Field: ECRC_CHECK_EN |
0x0000_036C | 0x0000_032C | 0x0000_02D4 | [1:0] | Set to 2'b11 to clear the counters. |
[4:2] | Set to 3'b111 to enable the counters. | |||
0x0000_036D | 0x0000_032D | 0x0000_02D5 | [7:0] | Set to 0x00. Reserved. |
0x0000_036E | 0x0000_032E | 0x0000_02D6 | [7:0] | Event Number. For LCRC error count, set to 0x01. For ECRC error count, set to 0x02. |
0x0000_036F | 0x0000_032F | 0x0000_02D7 | [7:0] | Group Number. For LCRC error count, set to 0x02. For ECRC error count, set to 0x03. |
0x0000_0370 | 0x0000_0330 | 0x0000_02D8 | [7:0] | Error counter data bits [7:0]. |
0x0000_0371 | 0x0000_0331 | 0x0000_02D9 | [7:0] | Error counter data bits [15:8]. |
0x0000_0372 | 0x0000_0332 | 0x0000_02DA | [7:0] | Error counter data bits [23:16]. |
0x0000_0373 | 0x0000_0333 | 0x0000_02DB | [7:0] | Error counter data bits [31:24]. |
Follow the steps below to access registers in the table above using the Hard IP reconfiguration interface:
- Enable the Hard IP reconfiguration interface using the IP Parameter Editor.
- Enable CRC checking in the register AER_CAP/ADV_ERR_CAP_CTRL_OFF.
- Set the group number and event number.
- Enable the counters.
- Read the counter data.
Below is an example to enable the counter for the LCRC:
- Enable the Hard IP reconfiguration interface using the IP Parameter Editor.
- Enable CRC checking by performing a read-modify-write to the ECRC_CHECK_EN field within the register AER_CAP/ADV_ERR_CAP_CTRL_OFF.
- p0_hip_reconfig_write = 1’b1
- p0_hip_reconfig_address[31:0] = 0x0000_0119
- p0_hip_reconfig_writedata[7:0] = 8'h01
- Perform read-modify-write to address 0x0000_036F to set Group Number to 0x2.
- p0_hip_reconfig_write = 1’b1
- p0_hip_reconfig_address[31:0] = 0x0000_036F
- p0_hip_reconfig_writedata[7:0] = 8'h02
- Perform read-modify-write to address 0x0000_036E to set Event Number to 0x1.
- p0_hip_reconfig_write = 1’b1
- p0_hip_reconfig_address[31:0] = 0x0000_036E
- p0_hip_reconfig_writedata[7:0] = 8'h01
- Perform read-modify-write to address 0x0000_036D with 0x0.
- p0_hip_reconfig_write = 1’b1
- p0_hip_reconfig_address[31:0] = 0x0000_036D
- p0_hip_reconfig_writedata[7:0] = 8'h00
- Perform read-modify-write to address 0x0000_036C to set Enable Event Counter.
- p0_hip_reconfig_write = 1’b1
- p0_hip_reconfig_address[31:0] = 0x0000_036C
- p0_hip_reconfig_writedata[7:0] = 8'h1C
- Read the error counter data by performing a read operation from registers 0x0000_0370, 0x0000_0371, 0x0000_0372, and 0x0000_0373.