Performing Functional Simulation of the system created with Platform Designer in Riviera-PRO

Introduction

This document describes the steps required to run functional simulation of an Intel Platform Designer project (formerly Qsys) in Riviera-PRO. The Platform Designer System Design Tutorial is used to demonstrate the flow.

Requirements and Limitations

This application note assumes the following:

  1. You have the following software installed and licensed:

    • Intel Quartus® Prime Pro 23 or later and all necessary devices from Intel

    • Riviera-PRO 2023.10 or later

  2. You have downloaded the Platform Designer System Design Tutorial example (qsys_pro_tutorial_design_arria_10_17p0.zip) used in this application note. You can download it from the Platform Designer Tutorial Design Example web page.

Generating Design in Platform Designer

  1. Extract the qsys_pro_tutorial_design_arria_10_17p0.zip archive. This document will be using the C:\My_Designs location.

  2. Open the Quartus Prime Pro environment.

  3. Click the Open Project button visible on the Home page and pick the A10.qpf file from the main folder of the extracted archive.

    Figure 1. The Quartus Prime Pro environment.

  4. Open the Platform Designer by selecting the Platform Designer item from the Tasks pane to the left or the Tools menu.

  5. In the Open System window appearing on the Platform Designer startup, specify the pattern_generator_system.qsys file in the Platform Designer system field available in the System tab. Next, open the design with the Open button.

    Figure 2. The Open System window of the Platform Designer.

    NOTE: During opening, you will be asked to upgrade all the IP Cores used in the design to the newest versions. Confirm this operation when prompted and save the design after completion.

  6. From the Generate menu of the Main menu, pick the Generate HDL option. This will open the Generation window.

    Figure 3. The Platform Designer environment.

  7. In the Synthesis category of the Generation window, pick None in the Create HDL design files for synthesis list and clear all check boxes.

  8. In the Simulation category, pick Verilog from Create simulation model list and ensure that the Riviera-PRO check box is selected.

    Figure 4. The Generation window of the Platform Designer.

  9. Click the Generate button to begin the generation process.

  10. Once you generate the simulation models in Platform Designer, the rivierapro_setup.tcl script is generated in the Qsys_Pro_tutorial_design_Arria_10_17p0\pattern_generator_system\sim\aldec folder.

Running Simulation of Platform Designer Design

  1. Open Riviera-PRO. Change the location to point to the rivierapro_setup.tcl script. Execute the following command from the Console:

    cd C:/My_Designs/Qsys_Pro_tutorial_design_Arria_10_17p0/pattern_generator_system/sim/aldec
    

    Alternatively, you may also navigate using the Filesystem window.

    Figure 5. Accessing the Platform Designer script in Riviera-PRO.

  2. Double-click rivierapro_setup.tcl in the Filesystem window to open the script in the HDL Editor window.

    This script sets up all necessary environment variables and declares the aliases that compile required libraries, compile design files, and initialize simulation. The script can be executed as is, or you can modify any of the aliases according to your needs. The table below provides the description of the alias commands:

    Alias

    Description

    dev_com

    Compiles device library files.

    com

    Compiles design files.

    elab

    Elaborates the top level design and initializes simulation. The top level design is defined in the script by the TOP_LEVEL_NAME variable.

    elab_debug

    Elaborates the top level design with optimizations disabled (-dbg and -o2 are passed to asim) and initializes simulation.

    ld

    Compiles all libraries and design files, elaborates the top level design, and initializes simulation.

    ld_debug

    Compiles all libraries and design files, elaborates the top level design, and initializes simulation with optimizations disabled (-dbg and -o2 are passed).

    Table 1. Aliases defined in the rivierapro_setup.tcl script.

  3. Run the script. Execute the following command from the Console:

    do rivierapro_setup.tcl
    

    Once the script is executed, the new design will be created and activated.

    Figure 6. The system created with Platform Designer loaded into Riviera-PRO.

  4. Execute the dev_com command from the Console.

    NOTE: If you have already Intel libraries installed, you can skip this step. However you may need to detach the local and empty versions of the below libraries to ensure visibility of the global libraries. This can be done with the Detach option accessible from the context menu of the Library Manager window.

    This will compile the below libraries:

    • altera, altera_ver

    • altera_lnsim, altera_lnsim_ver

    • altera_mf, altera_mf_ver

    • lpm, lpm_ver

    • sgate, sgate_ver

    • twentynm, twentynm_ver

    • twentynm_hip, twentynm_hip_ver

    • twentynm_hssi, twentynm_hssi_ver

  5. Execute the com command from the Console. This will compile design source files.

  6. Execute the elab command from the Console. This will initialize the simulation.

  7. Run the simulation by executing the run 40us command from the Console.

Conclusion

Intel Platform Designer projects can be successfully simulated in Riviera-PRO. To get detailed information about creating a system with Intel Platform Designer, refer to the following link:

https://www.intel.com/content/www/us/en/docs/programmable/683364/18-1/creating-a-system-with.html

If you have difficulty simulating the Platform Designer project in Riviera-PRO, please contact Aldec Support via customer portal

Ask Us a Question
x
Ask Us a Question
x
Captcha ImageReload Captcha
Incorrect data entered.
Thank you! Your question has been submitted. Please allow 1-3 business days for someone to respond to your question.
Internal error occurred. Your question was not submitted. Please contact us using Feedback form.
We use cookies to ensure we give you the best user experience and to provide you with content we believe will be of relevance to you. If you continue to use our site, you consent to our use of cookies. A detailed overview on the use of cookies and other website information is located in our Privacy Policy.