The DEF Parser

This document describes the function of the software unit that reads DEF files and stores the connectivity into the hierarchical database ZDB for later processing.

Introduction

In addition of using the GateVision PRO GUI to read DEF files either the stand alone binary def2zdb or the Tcl command zdef can be used.

The def2zdb binary reads the given DEF file and creates a binfile containing the connectivity of the input file:

def2zdb -o binfile.zdb <OPTIONS> <FILE.DEF>

The zdef Tcl command reads the given DEF file and returns the created in-memory database:

set db [zdef <OPTIONS> <FILE.DEF>]

The Tcl command is available in the Console window of the GateVision PRO GUI .

This document describes the usage of this flow.

Options

Option Parameters Description

-argsFromFile

<file>

Read cmdline arguments from file.

-binlib

<file>

Open this binfile as a precompiled library.

-breakOnError | -breakOnErr

on|off

Stop on errors during parsing.
(The default value for this option is off.)

-connectByName

<netnamepattern>

Connect matching net by name, i.e. don’t route it.

-createHier

<sep>

Create hierarchy from flat instance names. Split the instance names at the given hierarchy separator. If the given hierarchy separator character is an empty string then the hierarchy separator character is guessed.

-createPreplace

on|off

Use the placement information from a DEF file to create preplace strings for the schematic view.
(The default value for this option is off.)

-debugFlag

<flag>

Enable a specific debug flag.

-dontCut

Don’t cut long filenames in messages.

-forceSymlib

Overwrite existing symbols with the symbols from the given symbol library files (option -symlib).

-help | -h

Print a help text with a short description of each option.

-hierSep

<hiersepchar>

Set the desired hierarchy separator 'hiersepchar' of your choice. Any character can be used. To be able to identify the hierarchy separator, a character that is not already used in an identifier should be used.

-ignoreCase

on|off

Case-insensitive parser.
(The default value for this option is on.)

-info

None|Error|Warning|Verbose|Debug

Level of verbosity for issued messages.
(The default value for this option is Error.)
(This option is only available for the def2zdb executable.)

-into

<dbname>

Compile the given files into an already existing database.
(This option is only available for the zdef command.)

-logAppend

Append to logfile.

-logfile

<file>

Generate log file.
(This option is only available for the def2zdb executable.)

-noHierSep

Don’t search for a hierarchy separator.

-nologo

Print no greeting message.

-o | -out

<file>

Name of the zdb output binfile.
(This option is only available for the def2zdb executable.)

-prog

Print progress information.
(This option is only available for the def2zdb executable.)

-reduceInvChain

on|off

Replace odd number of INVs in a chain by one INV and remove an even number of INVs in a chain.
(The default value for this option is off.)

-removeBuffer

on|off

Remove all BUF and WIDE_BUF instances and merge the connected nets.
(The default value for this option is off.)

-renameSuffix

<suffix>

Suffix for renaming duplicate cells.

-resolveDuplicates

on|off

Resolve duplicate cells. If "off" all duplicate cells are renamed.
(The default value for this option is on.)

-scale

<scale>

Scale all coordinates by this factor.
(The default value for this option is 1.00.)

-skipSupplyPorts

on|off

Skip power/ground supply ports.
(The default value for this option is off.)

-spos

on|off

Create source code references.
(The default value for this option is on.)

-storePlacement

on|off

Store placement information from DEF file as attributes.
(The default value for this option is off.)

-suppress

<type> <pattern>

Suppress messages which match pattern.
(This option is only available for the def2zdb executable.)

-sym2zdb

Preload symbol library file(s) given with the -symlib option.

-symlib

<symlib>

Specify a symbol library file.

-time

Print CPU time consumption (requires enabled progress updates).
(This option is only available for the def2zdb executable.)

-top

<name>

Define this module as the top module. If * is set, then all unreferenced cells are used as top.

-validate

Validate DB before creating the zdb output file.

-wait_for_license | -waitForLicense

<sec>

Wait 'sec' seconds for a license. If the value is -1 then the started tool will not wait for the next free license. Use a value of 0 to wait forever.
(The default value for this option is -1.)
(This option is only available for the def2zdb executable.)