Cyclone® V Avalon® Streaming (Avalon-ST) Interface for PCIe* Solutions User Guide
ID
683524
Date
6/02/2020
Public
1. Datasheet
2. Getting Started with the Cyclone V Hard IP for PCI Express
3. Parameter Settings
4. Interfaces and Signal Descriptions
5. Registers
6. Interrupts
7. Error Handling
8. IP Core Architecture
9. Transaction Layer Protocol (TLP) Details
10. Throughput Optimization
11. Design Implementation
12. Additional Features
13. Hard IP Reconfiguration
14. Transceiver PHY IP Reconfiguration
15. Testbench and Design Example
16. Debugging
A. Frequently Asked Questions for PCI Express
B. Lane Initialization and Reversal
C. Document Revision History
1.1. Cyclone V Avalon-ST Interface for PCIe Datasheet
1.2. Features
1.3. Release Information
1.4. Device Family Support
1.5. Configurations
1.6. Example Designs
1.7. Debug Features
1.8. IP Core Verification
1.9. Performance and Resource Utilization
1.10. Recommended Speed Grades
1.11. Creating a Design for PCI Express
2.1.1. Generating the Testbench
2.1.2. Simulating the Example Design
2.1.3. Generating Synthesis Files
2.1.4. Understanding the Files Generated
2.1.5. Understanding Physical Placement of the PCIe IP Core
2.1.6. Compiling the Design in the Quartus® Prime Software
Synopsys Design Constraints
Files Generated for Altera IP Cores
4.1. Clock Signals
4.2. Reset, Status, and Link Training Signals
4.3. ECRC Forwarding
4.4. Error Signals
4.5. Interrupts for Endpoints
4.6. Interrupts for Root Ports
4.7. Completion Side Band Signals
4.8. LMI Signals
4.9. Transaction Layer Configuration Space Signals
4.10. Hard IP Reconfiguration Interface
4.11. Power Management Signals
4.12. Physical Layer Interface Signals
15.6.1. ebfm_barwr Procedure
15.6.2. ebfm_barwr_imm Procedure
15.6.3. ebfm_barrd_wait Procedure
15.6.4. ebfm_barrd_nowt Procedure
15.6.5. ebfm_cfgwr_imm_wait Procedure
15.6.6. ebfm_cfgwr_imm_nowt Procedure
15.6.7. ebfm_cfgrd_wait Procedure
15.6.8. ebfm_cfgrd_nowt Procedure
15.6.9. BFM Configuration Procedures
15.6.10. BFM Shared Memory Access Procedures
15.6.11. BFM Log and Message Procedures
15.6.12. Verilog HDL Formatting Functions
15.7.1. Changing Between Serial and PIPE Simulation
15.7.2. Using the PIPE Interface for Gen1 and Gen2 Variants
15.7.3. Viewing the Important PIPE Interface Signals
15.7.4. Disabling the Scrambler for Gen1 and Gen2 Simulations
15.7.5. Disabling 8B/10B Encoding and Decoding for Gen1 and Gen2 Simulations
15.7.6. Changing between the Hard and Soft Reset Controller
2.1.6. Compiling the Design in the Quartus® Prime Software
To compile the Qsys design example in the Quartus® Prime software, you must create a Quartus® Prime project and add your Qsys files to that project.
Complete the following steps to create your Quartus® Prime project:
- Click the New Project Wizard icon.
- Click Next in the New Project Wizard: Introduction (The introduction does not appear if you previously turned it off)
- On the Directory, Name, Top-Level Entity page, enter the following information:
- The working directory shown is correct. You do not have to change it.
- For the project name, browse to the synthesis directory that includes your Qsys project, <working_dir>/pcie_de_gen1_x4_ast64/synthesis. Select your variant name, pcie_de_gen1_x4_ast64.v . Then, click Open.
- If the top‑level design entity and Qsys system names are identical, the Quartus® Prime software treats the Qsys system as the top‑level design entity.
- Click Next to display the Add Files page.
- Complete the following steps to add the Quartus® Prime IP File (.qip)to the project:
- Click the browse button. The Select File dialog box appears.
- In the Files of type list, select IP Variation Files (*.qip).
- Browse to the <working_dir>/pcie_de_gen1_x4_ast64/synthesis directory.
- Click pcie_de_gen1_x4_ast64.qip and then click Open.
- On the Add Files page, click Add, then click OK.
- Click Next to display the Device page.
- On the Family & Device Settings page, choose the following target device family and options:
- In the Family list, select Cyclone V (E/GX/GT/SX/SE/ST)
- In the Devices list, select Cyclone V GX Extended Features..
- In the Available Devices list, select 5CGXFC7D6F31C7.
- Click Next to close this page and display the EDA Tool Settings page.
- From the Simulation list, select ModelSim ®. From the Format list, select the HDL language you intend to use for simulation.
- Click Next to display the Summary page.
- Check the Summary page to ensure that you have entered all the information correctly.
- Click Finish to create the Quartus® Prime project.
- Add the Synopsys Design Constraint (SDC) commands shown in the following example to the top‑level design file for your Quartus® Prime project.
-
To compile your design using the Quartus® Prime software, on the Processing menu, click Start Compilation. The Quartus® Prime software then performs all the steps necessary to compile your design.
- After compilation, expand the TimeQuest Timing Analyzer folder in the Compilation Report. Note whether the timing constraints are achieved in the Compilation Report.
-
If your design does not initially meet the timing constraints, you can find the optimal Fitter settings for your design by using the Design Space Explorer. To use the Design Space Explorer, click Launch Design Space Explorer on the tools menu.
Synopsys Design Constraints
create_clock -period “100 MHz” -name {refclk_pci_express}{*refclk_*}
derive_pll_clocks
derive_clock_uncertainty
# PHY IP reconfig controller constraints
# Set reconfig_xcvr clock
# Modify to match the actual clock pin name
# used for this clock, and also changed to have the correct period set
create_clock -period "125 MHz" -name {reconfig_xcvr_clk}{*reconfig_xcvr_clk*}
# HIP Soft reset controller SDC constraints
set_false_path -to [get_registers* altpcie_rs_serdes|fifo_err_sync_r[0]]
set_false_path -from [get_registers *sv_xcvr_pipe_native*] -to[get_registers *altpcie_rs_serdes|*]
# Hard IP testin pins SDC constraints
set_false_path -from [get_pins -compatibilitly_mode *hip_ctrl*]
Files Generated for Altera IP Cores
Figure 7. IP Core Generated FilesThe Quartus® Prime software generates the following output for your IP core.
Note: By following these instructions you create all the files for simulation and synthesis. However, this design example does not generate all the files necessary to download the design example to hardware. Refer to AN 456 PCI Express High Performance Reference Design for a design that includes all files necessary to download your design to an Cyclone V FPGA Development Kit.
Related Information