NAME¶
lvx - Logical Versus eXtracted net-list comparator
SYNOPSIS¶
- lvx format1 format2 filename1 filename2 [
-a ] [ -u ] [ -o ] [ -f ]
-
ORIGIN¶
This software belongs to the ALLIANCE CAD SYSTEM developed by the ASIM team at
LIP6 laboratory of Université Pierre et Marie CURIE, in Paris,
France.
Web :
http://asim.lip6.fr/recherche/alliance/
E-mail :
alliance-users@asim.lip6.fr
DESCRIPTION¶
lvx compares two gate-level or block level net-list. The goal is to
compare a specification net-list (logical net-list), the input to a place and
route tool, with the physical net-list (extracted net-list) obtained by the
cougar(1) extractor.
The net-list 1 is considered as the logical net-list and net-list 2 as the
extracted net-list.
lvx is an one-level hierarchical tool:
- The two net-list are flattened, if the -f option is
present, to the cells contained in the catalog file. The path to the
catalog file is indicated in the MBK_CATA_LIB(1) variable for the
cell library, and in the MBK_WORK_LIB(1) variable with the name
MBK_CATAL_NAME(1) for user blocks ( catal(5) ) that are not
to be flattened.
- For both net-list, the instances are considered as
black-boxes.
- The two net-list must have the same external connectors
names.
- The two net-list must have the same instances names.
- The two net-list must have the same signals names for
unconnected signals.
- The two net-list cannot directly contain transistors.
Comparison is performed in three steps:
- Compare terminals.
- Compare instances.
- Compare connections.
- Compare unconnected signals.
If an error occurs during first or second step, a message is immediately
displayed and the third step will not start:
lvx cannot compare
connections (signals) if terminals or instances are not equivalent.
The
-o option allows to order connectors if the steps described before
have been reached successfully.
Extracted_netlist is then saved on
disk. The file get the name
filename2 suffixed by the value of
MBK_OUT_LO(1) variable.
Routers add automatically empty feed-through cells. These cells must not be
taken into account in the comparison. A cell that have the
F attribute
in the catalog file (
catal (5) ) is considered as feed-through cell,
and are deleted, in memory, from the net-list where it appears.
OPTIONS¶
- -a
- Some routers generate layout with several physical
connectors for power and ground ( VDD or VSS ). If those
connectors are not internally connected, they will have different indexed
names ( VDD1 , VDD2 etc...) in the extracted net-list. It is
possible to perform reduction on those power and ground connectors before
comparison, using the -a option. After reduction, each instance contains
only one VDD connector and one VSS connector, as the main
figure.
- -o
- In this case, lvx produces a modified net-list
(saved with the name filename2 ), which is a copy of net-list 2
with ordered connectors. Terminals and instance connectors are relisted in
the order of the models in net-list 1. The saved net-list is done with the
MBK_OUT_LO(1) format, so user has to set this variable before
running lvx . If he does not, default value is used, and net-list 1
could be lost if filename are identical and input format same as output
format.
If -a option is used, then the saved net-list is the reduced net-list with
only one VDD and one VSS .
- -u
- This option force lvx to check the consistency of
unassigned signals between the two netlists.
- -f
- The two net-lists are flattened to the leaf cells contained
in the catalog file. Usually the extracted net-list is a flatten net-list,
while the logical one can be a hierarchical net-list.
EXAMPLES¶
With
logical_netlist named amd2901.vst and the corresponding
extracted_netlist as amd2901.al containing multiple power connectors,
the command line is :
- lvx vst al amd2901 amd2901 -a
OUTPUT FILES¶
- filename2.xx
- Netlist view saved when the -o option is present.
The suffixe depend on the MBK_OUT_LO(1) environment variable.
ENVIRONMENT VARIABLES¶
- MBK_CATA_LIB
- contains the directories where the cell librtaries are.
MBK_WORK_LIB contains the directory path of the working directory, usually
set to . (dot).
- MBK_OUT_LO
- contains the expected format of the netlist output.
- MBK_CATAL_NAME
- contains the name of the user cell catalog.
SEE ALSO¶
cougar(1),
MBK_OUT_LO(1),
MBK_WORK_LIB(1),
MBK_CATA_LIB(1),
MBK_CATAL_NAME(1),
catal(5) .
DIAGNOSTICS¶
The string "_logic" is appended to the net-list 1 and the string
"_extract", is appended to the net-list 2.
Two kinds of error message can occur:
- A fatal error causes the program to exit. It happens when
one of the net-lists is not correct, lvx cannot construct internal
structure for compare.
- A compare error occurs when the figures are not identical.
It happens when basic objects (instances, connectors) do not exist in both
net-list, or when connections (signals) do not connect same terminals or
instances in the two net-lists.
Exit code 0 is returned for identical net-lists.
BUG REPORT¶
This tool is under development at the
ASIM department of the
LIP6
laboratory.
We need your feedback to improve documentation and tools.