next up previous contents index
Next: Current Directory Up: Create Output Previous: Placement Block Directives   Contents   Index


The !splwrite Command: Split an Archive

Syntax: !splwrite -i filename -o basename.ext [-c cellname] -g gridsize | -r l,b,r,t[,l,b, r,t]... [-b bloatval] [-w l,b,r,t] [-f] [-m] [-cl] [-e[N]] [-p]
This command will write output files corresponding to a list of rectangular regions, or to the partitions of a square grid logically covering all or part of a specified cell in a given layout file. The output files contain physical data only. These files can be flat or hierarchical.

The arguments are as follows:

-i filename
This mandatory argument specifies a path to a layout file, the access name of a Cell Hierarchy Digest (CHD) in memory, or a path to a saved CHD file. This source will provide cell data as input.

-o basename.ext
This mandatory argument provides the base name of the output files that will be created, and the type of file to write. There are generally two components of the argument, separated by a period. The basename component may be absent, but the period must remain. If the basename is absent, the name of the top-level cell being split will be used.

The ext, which follows the period, must be one of the following to indicate the file format to be used for output.

CGX .cgx
CIF .cif
GDSII .gds, .str, .strm, .stream
OASIS .oas

The GDSII and CGX extensions can be followed by ``.gz'', which will indicate gzip compression.

When writing a list of regions, the file names produced will have the form

basenameN.ext
where N is a 1-based index of the region in the order given. When writing grid cells, the file names produced will have the form
basename_X_Y.ext
where X and Y are the 0-based indices of the corresponding grid cell (the origin is the lower-left corner).

-c cellname
This optional argument specifies the name of the cell to be used as the top-level in output. If not given, this will be the first top-level cell found in the input file, or, if the input source is a CHD, the default cell configured into the CHD will be used.

Exactly one of the following two options must be provided.

-g gridsize
This argument specifies the length, in microns, of the side of a square grid cell. The area to be written will be tiled with a grid of this size, with the origin at the lower left corner. Each grid cell with nonzero overlap area with the area to be written will have a corresponding output file produced.

-r l,b,r,t[,l, b,r,t]...
This provides a list of rectangular regions to write, as a comma-separated list of coordinates in microns. Each region is specified by four coordinates in the order given, with no white space.

The regions can be given with a single -r followed by any number of concatenated regions, as implied above. However, any number of -r options with region lists can be given, the regions will be processed in order. Some users may find it more convenient to specify the regions individually, each with a separate -r option.

-b bloatval
This optional argument specifies how much, in microns, the grid cells will be bloated before the write operation. If positive, the grid cells will be expanded, and the files will logically overlap. The value can also be negative, which will leave logically unwritten area between output files.

If a region list is specified rather than a grid, the bloating will be applied to each region.

-w l,b,r,t
This specifies a rectangular area, in the top-level cell being written, which will be included in the output files. The four numbers are given in microns, separated by commas, with no intervening white space. If not provided, the entire cell area is understood.

-f
If this flag is given, the output files will be flat. All geometry will be contained in the top-level cell of each file. Be aware that this can consume a lot of disk space.

If not given, the output files will maintain the hierarchy of the original file. In this mode, only the geometry needed to fully render the area of the top-level cell corresponding to the (possibly bloated) grid cell area is retained. Subcells may therefor contain only part of the original geometry, or may not appear at all if not instantiated within the area. Subcells may also become empty, these are not automatically stripped.

-m
If flattening, this option specifies that a suffix ``_N'' is added to the top cell name in each file, with N an integer, so as to make the cell names unique in the collection. This will facilitate subsequent merging of data from the files by avoiding cell name clashes. Without this option, the files would have the same cell name, the same name as the original top-level cell. This option is ignored if not flattening (-f not given).

-cl
This flag will cause geometry to be clipped at the (possibly bloated) grid cell boundaries. This applies whether flattening or not. Note that when not flattening, clipping does not guarantee that geometry is confined to the clip area.

-e[N]
This will enable empty cell filtering, as described for the Format Conversion panel in 14.10. The options are:
-e or -e1
Turn on both pre- and post-filtering.
-e2
Turn on pre-filtering only.
-e3
Turn on post-filtering only.
-e0
Turn off all empty cell filtering (no operation).

-p
This option specifies that an alternative ``parallel'' writing algorithm is used when creating output. In this case, the input file is read once only, and content is dispatched to the appropriate output files. The normal operation is sequential, where the input file is scanned for each output file. The parallel method is expected to be faster, though results may vary.

The command will create a temporary CHD, if necessary. Each grid region is written out sequentially, in the manner of windowing from the Format Conversion panel from the Convert Menu.


next up previous contents index
Next: Current Directory Up: Create Output Previous: Placement Block Directives   Contents   Index
Stephen R. Whiteley 2022-05-28