This document provides examples for the NX testcase template Testcase Template using the argparser feature.
This template is used in the TrainingPackage testcases.
You can download the template using the following link
22.1.0.1-v0: 22.1.0.1-v0
22.3.0.2-v0: 22.3.0.2-v0
...
//Author : K.CHOPIER
//Company: NanoXplore
//Contact: support@nanoxplore.com
...
//Description
...
The aim of this package is to provide to NanoXplore user This package provides NanoXplore users with a script template in order to implement a design in a standard format.
The objective of the template is made to ease facilitate user implementation and ease help NX support to debug a project.
...
Code Block |
---|
nxpython_script.py : script to launch by nxpython nxpython_script.py <options> project_variables.py: all variables used for the test are defined. src : all needed RTL sources. sub_scripts : all needed python files to create the project. project_ios.py : defined banks voltages and pads configurations. project_files.py : defined RTL files. project_parameters.py : defined top generic parameters. project_options.py : defined NxPython options. project_constraints.py : defined constraints for synthesis or P&R. project_class.py : chip class. script.py : main script. [top_cell]_[variant](_[options]): created project once launched. logsPython : all logs and reports. *.nym : nxpython project files. *.vhd/*.v : netlists. *.sdf : Backannoted SDF files. bitstream.nxb : bitstream binary file. |
Multi Seed
Hereafter Here below is a shell script in order to launch a test with multiple seed seeds (random or user list)
Code Block |
---|
#!/bin/bash #1st arg: number of tests #2nd arg: "random"/"list" #Example 1: ./multi_seed.sh 3 random => Generates 3 tests with random values in range [1;10000] #Example 2: ./multi_seed.sh 5 list => Generates 2 tests with values in list seed_list nxpython_path=/home/groups/soft/nxdesignsuite/integration/nxmap-dbg/lastdevversion/lastdevbuild/bin/nxpython seed_list="13 19" for (( i=0; i< $1; i++)) do if [[ $2 == "random" ]] then seed=$(( RANDOM % 10000 )) $nxpython_path nxpython_script.py --seed $seed --suffix $seed elif [[ $2 == "list" ]] then seed_list_split=($seed_list) seed=${seed_list_split[$i]} $nxpython_path nxmap_script.py --seed $seed --suffix $seed else echo "Unrecognized mode $2. It must be random or list" fi done |
...