Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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

...

//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

...