importing lvx ....
This commit is contained in:
parent
b0da3afe7a
commit
f1b6c69766
|
@ -0,0 +1,3 @@
|
||||||
|
## Process this file with automake to produce Makefile.in
|
||||||
|
|
||||||
|
SUBDIRS = doc src
|
|
@ -0,0 +1,33 @@
|
||||||
|
dnl Process this file with autoconf to produce a configure script.
|
||||||
|
AC_INIT(src/lvx.c)
|
||||||
|
|
||||||
|
LVX_MAJOR_VERSION=1
|
||||||
|
LVX_MINOR_VERSION=2
|
||||||
|
LVX_VERSION=$LVX_MAJOR_VERSION.$LVX_MINOR_VERSION
|
||||||
|
|
||||||
|
AC_SUBST(LVX_MAJOR_VERSION)
|
||||||
|
AC_SUBST(LVX_MINOR_VERSION)
|
||||||
|
AC_SUBST(LVX_VERSION)
|
||||||
|
|
||||||
|
# For automake.
|
||||||
|
VERSION=$LVX_VERSION
|
||||||
|
PACKAGE=lvx
|
||||||
|
|
||||||
|
dnl Initialize automake stuff
|
||||||
|
AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
|
||||||
|
|
||||||
|
dnl Checks for programs.
|
||||||
|
AC_PROG_CC
|
||||||
|
AC_PROG_RANLIB
|
||||||
|
AC_PROG_MAKE_SET
|
||||||
|
|
||||||
|
dnl Checks for typedefs, structures, and compiler characteristics.
|
||||||
|
AC_C_CONST
|
||||||
|
|
||||||
|
AM_ALLIANCE
|
||||||
|
|
||||||
|
AC_OUTPUT([
|
||||||
|
Makefile
|
||||||
|
doc/Makefile
|
||||||
|
src/Makefile
|
||||||
|
])
|
|
@ -0,0 +1,4 @@
|
||||||
|
## Process this file with automake to produce Makefile.in
|
||||||
|
|
||||||
|
man_MANS = lvx.1
|
||||||
|
EXTRA_DIST = $(man_MANS)
|
|
@ -0,0 +1,188 @@
|
||||||
|
.\" $Id: lvx.1,v 1.1 2002/03/20 17:07:59 xtof Exp $
|
||||||
|
.\" @(#)lvx.l 0.0 92/11/27 UPMC; Author: Francois Nacabal
|
||||||
|
.TH LVX 1 "October 1, 1997" "ASIM/LIP6" "ALLIANCE USER COMMANDS"
|
||||||
|
.SH NAME
|
||||||
|
lvx \- Logical Versus eXtracted net-list comparator
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.TP
|
||||||
|
\fBlvx \fIformat1 format2 filename1 filename2 \fB[ -a ] [ -o ] [ -f ]\fR
|
||||||
|
.br
|
||||||
|
.so man1/alc_origin.1
|
||||||
|
.SH DESCRIPTION
|
||||||
|
.B 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
|
||||||
|
.BR lynx (1)
|
||||||
|
extractor.
|
||||||
|
.br
|
||||||
|
The net-list 1 is considered as the logical net-list and net-list 2 as the
|
||||||
|
extracted net-list.
|
||||||
|
.br
|
||||||
|
.br
|
||||||
|
.B lvx
|
||||||
|
is an one-level hierarchical tool:
|
||||||
|
.IP
|
||||||
|
The two net-list are flattened, if the \fB-f\fP option is present, to the cells
|
||||||
|
contained in the catalog file. The path to the catalog file is indicated in the
|
||||||
|
.BR MBK_CATA_LIB (1)
|
||||||
|
variable for the cell library, and in the
|
||||||
|
.BR MBK_WORK_LIB (1)
|
||||||
|
variable with the name
|
||||||
|
.BR MBK_CATAL_NAME (1)
|
||||||
|
for user blocks (
|
||||||
|
.BR catal (5)
|
||||||
|
) that are not to be flattened.
|
||||||
|
.IP
|
||||||
|
For both net-list, the instances are considered as black-boxes.
|
||||||
|
.IP
|
||||||
|
The two net-list must have the same external connectors names.
|
||||||
|
.IP
|
||||||
|
The two net-list must have the same instances names.
|
||||||
|
.IP
|
||||||
|
The two net-list must have the same signals names for unconnected signals.
|
||||||
|
.IP
|
||||||
|
The two net-list cannot directly contain transistors.
|
||||||
|
.LP
|
||||||
|
Comparison is performed in three steps:
|
||||||
|
.IP
|
||||||
|
Compare terminals.
|
||||||
|
.IP
|
||||||
|
Compare instances.
|
||||||
|
.IP
|
||||||
|
Compare connections.
|
||||||
|
.IP
|
||||||
|
Compare unconnected signals.
|
||||||
|
.LP
|
||||||
|
If an error occurs during first or second step, a message is
|
||||||
|
immediately displayed and the third step will not start:
|
||||||
|
.B lvx
|
||||||
|
cannot compare connections (signals) if terminals
|
||||||
|
or instances are not equivalent.
|
||||||
|
.br
|
||||||
|
The
|
||||||
|
.B -o
|
||||||
|
option allows to order connectors if the steps described before have been
|
||||||
|
reached successfully.
|
||||||
|
.I Extracted_netlist
|
||||||
|
is then saved on disk. The file get the name
|
||||||
|
.I filename2
|
||||||
|
suffixed by the value of
|
||||||
|
.BR MBK_OUT_LO (1)
|
||||||
|
variable.
|
||||||
|
.br
|
||||||
|
Routers add automatically empty feed-through cells.
|
||||||
|
These cells must not be taken into account in the comparison.
|
||||||
|
A cell that have the
|
||||||
|
.I F
|
||||||
|
attribute in the catalog file (
|
||||||
|
.B catal (5)
|
||||||
|
) is considered as feed-through cell, and are deleted, in memory, from the
|
||||||
|
net-list where it appears.
|
||||||
|
.SH OPTIONS
|
||||||
|
.TP
|
||||||
|
.B "-a"
|
||||||
|
Some routers generate layout with several physical connectors for power and
|
||||||
|
ground (
|
||||||
|
.I VDD
|
||||||
|
or
|
||||||
|
.I VSS
|
||||||
|
).
|
||||||
|
If those connectors are not internally connected, they will have different
|
||||||
|
indexed names (
|
||||||
|
.I VDD1
|
||||||
|
,
|
||||||
|
.I 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
|
||||||
|
.I VDD
|
||||||
|
connector and one
|
||||||
|
.I VSS
|
||||||
|
connector, as the main figure.
|
||||||
|
.TP
|
||||||
|
.B "-o"
|
||||||
|
In this case,
|
||||||
|
.B lvx
|
||||||
|
produces a modified net-list (saved with the name
|
||||||
|
.I 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
|
||||||
|
.BR MBK_OUT_LO (1)
|
||||||
|
format, so user has to set this variable before running
|
||||||
|
.B 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.
|
||||||
|
.br
|
||||||
|
If -a option is used, then the saved net-list is the reduced net-list with only
|
||||||
|
one
|
||||||
|
.I VDD
|
||||||
|
and one
|
||||||
|
.I VSS
|
||||||
|
\&.
|
||||||
|
.TP
|
||||||
|
.B "-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.
|
||||||
|
.SH EXAMPLES
|
||||||
|
With
|
||||||
|
.I logical_netlist
|
||||||
|
named amd2901.vst and the corresponding
|
||||||
|
.I extracted_netlist
|
||||||
|
as amd2901.al containing multiple power connectors, the command line is :
|
||||||
|
.br
|
||||||
|
.IP
|
||||||
|
.B lvx
|
||||||
|
vst al amd2901 amd2901 -a
|
||||||
|
.br
|
||||||
|
.LP
|
||||||
|
.SH OUTPUT FILES
|
||||||
|
.TP 20
|
||||||
|
\fIfilename2\fP.\f4xx\fP
|
||||||
|
Netlist view saved when the \fB-o\fP option is present. The suffixe depend on
|
||||||
|
the \f4MBK_OUT_LO\fP(1) environment variable.
|
||||||
|
.SH ENVIRONMENT VARIABLES
|
||||||
|
.TP 20
|
||||||
|
\f4MBK_CATA_LIB\fR
|
||||||
|
contains the directories where the cell librtaries are.
|
||||||
|
\f4MBK_WORK_LIB\fR
|
||||||
|
contains the directory path of the working directory, usually set to
|
||||||
|
\f4.\fR (dot).
|
||||||
|
.TP
|
||||||
|
\f4MBK_OUT_LO\fR
|
||||||
|
contains the expected format of the netlist output.
|
||||||
|
.TP
|
||||||
|
\f4MBK_CATAL_NAME\fR
|
||||||
|
contains the name of the user cell catalog.
|
||||||
|
.SH SEE ALSO
|
||||||
|
.BR lynx (1),
|
||||||
|
.BR MBK_OUT_LO (1),
|
||||||
|
.BR MBK_WORK_LIB (1),
|
||||||
|
.BR MBK_CATA_LIB (1),
|
||||||
|
.BR MBK_CATAL_NAME (1),
|
||||||
|
.BR catal (5)
|
||||||
|
\&.
|
||||||
|
.SH DIAGNOSTICS
|
||||||
|
The string "_logic" is appended to the net-list 1 and the string "_extract", is
|
||||||
|
appended to the net-list 2.
|
||||||
|
.LP
|
||||||
|
Two kinds of error message can occur:
|
||||||
|
.IP
|
||||||
|
A fatal error causes the program to exit.
|
||||||
|
It happens when one of the net-lists is not correct,
|
||||||
|
.B lvx
|
||||||
|
cannot construct internal structure for compare.
|
||||||
|
.IP
|
||||||
|
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.
|
||||||
|
.LP
|
||||||
|
Exit code 0 is returned for identical net-lists.
|
||||||
|
|
||||||
|
.so man1/alc_bug_report.1
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
## Process this file with automake to produce Makefile.in
|
||||||
|
bin_PROGRAMS = lvx
|
||||||
|
|
||||||
|
lvx_LDADD = @LIBS@ \
|
||||||
|
-lMlu \
|
||||||
|
-lMcl \
|
||||||
|
-lMal \
|
||||||
|
-lMsl \
|
||||||
|
-lMel -lMgl \
|
||||||
|
-lMhl \
|
||||||
|
-lMvl \
|
||||||
|
-lMlo \
|
||||||
|
-lMut \
|
||||||
|
-lRcn
|
||||||
|
|
||||||
|
lvx_SOURCES = lvx.c
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue