Up: CAST Flatten


5.1.1 CFLAT Options

General options:

— User Option: -c

Indicate that input file is source, as opposed to an object file, and needs to be compiled.

— User Option: -C opts

When compiling input source, forward options opts to the compiler driver.

— User Option: -h

Print command-line help and exit.

— User Option: -v

Print version and build information and exit.

hflat provides convenient and fine-grain control over the output text format. Options can be divided into two categories, modes and flags. Flags control individual traits of the output format, whereas modes are presets of traits, named after specific tools. The presets are set to emulate the formats expected by the legacy tools as closely as possible. Currently, the following list of modes is supported:

cflat option: prsim

prsim output mode.

cflat option: lvs
cflat option: LVS
cflat option: java-lvs

LVS output mode. The java-lvs option is a slight variant from the traditional lvs.

cflat option: ergen

ergen output mode.

cflat option: alint

alint output mode.

cflat option: prlint

prlint output mode.

cflat option: prs2tau

prs2tau output mode.

cflat option: connect

connect output mode.

cflat option: check

check output mode.

cflat option: wire

wire output mode.

cflat option: aspice
cflat option: Aspice

aspice output mode.

cflat option: ADspice

ADspice output mode.

cflat option: default

default output mode.

TODO: make table summarizing the flags implied by each preset mode.

Other non-preset options can be used to fine-tune and customize the output format. All options except the connect-* options may also be prefixed with no- for negation, e.g. -f no-sizes disables printing of sized production rule literals. The following -f flags are supported:

cflat -f option: no-connect
cflat -f option: connect-none

Suppress printing of aliases.

cflat -f option: connect-equal

Print aliases with style: ‘= x y’.

cflat -f option: connect-connect

Print aliases with style: ‘connect x y’.

cflat -f option: connect-wire

Print aliases with style: ‘wire x y’.

cflat -f option: include-prs
cflat -f option: exclude-prs
cflat -f option: no-include-prs
cflat -f option: no-exclude-prs

Include or exclude production rules from output.

cflat -f option: precharges
cflat -f option: no-precharges

Print or hide precharge expressions.

cflat -f option: self-aliases
cflat -f option: no-self-aliases

Includes or exclude aliases ‘x = x’.

cflat -f option: quote-names
cflat -f option: no-quote-names

Wrap all node names in “quotes”.

cflat -f option: node-attributes
cflat -f option: no-node-attributes

Whether or not to print node attributes.

cflat -f option: split-instance-attributes
cflat -f option: join-instance-attributes

Determines whether to print instance attributes (including nodes) on a single line like:

          @ "node" attr1 attr2 attr3 ...

or one attribute per line:

          @ "node" attr1
          @ "node" attr2
          @ "node" attr3
          ...
cflat -f option: SEU
cflat -f option: no-SEU

Enable single-event-upset mode for selected tool.

cflat -f option: check-mode
cflat -f option: no-check-mode

Silences cflat output while traversing hierarchy. Useful only as a diagnostic tool for debugging.

cflat -f option: wire-mode
cflat -f option: no-wire-mode

Accumulate aliases in the form: ‘wire (x,y,...)

cflat -f option: dsim-prs
cflat -f option: no-dsim-prs

Wraps prs in: ‘dsim { ... }

cflat -f option: sizes
cflat -f option: no-sizes

Prints rule literals with <size> specifications.

Preset modes are just combinations of the individual mode modifiers.