genscan - scan path generator
This software belongs to the ALLIANCE CAD system from the CAO-VLSI team at
ASIM/LIP6/UPMC laboratory.
LIP6/ASIM
University P. et M. Curie
4, place Jussieu
75252 PARIS Cedex 05
FRANCE
Fax : {33/0} 1.44.27.62.86
E-mail support : alliance-support@asim.lip6.fr
genscan source target [options]
genscan is an automatic scan architecture generator for gate level netlists. The input netlist must be a sequential one with no scan-path or a complete and unique scan-path.genscan can add a full or a partial scanpath.
1/ input netlist
The source file describes the input net-list.
genscan supports sequential D flip-flop based net-lists. For this release
the input netlist must be a gate level netlist. The netlist format can be
: structural VHDL, EDIF, or ALLIANCE internal format according to the
environment variable MBK_IN_LO.
2/ output netlist
The generated file containing the netlist with scan_path will have the
name target. The output format is defined by the environment variable
MBK_OUT_LO.
The scan-path architecture generation can be used in two ways. The first
method consists of changing all the D flip-flop instances of the netlist
with scannable ones to build a scan-path . The second one, consist on
changing the order of an existant scan-path .
Some new signals may be added to the circuit interface. For sequential
circuits with no scan-path we have three new signals, a scan input, a scan
output, and a test signal. The test is used to select the scan-path mode
or the functional mode. For sequential circuits with already existing
scan-path or already declared scan signals no signals are added.
A full or a partial scan-path can be added to a sequential netlist , the
optiona -s ScanOrder file gives the way in which memory cells will be
ordered in the scan-path. The order of the scan_path can be specified
using the register identifiers (instance name), if the registers names are
indexed using the underscore character and a number ( for example : regis_ter_12
), the order is the growing way of the registers index. The scanpath
default order is the random one.
genscan
relies on the proper setting of the following environment variables.
The first set of environment variables sets the MBK environment.
The second set gives the names of special signals if they exist or if they
must be added on the interface.The last set of environment variables give
the names of D flip-flop and scannable D flip-flop models.
SCIN
SCOUT
TEST
CLOCK
DFF
SCAN
_DFF
To use genscan, some environment variables must be set :
If the ALLIANCE format is used, the user must have the following environment:
MBK_CATA_LIB =/labo/cells/sclib
MBK_IN_LO =vst
MBK_OUT_LO =vst
MBK_WORK_LIB =.
MBK_VDD =vdd
MBK_VSS =vss
According to the netlist we have for example the following environement
variables:
SCIN =scin
SCOUT =scout
TEST =test
CLOCK =clk
For using sclib library we have:
DFF =ms_y:i:l:t
SCAN_DFF =ms2_y:di:si:se:l:t
genscan automate automate_scan
The input netlist will be the file automate.vst
The resulting file will be automate_scan.vst
genscan ctrl ctrl_scan -s order
This command allows to add a scan path to the circuit called ctrl
with the order defined by the input file order , the result netlist
is ctrl_scan.The content of the file order is:
state_0
state_2
state_1
state_3
The memory cell state_0 will be the first cell in the scan-path and
the cell satate_3 is the last one.
1/ Model ... not found !!
The model defined by an environment variable doesn't exist in the library.
2/ Connector names discrepency on model ... When the connectors names of a defined model ( defined by the environment variable) are different from those of the model in the library.
3/ Can't extract scan-path
There is no active path between scan input and scan output signals.
This tool is under development at the ASIM/LIP6/UPMC laboratory, cao-vlsi
research team.
We need your feedbak to improve documentation and tools.
If you find bugs, please fill-in the form at
http://asim.lip6.fr/alliance/support/bug-report/
Thanks for doing this.