Testcase Template - User Guide

This document provides examples for the NX Testcase Template using the argparser feature.


//Author : K.CHOPIER
//Company: NanoXplore
//Contact: support@nanoxplore.com



//Description


This package provides NanoXplore users with a script template to implement a design in a standard format.
The objective of the template is to facilitate user implementation and help NX support to debug a project.


//Commands


//Commands to manage package

nxpython nxmap_script.py -h : get help nxpython nxmap_script.py -i : get info about default values and allowed values nxpython nxmap_script.py -c : clean directory removing all generated directories and files nxpython nxmap_script.py -a : create a zip file of this archive after cleaning it

//Commands to launch test:

nxpython nxpython_script.py --variant NG-LARGE : Launch the script for NG-LARGE variant nxpython nxpython_script.py --variant NG-LARGE --argument USE_DSP : Launch the script for NG-LARGE variant with argument "USE_DSP" which is used in sub_scripts nxpython nxpython_script.py --variant NG-LARGE --progress_start synthesized2 --progress_stop placed5 : Launch the script for NG-LARGE variant reloading synthesizing 2nd step project from previous run and stop at placing 5th step nxpython nxpython_script.py --variant NG-LARGE --suffix try_1 : Launch the script for NG-LARGE variant adding a suffix in the project name. Useful in case of multiple tries changing scripts. nxpython nxpython_script.py --variant NG-LARGE --topcellname switch_counter --topcelllib work : Launch the script for NG-LARGE variant for a different top cell than the default one. Useful in case of unitary run before top run nxpython nxpython_script.py --variant NG-LARGE --timingdriven Yes : Launch the script for NG-LARGE variant with TimingDriven enabled nxpython nxpython_script.py --variant NG-LARGE --seed 3557 : Launch the script for NG-LARGE variant with a different seed nxpython nxpython_script.py --variant NG-LARGE --sta placed1_routed3 --stacondition typical_worstcase : Launch the script for NG-LARGE variant generating sta after Prepared and Routed steps in typical and worstcase conditions nxpython nxpython_script.py --variant NG-LARGE --bitstream Yes : Launch the script for NG-LARGE variant generating a bitstream at the end nxpython nxpython_script.py --variant NG-LARGE --options RoutingEffort.Low_MappingEffort.Medium : Launch the script for NG-LARGE variant with nxmap options RoutingEffort set to Low and MappingEffort set to Medium nxpython nxpython_script.py --variant NG-LARGE --constraints No : Launch the script for NG-LARGE variant without any synthesis, placing or routing constraints defined in project.constraints.py nxpython nxpython_script.py --variant NG-LARGE --save_inputs Yes : Launch the script for NG-LARGE variant copying src/ and sub_scripts/ in project directory

//Tree


//Input folders and files

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

Here below is a shell script to launch a test with multiple seeds (random or user list)

 

© NanoXplore 2022