DALI

NAME
SYNOPSIS
OPTIONS
DESCRIPTION
Various commands (e.g. append, wire) operate only on the mask layers
FILES
LIMITATIONS
SEE ALSO

NAME

dali - an interactive layout editor

SYNOPSIS

dali [-A|-C] [-f] [-o] [-h host:d#[.s#]] [=geo] [cell_name]

OPTIONS

-A

Set plane mask for Text Graphics Context (for Apollo).

-C

Don't use standard ICD colormap (setcmap program).

-f

Use file "dali_drc" from current working directory.

-o

Output "dalirc" messages to "animate" file.

-h

The display to be used by dali. The display must be identified by a hostname together with a display number, and optionally a screen number.

If this option is not used the environment variable DISPLAY is used to identify the display.

=geo

To specify the window geometry

<width>x<height>{+-}<xoffs>{+-}<yoffset>. For example, =+0 to get a default window at xoffset 0, or =1000x800+0 to get a rather big window in the upper left corner.

cell_name

Name of the cell that is to be read at start-up.

DESCRIPTION

Dali (the Delft Advanced Layout Interface) is an X Windows program for layout editing of integrated circuits. It can be used for the creation / manipulation of hierarchical layouts containing orthogonal and 45 degrees mask geometries.

Dali interacts with the ICD / NELSIS database for storage and retrieval of the layout descriptions. To use the program the project directory must be chosen as the current working directory.

Dali uses a cursor (pointer) to select a point or an area on the screen. To select a point a cross is used, which is moved around with the aid of the mouse. Upon pressing a mouse button the point is selected. When rectangular areas, polygons or centre-lines of wires have to be entered, dali switches to rubber-box / rubber-line cursors after the first point has been fixed.

Dali is menu driven, with the commands to be used appearing on the left side of the screen. The commands are selected by moving the cursor into the command area on the screen and pressing a mouse button. On occasions where dali expects the user to specify a point in the design area it is often allowed to select a command instead, thereby cancelling or interrupting the command in progress.

Dali has a hierarchical menu structure. Upon starting the main menu is shown on the screen from which one may choose one of the command clusters. Upon doing so the set of commands belonging to the cluster are shown, and one may choose one of them.

The clusters and their commands are:

settings

This cluster contains commands for setting dali working modes. For instance, commands to control the display grid and snap grid.

info_menu

Contains commands to ask for information.

annotate

Contains commands to add / delete comments and labels.

DRC_menu

Contains the commands to do design-rule checking and to show the results on the screen. Dali contacts the dimcheck(1ICD) package to perform the actual check.

inst_menu

Commands to manipulate instances (calls from the edited cell to son-cells), including the manipulation of arrays of instances and the possibility to add instances of cells that have previously been imported from other projects.

term_menu

Commands to manipulate the terminals, including the manipulation of a terminal-buffer as well as the possibility to "lift" terminals of instances.

box_menu

Commands to manipulate the primitive mask geometries of the cell being edited. This includes the manipulation of polygons containing 45 degrees edges, buffer operations, wire editing and a fast integrated design-rule checker performing single-layer checks.

DB_menu

Commands to interact with the data manager (database). Also commands to expand (on the screen) the instance(s) are given here, as well as commands to clear the data patterns.

visible

In this cluster one may set layers/names visible/not_visible on the screen.

Various commands (e.g. append, wire) operate only on the mask layers

that have been selected by the designer. (De)activation of these mask layers can be done by toggling the corresponding areas at the bottom of the screen.

Some commands can be activated with keyboard keys. The following key commands are defined for dali:

Key: Function:

+

(=)

zoom in (current window)

-

zoom out (current window)

0

expand cell with maximum level

1...9

expand cell with this level

e

expand cell with default level

E

individual expansion

N

new edit session (erase window)

R

read (edit) another cell

W

write (save) the current cell

b

bounding box window

c

center window at cursor position

d

hashed drawing style on/off

D

dominant drawing style on/off

g

grid(s) on/off

h

(H)

pan left

j

(J)

pan down

k

(K)

pan up

l

(L)

pan right

i

zoom in at cursor position

o

zoom out at cursor position

p

previous window

q

quit (exit) the program

r

(^L)

redraw screen

s

visible sub-terminals on/off

t

tracker (cursor position display) on/off

v

visible setup menu

Esc

escape from current menu or enter string

Messages from the program to the user will be displayed in a window at the top of the screen.

FILES

NELSISPROJECT/.dmrc

(input file)

ICDPATH/share/lib/process/TECHN/maskdata

(input file)

ICDPATH/share/lib/process/TECHN/dalirc

(input file)

NELSISPROJECT/.dalirc

(input file, 1st try)

HOME_dir/.dalirc

(input file, 2nd try)

ICDPATH/share/lib/process/TECHN/dali_drc

(input file, 3rd try)

NELSISPROJECT/dali_drc

(input file, -f option)

NELSISPROJECT/layout/cell/box

(in/output file)

NELSISPROJECT/layout/cell/info

(in/output file)

NELSISPROJECT/layout/cell/mc

(in/output file)

NELSISPROJECT/layout/cell/term

(in/output file)

NELSISPROJECT/layout/cell/nor

(in/output file)

NELSISPROJECT/layout/cell/annotations

(in/output file)

NELSISPROJECT/animate.PID

(output file, -o option)

LIMITATIONS

The editor will only fit for cells with Manhattan and 45 degrees shapes.

SEE ALSO

P. van der Wolf, J. Liedorp and S. de Graaf, "Dali User's Manual", Circuits & Systems, Delft University of Technology.
dimcheck(1ICD), mkpr(1ICD), getproc(1ICD), setcmap(1ICD), dali_drc(4ICD), maskdata(4ICD).