Mise a jour des manuels du transistor:
- ajout d'une quatrieme patte bulk explicite - ajout des types FAST et HVIO pour les transistors N et P - ajout d'un nom d'instance - ajout du manuel de getlotrs
This commit is contained in:
parent
08440e5dbd
commit
a26e6a86f7
|
@ -1,4 +1,4 @@
|
|||
.\" $Id: addlotrs.3,v 1.1 2002/03/08 13:51:01 fred Exp $
|
||||
.\" $Id: addlotrs.3,v 1.2 2002/08/06 14:17:24 pnt Exp $
|
||||
.\" @(#)addlotrs.2 2.11 91/08/22 ; Labo masi cao-vlsi; Author : Frederic Petrot
|
||||
.if t \{\
|
||||
.so man1/alc_contents.mac
|
||||
|
@ -10,7 +10,7 @@ addlotrs
|
|||
.ti 0.2i
|
||||
addlotrs
|
||||
.XE2 \}
|
||||
.TH ADDLOTRS 3 "October 1, 1997" "ASIM/LIP6" "MBK LOGICAL FUNCTIONS"
|
||||
.TH ADDLOTRS 3 "August 6, 2002" "ASIM/LIP6" "MBK LOGICAL FUNCTIONS"
|
||||
.SH NAME
|
||||
addlotrs \- create a logical transistor
|
||||
.so man1/alc_origin.1
|
||||
|
@ -24,14 +24,15 @@ addlotrs \- create a logical transistor
|
|||
#include "mlo.3"
|
||||
lotrs_list \(**addlotrs(ptfig, type, x, y, width, length,
|
||||
ps, pd, xs, xd,
|
||||
ptgrid, ptsource, ptdrain)
|
||||
ptgrid, ptsource, ptdrain, ptbulk, name)
|
||||
lofig_list \(**ptfig;
|
||||
char type;
|
||||
long x, y;
|
||||
unsigned short width, length;
|
||||
unsigned short ps, pd;
|
||||
unsigned short xs, xd;
|
||||
losig_list \(**ptgrid, \(**ptsource, \(**ptdrain;
|
||||
losig_list \(**ptgrid, \(**ptsource, \(**ptdrain, \(**ptbulk;
|
||||
const char \(**name;
|
||||
.ft R
|
||||
.fi
|
||||
.SH PARAMETERS
|
||||
|
@ -63,12 +64,18 @@ Pointer to the signal to be connected on the transistor source
|
|||
.TP
|
||||
\fIptdrain\fP
|
||||
Pointer to the signal to be connected on the transistor drain
|
||||
.TP
|
||||
\fIptbulk\fP
|
||||
Pointer to the signal to be connected on the transistor bulk
|
||||
.TP
|
||||
\fIname\fP
|
||||
Transistor instance name
|
||||
.SH DESCRIPTION
|
||||
\fBaddlotrs\fP creates a new transistor, and adds it to the
|
||||
list of transistors pointed to by \fIptfig\->LOTRS\fP. The new transistor is
|
||||
added in front of the list, and becomes itself the list head.
|
||||
.br
|
||||
The \fItype\fP parameter can take two values :
|
||||
The \fItype\fP parameter can take six values :
|
||||
.RS
|
||||
.TP 20
|
||||
\fBTRANSN\fP
|
||||
|
@ -76,6 +83,18 @@ for a N channel transistor
|
|||
.TP
|
||||
\fBTRANSP\fP
|
||||
for a P channel transistor
|
||||
.TP
|
||||
\fBTRANSN_FAST\fP
|
||||
for a high speed N channel transistor
|
||||
.TP
|
||||
\fBTRANSP_FAST\fP
|
||||
for a high speed P channel transistor
|
||||
.TP
|
||||
\fBTRANSN_HVIO\fP
|
||||
for a low leakage N channel transistor
|
||||
.TP
|
||||
\fBTRANSP_HVIO\fP
|
||||
for a low leakage P channel transistor
|
||||
.RE
|
||||
.LP
|
||||
The \fIx\fP, \fIy\fP, \fIwidth\fP , \fIlength\fP, \fIps\fP, \fIpd\fP,
|
||||
|
@ -83,10 +102,10 @@ The \fIx\fP, \fIy\fP, \fIwidth\fP , \fIlength\fP, \fIps\fP, \fIpd\fP,
|
|||
respectivly the \fIX\fP, \fIY\fP, \fIWIDTH\fP, \fILENGTH\fP, \fIPS\fP,
|
||||
\fIPD\fP, \fIXS\fP and \fIXD\fP fields.
|
||||
.br
|
||||
Three connectors are created each time a transistor is added, and the
|
||||
\fIptgrid\fP, \fIptsource\fP and \fIptdrain\fP \fBlosig\fPs are attached to
|
||||
Four connectors are created each time a transistor is added, and the
|
||||
\fIptgrid\fP, \fIptsource\fP, \fIptdrain\fP and \fIptbulk\fP \fBlosig\fPs are attached to
|
||||
the \fISIG\fP field of the \fBlocon\fP of the appropriate connector. The
|
||||
connectors names are \fIgrid\fP, \fIsource\fP and \fIdrain\fP, their
|
||||
connectors names are \fIgrid\fP, \fIsource\fP, \fIdrain\fP and \fIbulk\fP, their
|
||||
direction, \fIDIR\fP, are set to \fB'T'\fP, and their \fITYPE\fP \fBINTERNAL\fP.
|
||||
For details on the structures, see \fBlocon\fP(3) and \fBlotrs\fR(3).
|
||||
.SH RETURN VALUE
|
||||
|
@ -118,8 +137,8 @@ losig_list \(**in, \(**out, \(**vdd, \(**vss;
|
|||
addlocon(pt, "out", out = givelosig(pt, 1), OUT);
|
||||
addlocon(pt, "vdd", vdd = givelosig(pt, 2), IN);
|
||||
addlocon(pt, "vss", vdd = givelosig(pt, 3), IN);
|
||||
addlotrs(pt, TRANSN, 0, 0, 6, 1, in, vss, out);
|
||||
addlotrs(pt, TRANSP, 0, 0, 12, 1, in, vdd, out);
|
||||
addlotrs(pt, TRANSN, 0, 0, 6, 1, in, vss, out, vss, trn_n1_y);
|
||||
addlotrs(pt, TRANSP, 0, 0, 12, 1, in, vdd, out, vdd, trp_n1_y);
|
||||
}
|
||||
.ft R
|
||||
.fi
|
||||
|
|
|
@ -0,0 +1,76 @@
|
|||
.\" $Id: getlotrs.3,v 1.1 2002/08/06 14:17:24 pnt Exp $
|
||||
.\" @(#)getlotrs.2 2.11 91/08/22 ; Labo ASIM cao-vlsi; Author : Pierre Nguyen Tuong
|
||||
.if t \{\
|
||||
.so man1/alc_contents.mac
|
||||
.XS \n%
|
||||
.ti 0.2i
|
||||
getlotrs
|
||||
.XE
|
||||
.XS2 \n%
|
||||
.ti 0.2i
|
||||
getlotrs
|
||||
.XE2 \}
|
||||
.TH GETLOTRS 3 "August 6, 2002" "ASIM/LIP6" "MBK LOGICAL FUNCTIONS"
|
||||
.SH NAME
|
||||
getlotrs \- retrieve a logical transistor
|
||||
.so man1/alc_origin.1
|
||||
.SH SYNOPSYS
|
||||
.nf
|
||||
.if n \{\
|
||||
.ft B \}
|
||||
.if t \{\
|
||||
.ft CR \}
|
||||
#include "mlo.h"
|
||||
lotrs_list \(**getlotrs(ptfig, name)
|
||||
lofig_list \(**ptfig;
|
||||
const char \(**name;
|
||||
.ft R
|
||||
.fi
|
||||
.SH PARAMETERS
|
||||
.TP 20
|
||||
\fIptfig\fP
|
||||
Pointer to the figure in which the transistor should be seeked
|
||||
.TP
|
||||
\fIname\fP
|
||||
Instance name of the transistor
|
||||
.SH DESCRIPTION
|
||||
\fBgetlotrs\fP looks in the list of transistors of the logical model pointed
|
||||
to by \fIptfig\fP for a transistor identified by its instance \fIname\fP.
|
||||
.SH RETURN VALUE
|
||||
\fBgetlotrs\fP returns a pointer to the given transistor.
|
||||
.SH ERRORS
|
||||
.if n \{\
|
||||
.ft B \}
|
||||
.if t \{\
|
||||
.ft CR \}
|
||||
"\(**\(**\(** mbk error \(**\(**\(** getlotrs impossible :
|
||||
transistor \fIname\fP doesn't exist in figure \fIptfig\->NAME\fP"
|
||||
.ft R
|
||||
.RS
|
||||
No transistor matches the name.
|
||||
.RE
|
||||
.SH EXAMPLE
|
||||
.ta 3n 6n 9n 12n 15n 18n 21n
|
||||
.nf
|
||||
.if n \{\
|
||||
.ft B \}
|
||||
.if t \{\
|
||||
.ft CR \}
|
||||
#include "mlo.h"
|
||||
lotrs_list \(**exist(figname, trsname)
|
||||
char \(**figname, \(**trsname;
|
||||
{
|
||||
return getlotrs(getlofig(figname), trsname);
|
||||
}
|
||||
.ft R
|
||||
.fi
|
||||
.SH SEE ALSO
|
||||
.BR mbk (1),
|
||||
.BR lofig (3),
|
||||
.BR lotrs (3),
|
||||
.BR addlotrs (3),
|
||||
.BR dellotrs (3).
|
||||
|
||||
|
||||
.so man1/alc_bug_report.1
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
.\" $Id: lotrs.3,v 1.1 2002/03/08 13:51:03 fred Exp $
|
||||
.\" $Id: lotrs.3,v 1.2 2002/08/06 14:17:24 pnt Exp $
|
||||
.\" @(#)lotrs.l 0.0 90/22/08 UPMC; Author: Frederic Petrot
|
||||
.if t \{\
|
||||
.so man1/alc_contents.mac
|
||||
|
@ -10,7 +10,7 @@ lotrs
|
|||
.ti 0.2i
|
||||
lotrs
|
||||
.XE2 \}
|
||||
.TH LOTRS 3 "October 1, 1997" "ASIM/LIP6" "MBK LOGICAL STRUCTURE DEFINITIONS"
|
||||
.TH LOTRS 3 "August 6, 2002" "ASIM/LIP6" "MBK LOGICAL STRUCTURE DEFINITIONS"
|
||||
.SH NAME
|
||||
lotrs \- mbk logical transistor
|
||||
.SH DESCRIPTION
|
||||
|
@ -20,7 +20,7 @@ result of layout extractions. Since the only target technology is CMOS, only
|
|||
NMOS and PMOS transistors are used.
|
||||
.LP
|
||||
The declarations needed to work on \fBlotrs\fP are available in the header file
|
||||
\fI"/labo/include/mlo404.h"\fP, where '\fI404\fP' is the actual mbk version.
|
||||
\fI"/labo/include/mlo.h"\fP.
|
||||
.LP
|
||||
The following C structure supports the description of the logical transistor :
|
||||
.RS
|
||||
|
@ -35,6 +35,8 @@ typedef struct lotrs {
|
|||
struct locon \(**DRAIN;
|
||||
struct locon \(**GRID;
|
||||
struct locon \(**SOURCE;
|
||||
struct locon \(**BULK;
|
||||
char \(**TRNAME;
|
||||
long X,Y;
|
||||
unsigned short WIDTH, LENGTH;
|
||||
unsigned short PS, PD;
|
||||
|
@ -61,6 +63,13 @@ of course unique. See \fBlocon\fP(3) for details.
|
|||
Pointer to the source connector of the transistor. This connector is,
|
||||
of course unique. See \fBlocon\fP(3) for details.
|
||||
.TP
|
||||
\fIBULK\fP
|
||||
Pointer to the bulk connector of the transistor. This connector is,
|
||||
of course unique. See \fBlocon\fP(3) for details.
|
||||
.TP
|
||||
\fITRNAME\fP
|
||||
Transistor instance name
|
||||
.TP
|
||||
\fIX, Y\fP
|
||||
Coordinates of the transistor in a layout. These informations have sens only if
|
||||
the transistor netlist is the result of a layout extraction. They are
|
||||
|
@ -83,7 +92,7 @@ transistor grid width in micron, then
|
|||
\fIlotrs->XS = As / Width * SCALE_X\fP
|
||||
.TP
|
||||
\fITYPE\fP
|
||||
Canal type of the transistor. Two legal values are available :
|
||||
Canal type of the transistor. Six legal values are available :
|
||||
.RS
|
||||
.TP 20
|
||||
\fBTRANSN\fP
|
||||
|
@ -91,6 +100,18 @@ N type MOS transistor
|
|||
.TP
|
||||
\fBTRANSP\fP
|
||||
P type MOS transistor
|
||||
.TP
|
||||
\fBTRANSN_FAST\fP
|
||||
High speed N type MOS transistor
|
||||
.TP
|
||||
\fBTRANSP_FAST\fP
|
||||
High speed P type MOS transistor
|
||||
.TP
|
||||
\fBTRANSN_HVIO\fP
|
||||
Low Leakage N type MOS transistor
|
||||
.TP
|
||||
\fBTRANSP_HVIO\fP
|
||||
Low Leakage P type MOS transistor
|
||||
.RE
|
||||
.TP
|
||||
\fIUSER\fP
|
||||
|
@ -99,9 +120,8 @@ that is a general purpose
|
|||
pointer used to share informations on the transistor.
|
||||
.TP
|
||||
Remark :
|
||||
The transistors do not have a bulk connector, since in integrated techniques
|
||||
NMOS transistor bulk is always set to ground, and PMOS transistor bulk is
|
||||
always set to positive supply.
|
||||
In integrated techniques, NMOS transistor bulk for digital circuits is always set to ground, and
|
||||
PMOS transistor bulk for digital circuits is always set to positive supply.
|
||||
.SH SEE ALSO
|
||||
.BR mbk (1),
|
||||
.BR addlotrs (3),
|
||||
|
|
Loading…
Reference in New Issue