Magic VLSI Layout Tool Version 7.3 *


Hardcopy plotting


plot option

where option may be one of the following:
postscript file [layers]
Generate a PostScript file of layout underneath the box.
pnm file [scale [layers]]
Generate a .pnm ("portable anymap") file of layout underneath the box. The output size is propotional to scale, where a scale of 1 is one output pixel per magic internal unit. The default scale value, if unspecified, is 0.5.
parameters [name value]
Set or print out plotting parameters (see Summary below).
Print help information


The plot command generates hardcopy plots of a layout. The use of plot for any particular output format requires that the parameters of the format be defined in the plot section of the technology file. However, from magic-7.3.56, the PNM handler will create a default set of output styles from the existing layout styles for the technology. This makes plot pnm compatible with all technology files, regardless of whether or not a section exists for "style pnm".

Each plot format has its own set of parameters, but all parameters are controlled with the plot parameters option. Valid parameters and their defaults are as follows:

General parameters:
parameter name default value
showCellNames true
PostScript parameters:
parameter name default value explanation
PS_cellIdFont /Helvetica Font used for writing cell use IDs
PS_cellNameFont /HelveticaBold Font used for writing cell definition names
PS_labelFont /Helvetica Font used for writing label text
PS_cellIdSize 8 Font size for writing cell use IDs (in points)
PS_cellNameSize 12 Font size for writing cell definition names (in points)
PS_labelSize 12 Font size for writing label text (in points)
PS_boundary true Whether to draw boundaries around layers in addition to fill patterns
PS_width 612 (8.5in) Page width of the target output
PS_height 792 (11in) Page height of the target output
PS_margin 72 (1in) Minimum margin to allow on all sides of the output page
PNM parameters:
parameter name default value explanation
pnmmaxmem 65536 Maximum memory (in KB) to use to generate output. Larger values allow larger chunks of the layout to be processed at a time. Normally, anything larger than the default will just take a long time to render, so it's better to leave it alone and let the plot pnm routine downsample the image to fit in memory if the size of the layout requires it.
pnmbackground 255 Value of the background, where 0=black and 255=white. White is default to match the printed page, which is where the plots usually end up. A value of 200 is approximately the default background color in magic.
pnmdownsample 0 Number of bits to downsample the original layout. In the first pass, one pixel is generated for each n magic internal units in each of x and y, where n is the downsampling value. Each downsampling bit therefore represents a factor of 4 in decreased computation time. Generally speaking, downsampling causes information to be lost in the translation from layout to the PNM file. However, if the grid has been scaled from the original lambda, then downsampling up to the scale factor will have no impact on the output other than speeding up the rendering (because the minimum feature size is still in lambda, so no feature will be overstepped by the downsampling). For example, for a grid scaling of 1:10 the proper downsampling would be 3 bits. Note that layouts that are too large for the allocated memory blocksize pnmmaxmem will force downsampling regardless of the value of pnmdownsample.
PostScript plotting is best suited for drawing small layouts with relatively few components. PNM plotting is best suited for drawing large layouts. For chip-size layouts, the PNM plots are virtually identical to chip photographs. From magic version 7.3.56, plotting PNM files requires no special entries in the technology file. Although such entries can fine-tune the output, this is usually not necessary. Also, since version 7.3.56, magic makes intelligent decisions about memory usage, so it's generally not necessary to change the PNM plot parameters.

Implementation Notes:

plot is implemented as a built-in command in magic.

Original plot styles versatec and gremlin have been removed, but shells of the code are retained so that magic doesn't complain when encountering styles for these types in a technology file.

Return to command index

Last updated: December 4, 2005 at 3:24pm