DOKK / manpages / debian 10 / alliance / l2p.1.en
L2P(1) CAO-VLSI Reference Manual L2P(1)

- Creates a PostScript file from a symbolic layout file,or from a physical layout file.

See the file buster/alliance/alc_origin.1.en.gz.

l2p
[-color] [-drawingsize=<w>x<h>] [-fA3] [-fLETTER] [-fLEGAL] [-givebwdict] [-givecolordict] [-help] [-noheader] [-papersize=<x>x<y>x<w>x<h>] [-pages=<x>x<y>] [-tsize=<s>] [-nrname] [-ncname] [-nrfname] [-niname] [-nsname] [-mfeed] [-real] [-resol=<x>] [-rflattencatal] [-rflattentrans] [-rotate] [-scale=<f.f>] [-usedict=<f>] cellname

Two main kind of cells can be used as inputs for l2p :
First, you can use l2p to print symbolic layout cells. File formats can be .ap or .cp . This is given by an environment variable MBK_IN_PH that gives the appropriate symbolic layout file format.
Second, you can use l2p to print real layout cells whose file formats can be .cif or .gds . This is given by an environment variable RDS_IN that gives the appropriate real layout file format.
The path to the input file is set up by two environment variables: MBK_WORK_LIB(3) and if not found MBK_CATA_LIB(3). The output of l2p is a PostScript file in the current directory. The drawing size and the paper size can be specified by the user. So, you can split your drawing in as many pages as wanted. The resulting file can be then used on any adequat Postcript printer.
l2p will generate in the current directory, either a single file called <cellname>.ps, either several files suffixed by -<x>x<y>.ps, depending on wether you've asked for a monopage plot or for a drawing that will be splitted on several pages. If you do something like l2p -pages=2x1 cell, it will generate two files called cell-1x1.ps, and cell-2x1.ps.

With no options, l2p generate a 'standard file', with all options off. This is ok for leaf cells, but not for large circuits.

generates a color PostScript file for use with color interpreters. The default value gives a black and white PostCript file.
specifies the drawing area in centh of inch. By default, wide = 725 and height = 1068 for french A4 paper. If the drawing size is bigger than the paper area, then the drawing will be splitted on several pages.
The drawing is done on A3 format paper.
The drawing is done on LETTER format paper.
The drawing is done on LEGAL format paper.
give the Black & White internal PostScript dictionnary. See below.
This option must be unique on the command line. When used as in 'l2p -givebwdict', l2p then gives on the standard output its Black & White internal Postscript dictionnary. A PostScript dictionnary is a set of mac- ros that will be used during interpretation of your PostScript file. The macros in the internal PostScript dictionnaries of l2p allows you to control which layer to output, how to plot rectangles, and specify the colors of the rectangles. You get the standard diction- nary by a line of the form 'l2p -givecolordict > dict.ps'. You can then edit it, in order to reuse it with l2p, see the '-usedict' option below.
gives you this man page that explains how to use l2p.
prevents the border and various info, as the cellname and the position of the page in the drawing, from being printed.
specifies the paper area in centh of inch. By default, 50x50x726x1069 for a4 paper.
specifies the drawing area in pages. It can be useful, instead of having to calculate the size in cenths of inch of the drawing, to give it in numbers of pages. It takes care of the resizing of the paper and whether there is a header.

Available sizes:6,8,10,12,14.The default value is 8.

No name at all will be displayed.
The external connector's names won't be displayed.
The references's names won't be displayed.
The instances's names won't be displayed.
The segments's names won't be displayed.
Manualfeed:if set,informs the printer that it will be fed by the user himself,for each printing .
uses real file (cif, gds). By default, uses symbolic layout file (ap, cp).
is the resolution of the file in dots per inch (dpi). This value has been introducted to limitate the size of the generated PostScript files. Each rectangle whose width and height are smaller than the resolution will not be printed. The default value is 72dpi. It should only be changed in one specifical case : when you want to produce a plot of several meter large. Usually, you must provide a PostScript file sized for A4 paper with a much better resolution than 72dpi. You can then increase that value to up to 1000dpi, but be aware that the size of the file will probably be bigger than a 44Mb SyQuest cartridge that is used in PAO for exchanging data files.
flattens the cell to the catalog level. see catal(5) for more details on the use of the catalog file. Be careful, this option requires a lot of memory...
flattens the cell to the transistor level before printing. Be careful, this option requires a lot more memory...
rotate the cell from 90 degree. This is useful if you have a wide cell, and you want to have it printed in landscape mode.
forces the cell to be printed with a certain scale (a floating-point number). This is very useful, when you are printing a whole library of cells, and you want all cells to be printed to the same scale.
You can find at which scale a cell was printed by looking at the beginning of the file : 'head n1_y-1x1.ps' will show you a PostScript comment beginning by '%SCALE=3.78435' for example.
The output Postcript file contains a Postcript dictionnary of macros.
There are two standard dictionnaries used by l2p for black and white or color prints. This allows you to use a PostScript dictionnary different from the two internally encoded into l2p. By modifying one of the standard l2p dictionnary, you can choose which layer to output, how to fill the rectangles (empty, hashed, filled), which color to choose, ... and lots of other possibilities. The rest of the generated postscript file is mainly orders of drawing rectangles. PostScript is a reverse polish notation langage, that is easy to read for simple programs.
If you use this functionnality, and think that your dictionnaries are worth it, please mail them to alliance-users@asim.lip6.fr, in order to submit them for inclusion in future version of l2p (Thanks).

setenv MBK_IN_PH ap
setenv MBK_WORK_LIB .
setenv MBK_CATA_LIB /labo/cells/scr
setenv MBK_CATAL_NAME CATAL
setenv RDS_TECHNO_NAME cmos_1.rds
setenv RDS_IN cif
setenv MBK_CATAL_NAME CATAL_ROUT
setenv RDS_TECHNO_NAME prol12_1.rds

l2p -color n1_y
will create a colored n1_y.ps file in the current directory : the 'standard' way.
l2p -real cell
will create a cell.ps file in the current directory from cell.cif or cell.gds, depending on the RDS_IN environment variable.
l2p -pages=3x2 na2_y
size of the created drawing:3 horizontal pages,2 vertical ones;

mbk(1), rds(1), MBK_IN_PH(3), MBK_CATA_LIB(3), MBK_WORK_LIB(3), MBK_CATAL_NAME(3), RDS_TECHNO_NAME(3), pageview(1), gs(1), ghostview(1), lpr(1).

You will not be able to generate more than approximativly 30 pages at the same time (because of the FOPEN_MAX of your environment). In this case, see the option that is not implemented yet.
The generated PostScript is Level 1 for black& white plots. When you use color, it generates Level 1 with color extensions. It may not run with strict Level 1 interpreters, although it runs here with our Apple Personnal LaserWriter, Sun Sparcprinters, and Canon CLC-300-PS. It follows the Adobe Document Structuring Conventions 1, and as there is a fake bitmap image inside each generated files, you can re-use them in your word-processors, or publishing software, because the PostScript is EPSF-1.2 compliant.

See the file buster/alliance/alc_bug_report.1.en.gz.

October 1, 1997 ASIM/LIP6