Beruflich Dokumente
Kultur Dokumente
IC
Compiler
Tutorial
for
a
logic
block
using
the
University
of
Utah
Standard
Cell
Libraries
In
ON
Semiconductor
0.5u
C5
CMOS
Version
3.0
From
the
command
line
invoke
this
command
with
the
script
below
updated
with
your
design
name
and
informaGon.
The
remainder
of
the
script
is
commented
out
and
should
be
executed
one
line
at
a
Gme
and
the
results
should
be
veried.
The
script
loads
the
libraries
and
design.
This
command
will
allocate
space
for
the
chip
and
place
the
pins
evenly
on
the
border.
The
purple
boxes
on
the
right
are
the
unplaced
cells.
The
core_uGlizaGon
will
determine
how
dense
the
design
will
be
at
the
expense
of
routability
later.
This
command
simply
describes
the
vdd
and
ground
used
by
the
standard
cells.
It
may
be
necessary
to
run
at
the
end
of
the
process
as
well.
Blue
is
metal
1,
yellow
metal
2
and
Red
is
metal
3.
Note
also
that
via1
squares
connect
metal
1
to
2
and
via2
Squares
conect
metal
2
to
3.
This
command
creates
addiGonal
power
network
robustness
but
at
the
expense
of
routability
later.
The
command
place_opt
places
all
cells.
The
opGons
-eort
high
and
-congesGon
may
help.
The
congesGon
opGon
spreads
cells
apart
that
may
be
in
areas
of
high
rouGng
to
provide
extra
tracks
and
increase
the
odds
of
a
successful
route
later.
Change
visibility
of
the
pins
to
see
the
connectable
metals
used
by
the
standard
cells.
The
underlying
cells
are
not
visible
to
the
logic
designer
/
implementer.
Later
we
will
merge
these
shapes
in
with
Custom
Designer
and
the
wells,
polys
and
acGve
areas
will
be
visible.
This
command
inserts
the
clock
tree.
See
the
metal
2
and
3
lines
below
which
are
the
clock
tree.
The
report_clock_tree
command.
From
this,
the
tree
is
4
levels
deep
and
has
a
max
skew
of
73
pS.
Less
than
200pS
is
a
good
rule
of
thumb.
route_opt
eort
high
routes
the
rest
of
the
design.
This
takes
the
longest
of
all
steps
and
can
be
where
the
most
problems
occur
if
you
design
is
too
dense.
A_er
everything
else
is
nalized,
we
need
to
ll
the
empty
space
between
cells
to
ensure
conGnuity
across
the
circuit
rows.
No
more
cells
can
be
added
a_er
this
step
so
we
are
almost
done.
Below,
purple
cells
are
standard
cells
and
blue
are
ll.
The
rouGng
visibility
has
been
turned
o
to
clearly
see
that
it
is
lled.
LVS
is
Layout
Versus
SchemaGcs.
Basically
this
is
a
test
for
all
of
your
connecGons.
There
are
problems
reported
below.
The
script
runs
these
checks
but
I
like
to
re-verify
using
the
graphic
LVS
tool
found
under
the
vericaGon
menu.
If
two
shorts
exist
between
ground
and
vdd
with
the
net
NULL.
Rerun
the
derive_pg_connecGons
command
from
the
earlier
in
the
stop
and
re-run
LVS.
DRCs
are
Design
Rules
Checks
and
basically
are
tests
that
your
spacings
and
widths
are
goods.
As
well
as
standard
cell
library
placement
on
rows.
The
script
runs
these
checks
but
I
like
to
re-verify
using
the
graphic
DRC
tool
found
under
the
vericaGon
menu.
Write
out
the
le
to
the
Milkyway
database
by
saving.
Also,
you
can
write
out
a
GDS
le
that
is
the
standard
format
accepted
by
foundries.
First
use
the
set_write_stream_opGons
-output_pin
{text
geometry}
-keep_data_type
write_stream
-lib_name
uproc_LIB
-format
gds
"uproc.gds"