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:
Pierre Nguyen Tuong 2002-08-06 14:17:24 +00:00
parent 08440e5dbd
commit a26e6a86f7
3 changed files with 132 additions and 17 deletions

View File

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

View File

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

View File

@ -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),