Visible to Intel only — GUID: fcj1710203440685
Ixiasoft
2.1. Parameterizing the HPS Component
2.2. HPS-FPGA Interfaces
2.3. SDRAM
2.4. HPS Clocks, Reset, Power
2.5. I/O Delays
2.6. Pin Mux and Peripherals
2.7. Generating and Compiling the HPS Component
2.8. Using the Address Span Extender Component
2.9. Configuring the Agilex™ 5 Hard Processor System Component Revision History
2.2.1.1. Enable MPU Standby and Event Signals
2.2.1.2. Enable General Purpose Signals
2.2.1.3. Enable Debug APB* Interface
2.2.1.4. Enable System Trace Macrocell (STM) Hardware Events
2.2.1.5. Enable SWJ-DP JTAG Interface
2.2.1.6. Enable FPGA Cross Trigger Interface
2.2.1.7. Enable AMBA* Trace Bus (ATB)
3.1. Simulation Flows
3.2. Running the Simulation of the Design Examples
3.3. Clock and Reset Interface
3.4. FPGA-to-HPS AXI* Subordinate Interface
3.5. FPGA-to-SDRAM AXI* Subordinate Interface
3.6. HPS-to-FPGA AXI* Initiator Interface
3.7. Lightweight HPS-to-FPGA AXI* Initiator Interface
3.8. Simulating the Agilex™ 5 HPS Component Revision History
Visible to Intel only — GUID: fcj1710203440685
Ixiasoft
3.1.3.4. Synopsys* VCS* MX Simulation Steps
- Locate your top-level simulation model.
- You can locate it at <project directory>/<Platform Designer design name>/sim/.
- Use the name located from the previous step (step a) to replace the placeholder names TopLevel.v and TopLevel that are used in the following steps.
- Locate the Cadence® setup script.
- You can locate it at <project directory>/<Platform Designer design name>/sim/synopsys/vcsmx/.
- Locate vcsmx_setup.sh.
- For this example, the simulator is executed in the sim/synopsys directory where the vcsmx_setup.sh file is located. Change directory to the sim/synopsys/vcsmx directory:
cd <project directory>/<Platform Designer design name>/ \ sim/synopsys/vcsmx/
- Copy the vcsmx_setup.sh file to another file. For this exercise, it is called my_vcs_script.sh.
cp vcsmx_setup.sh my_vcsmx_script.sh
- In your my_vcsmx_script.sh file, delete everything except the section between the lines from "TOP-LEVEL TEMPLATE - BEGIN" to "TOP-LEVEL TEMPLATE - END".
- In your my_vcsmx_script.sh file, add additional libraries and flags by adding the following lines at the top of the file:
rm -rf csrc libraries simv simv.daidir transcript \ ucli.key vc_hdrs.h (optional) MVCHOME=<ACDS directory>/ip/altera/mentor_vip_ae/common/ export QUESTA_MVC_GCC_LIB=${MVCHOME}/questa_mvc_core/ \ linux_x86_64_gcc-6.2.0_vcs export LD_LIBRARY_PATH=${VCS_HOME}/gnu/linux/gcc-6.2.0/lib64
- Uncomment the first set of lines that source vcsmx_setup.sh in the template and modify to the following:
source vcsmx_setup.sh \ SKIP_ELAB=1 \ SKIP_SIM=1
- Uncomment and modify the vlogan line in the template:
vlogan ../../TopLevel.v
- After vlogan, export the LDFLAGS environment variable and pre-assign the elab options:
export LDFLAGS="-L ${QUESTA_MVC_GCC_LIB} -Wl,-rpath \ ${QUESTA_MVC_GCC_LIB} -laxi4_IN_SystemVerilog_VCS_full_DVC " USER_DEFINED_ELAB_OPTIONS="\" \ -full64 \ -timescale=1ns/1ns \ +vpi -debug_access+r+w+nomemcbk +vcs+lic+wait \""
- Uncomment the second set of lines that source vcsmx_setup.sh in the template and modify to the following:
source vcsmx_setup.sh \ SKIP_DEV_COM=1 \ SKIP_COM=1 \ USER_DEFINED_ELAB_OPTIONS="$USER_DEFINED_ELAB_OPTIONS" \ USER_DEFINED_SIM_OPTIONS="'-l transcript'" \ TOP_LEVEL_NAME="'TopLevel'"
- Save the my_vcsmx_script.sh file.
- Setup your developer environment with the proper resources. Refer to Synopsys* documentation for downloading, installing, and licensing.
- Run the simulation script:
sh my_vcsmx_script.sh
- The simulation is running without any errors. Since no testbench is added, it only shows that all the HPS IP simulation files were successfully compiled and elaborated.