►
From YouTube: AWG 020822 Meeting
Description
Presentation on KLayout by Matthias Koefferlein
B
B
A
B
Eddie,
how
are
you
today
doing
good?
How
are
you
rob
hi.
C
C
So
is
matthias,
is
here
right.
B
B
Morning
rob
good
morning,
everyone
hi
martin.
How
are
you
not
bad,
not
bad?
I
will
just
one
brief
personal
note,
I'm
just
I'm.
I
was
pleased
to
make
it
through
my
both
back
where
many
and
I
met
for
the
first
time
in
person.
That's
the
reality
of
these
times
and
then
also
my
son's
wedding
without
contracting
covet.
So
I
declare
victory
on
that
note,
but.
A
B
I
remember
I
didn't
even
think
twice
about
it
when
I
went
to
international
memory
workshop,
maybe
three
months
ago,
but
it's
much
much
different
now,
so!
Congratulations.
Thank
you.
Thank
you.
Why
don't
we
go
and
get
started
so
today,
matthias
is
going
to
give
us
a
presentation
on
k
layout
cover
line.
Am
I
saying
that
correctly
matias?
That's.
A
A
A
I'm
going
to
to
keep
this
talk
in
german.
Okay,
no!
Don't
worry
erin!
I
hope
my
english
is
good
enough,
so
it
has
a
lot
of
strong
german
accents
so
well.
B
My
journey,
my
general
experience
when
I
have
had
the
proportion
of
visiting
germany
or
austria
or
switzerland
is
that
folks,
english.
There
is
far
far
better
than
anyone
in
anyone's
german
in
the
u.s,
but
I
do
appreciate
the
opportunity
to
practice
and
everyone's
been
very
kind
and
patient
with
me
in
that
regard.
A
Okay,
so
yeah,
let
me
share
my
screen.
I
hope
this
is
working
because
I've
never
tried
so
far.
B
A
Full
screen,
okay,
yeah,
well,
very
good
yeah.
To
be
honest,
I
don't
know
exactly
what
you
folks
are
doing
here,
but
the
story
is:
I
met
midi
in
paris
when
we
had
a
small
conference
when
we
had
a
conference,
maybe
not
even
small
one,
and
it
was
basically
so
general
open,
source,
eda
silicon
and
so
on,
and
I
think
well,
I
was
one
of
the
organizers,
so
I
had
some
some.
A
They
gave
me
some
room
to
talk
about
k
layout,
which
is
a
let's
say,
a
quite
well
popular
tool
in
that
area,
and
so-
and
there
was
some
interaction
with
the
people
from
gds
factory.
I
had
some
collaboration,
I'd
say
in
the
past,
so
we
were.
We
are
currently
building
together,
some
yeah,
better
integration
in
in
the
in
the
in
these
workbooks,
the
jupiter
workbooks.
So
we
have
a
nice
viewing
ability
and
maybe
also
processing
speed
up
for
them
and
so
on.
A
C
I
I
think
it's
yeah,
I
think
you
basically
summarized
it.
It
was
great
to
see
your
talk.
I've
been
using
k
layout
for
a
while.
I
think
a
lot
of
people
in
the
open
source
community
are
using
k
layout,
and
the
reason
I
wanted
you
to
present
here
is
that
k
layout
is
or
gds
factory
is
what
I've
been
using
70
in
my
pmu
block.
So
I
was
thinking
it
would
be
great
to
know
the
real
you
know,
tool
behind
gds
factory
and
get
to
know
you
as
well.
A
Yes,
yeah,
that's
that's
at
least
an
opportunity.
Now
I
think
some
of
you
I
know
already
met.
I
guess
I
met
a
couple
of
years
ago.
We
also
had
some
exchange
about
lvs
and
dlc.
I
also
saw
that
may
honor
is
in
this
this
in
this
community.
I
don't
know
whether
she's
joining
today,
but
she
has
a
workshop
on
bag
currently
or
mainly
focused
on
trying
to
to
to
ramp
bags.
So
there's
also
some
interaction
here.
A
She
approached
me
a
couple
of
times
before
for
certain
things,
ideas
she
has
and
so
on.
So
I
think
there's
some
overlap.
Honestly.
B
No
miranda
does
participate
in
this
group
and
she
did
kindly
advise
that
she
herself
was
not
going
to
be
able
to
attend
today's
seminar
which
she
had
hoped
to,
but
I
do
know
that
some
of
the
folks
who
are
participating
in
you
know
the
the
boot
camp
there.
I
think
it's
not
they're
holding
it
in
austria,
I
don't
know
the
exact
location,
but
irrespective,
but.
A
Yeah,
okay,
anyway,
so
this
is
the
let's
say
this
was
the
motivation
and
I
mean
I'm.
I
was
kind
of
curious,
so
I
was
basically
told
that
you
might
be
interested
mainly
in
the
topics
of
layout
generation.
So
I'll
talk
briefly
about
the
project
in
general
and
then
maybe
a
few
words
about
what
how
k
layout
can
support
generation
and
then
there's
also
a
few
words
about
parasitic
extraction.
But
I
hope
I
don't
disappoint
you
because
actually,
currently,
there
is
no
not
much
there
feature-wise,
but
I
have
been
approached
many
times
about
parasitic.
A
So
maybe
I
can
share
some
thoughts
about
prosthetics
extraction
with
you
and
then
you
know
we
can
go
into
a
discussion.
I'd
say
because
this
is
mainly
what
I'm
here
for
okay.
So
for
those
who
don't
know
this
project,
actually
it
started
around
2009.
So
it's
it's
already
pretty
major
I'd,
say
it's.
It
started
eventually
as
a
viewer
for
gds
files
or
layout
files
in
general,
I
was
eventually
I
published
it
on
the
jeep
on
the
gpl,
after
briefly
considering
to
go
commercial,
but
that
was
a
bad
time.
That
was
a
financial
crisis.
A
So
I
didn't
do
so
so
I
just
published
it
and
gpl
was
my
license
of
choice,
because
the
qt
framework
required
me
to
pick
gpl
and
yeah.
That's
still
how
it
how
it
is
today,
so
it's
still
gpl
it's
entirely
open
source.
I
have
added
many
many
many
things
since
then.
So,
first
of
all,
there's
no
editing
being
added
or
has
had
been
edited.
I
had
been
added.
A
Scripting
abilities
were
added
pieces
were
added
many
more
file
formats,
a
lot
of
apis
and
finally
dlc
and
lvs
support,
which
grew
over
time
into
some
hierarchical
support.
Even
there
was
a
standalone
python
module
now
which
is
published
on
pipey,
and
this
is
the
one
that,
for
example,
gts
factory
is
using,
but
I
also
think
many
others
are
using
as
well
plus
plus
plus
so
it's
the
list
is
quite
long.
I
had
had
13
years
of
development,
it's
still
actively
developed,
so
I'm
doing
a
lot
of
maintenance.
A
A
At
the
time
where
I
started
the
project,
I
was
working
for
kimonda,
which
is
a
which
was
a
munich-based
dram
company.
It
died
2010
in
the
course
of
financial
crisis,
but
they
had
they
made
dram
products
and
yeah.
The
characteristics
of
dram
is
that
you
have
to
work
with
large
gds
files,
specifically
when
you
deal
with
post
post
processing
files.
A
It's
quite
fast
in
loading
and
viewing.
So
I
can
you
can
view
big
files.
I
mean
the
I
have
how
to
say
what
is
the
limit
I
might
have
loaded
like
60
70,
80
gigabyte
of
gds
already,
so
it's
still
use
usable,
provided
you
have
enough
memory
and
I
also
consider
the
algorithms
built
in
for
layout
processing
and
and
then
this
is
specifically
the
boolean
operations.
A
I
consider
them
pretty
robust,
I'm
using
them
myself
a
lot
even
for
for
non-manhattan
geometries,
where
most
of
the
most
of
the
algorithms
available
so
far
are
either
slow
or
they
don't
work
at
all.
A
Another
strength
is
definitely
the
integrated
scripting
engine
and
the
debugging
and
the
ide
facilities
which
hopefully
make
it
easy
to
develop
your
own
scripts
in
it's
an
alternative,
so
you
can
still
use
pycharm
or
any
other
ide
you
want
and-
and
I
think
also,
that
the
tool
has
now
became
a
defect
become
a
de
facto
standard
for
for
viewing
gds
in
oasis,
so
feedback
I
get
is
that
wherever
you
go,
whichever
foundry
you
go
to,
they
are,
they
are
all
using
a
layout
for
viewing
their
gds
files.
So
apparently
I.
D
A
No
numbers,
I
don't
track
users,
but
I
think
basically
every
company
uses
it
in
a
way,
so
there's
definitely
a
widespread
distribution
happening.
I
also
think
that
the
python
and
the
ruby
api
for
for
scripting
is
pretty
rich.
Now
I
I
mean
there
are
sure
features
missing,
but
it's
it's
already
quite
elaborate
and
also
quite
complex.
So
I
think
you
can
do
a
lot
with
that.
A
A
So
in
order
to
speed
up
viewing-
and
this
is
to
my
personal
taste,
this
is
not
acceptable
because,
if
you're,
if
you're,
trying
to
find
a
single
polygon
on
in
a
huge
layout-
which
maybe
is
the
error-
marker
you're,
looking
you're
trying
to
locate-
and
you
want
to
see
every
detail-
because
otherwise
you're
you're
searching
for
the
needle
in
the
haystack
and
k
layout-
is
definitely
in
that
sense-
a
high
high
fidelity
and
high
quality
viewer,
if
not
the
best
one
and
there's
also
a
good
support
for
many
other
file
formats.
A
A
It's
not
a
design
system,
I
need
to
say
so.
Some
people
think
it's
a
kind
of
virtuoso
light.
I
don't
think
it
is
because
it's
basically
lacking
a
net
annotation
of
all
these
nice
advanced
features,
you're
being
used
from
virtuoso,
specifically
schematics
entry,
and
and
also
editing
aids
like
automatic
viewer
placement
in
place
and
route,
and
so
on
things
things
you
need
to
have
when
you
want
to
create
bigger
layouts
manually,
the
performance
and
the
memory
footprint
of
some
dlc
features
needs
definitely
needs
improvement.
A
A
That
is
different
in
let's
say
other
or
modern
applications,
but
there
are
way
ways
to
work
around
and
and
the
current
dlc
and
lvs
implementation.
They
it's
pretty
basic
or
the
basic
features
are
there.
You
can
do
a
lot
with
that
already,
but
the
the
commercial
engines
have
a
few
advanced
features,
for
example
connectivity-based
dlc
rules
which
scaleout
does
not
have
yet.
A
This
is
something
I
want
to
just
show
you
to
give
you
some
impression
about
what
this
means
internally.
What
I
just
mentioned,
so
one
key
feature,
is
your
memory
compactness,
when
loading,
big,
gds
files
or
big
layout
files
in
general,
so
okay
layout
tries
to
keep
to
store
the
objects
in
a
very
compact
way.
A
So
like
on
the
left
side,
you
see
when
you
have
a
rectangle,
you
can
store
it
in
a
few
bytes
if
you
keep
them
in
a
contiguous
memory
layout-
and
this
is
first
very
fast
and
very
compact-
it
needs
it
its
little
memory.
You
can
play
some
more
tricks
on
that,
like
you
can
cache
points
for
polygons
and
text
strings
you
can.
It
can
also
cache.
A
You
can
build
efficient,
quad
trees
for
region
lookups
on
these
structures
and
when
you
load
oasis,
this
is
a
advanced
format
which
is
sometimes
regarded.
The
successor
of
gds
or
asus
features,
shape
repetitions,
so
it's
very,
very
efficient
to
represent
regular
arrays
of
shapes
and
okay
layout
can
store
these
features
in
memory.
So
you
need
not
much
more
memory
than
the
osys
file
is.
It
itself
takes.
A
Compared
to
that,
on
the
right
side,
you
see
some
some
classical
object-oriented
tools,
I
don't
say
names,
but
they
probably
work
with
something
like
a
doubly
linked
lists.
They
use
type
information,
attributes
and
so
on,
and
this
overall
takes
a
lot
more
memory
than
storing
it
compactly.
On
the
other
hand,
this
means
that
k
layout
has
an
api
which
is
not
yeah,
typically
easy
or
as
easily
accessible
as,
for
example,
open
access.
So
the
excess
methods
are
a
bit
more.
A
They
are
a
bit
indirect,
so
you
cannot
directly
manipulate
an
object.
So
that's
why
the
api
first
feels
a
bit
more
clumsy
and
and
strange
if
you
come
from
open
access,
but
I
think
you
get
used
to
it
and
finally,
it's
I
think,
there's
no,
no
real
disadvantage
of
working
with
a
compact
layout
model
or
complex
memory
model,
rather
than
an
elaborate
one,
except
that
you
have,
of
course,
much
less
memory
requirements
and
performance
wise.
So
this
is
an
example
I
took
from
a
for
my
soc
layout
I
had
so.
A
A
A
There's
a
lot
of
optimization
built
in
like
cells,
for
example,
a
bitmap
cached
and
quartz
from
the
quarterly
are
scripted
if
they
they
are
smaller
than
a
single
pixel
and
so
on,
and
in
the
end
the
the
quality
is
quite
good,
because
whenever
there
is
something
you
will
see
at
least
a
single
picture,
pixel
highlighted
the
drawing
engine
also
supports
a
lot
more.
For
example,
you
can
add
images
to
your
layouts,
which
I
think
is
used
by
people,
for
example,
who
who
investigate
layouts
together
with
sam
images
or
microscope
images.
So
it's
very
convenient.
A
A
That's
that's
mainly
because
the
dxf
is
a
pure
drawing
format
and
it's
badly
documented.
In
fact
it
doesn't
have
even
have
units.
So
you
don't
you
never
know
if
you
get
the
number,
whether
it's
micro
in
a
millimeter
or
whatever,
so
this
kind
of
works,
but
I
don't
recommend
using
it.
The
other
formats
are
quite
well
supported.
I'd
say
the
left
f
is
supported,
and
here
we
come
to
open
road,
which
I
also
understand
is
important
to
you
as
an
interface
or
for
interfacing,
and
they
use
magic
and
left
f.
A
As
far
as
I
know,
left
def
is
also
not
my
favorite
format,
because
it's
it's
made
in
a
way.
It's
not
extensible
and
you
always
need
to
follow
up
if
they
enhance
the
specification
in
parts
the
documentation
is,
is
quite
decent,
but
still
it's
partially
difficult
to
understand
what
it
means
and
basically
took
years
for
me
to
to
debug
it
with
the
help
of
many
users,
and
I
think
what
is
currently
available
now
is
a
pretty
stable
implementation,
but
it
does
not
take
the
net
information.
A
It
just
translates
the
geom
geometric
information,
the
polygons
into
something
that
is
gds
like
writing,
is
supported
for
most
formats,
except
for
java
and
and
left
well
left
f,
mainly
because
net
information
is
missing,
so
there
is
little
use
in
left
f
if
you
don't
have
nets,
but
also
hierarchy
is
not
easily
representable
in
left.
Half
scripting
support
so
layout
offers
two
scripting
engines
which
are
both
built
in
so
they
coexist.
One
is
ruby,
one
is
python,
so
my
personal
favorite
is
ruby,
but
many
users
prefer
python.
It's
because
of
its
simplicity.
A
You
have
an
in-application
way
of
doing
scripting,
but
there's
also
an
out
application
way.
It's
via
the
k-layout
module,
which
is
available
of
pipey,
which
I
already
mentioned.
It's
essentially
a
copy
of
the
code
which
is
available
for
k
layout,
but
it
lacks
some
of
the
apis
which
does
not
makes
which
do
not
make
sense
in
a
standalone
environment.
Everything
that's
user
interface
related,
but
recently
I
I
ported
the
whole
rendering
engine
into
this
module,
so
you
can
render
to
a
to
some
bitmap
and
this
works
because
there's
no
hardware
dependency.
A
So
it's
a
pure
software
implementation
and
the
bitmap
is
essentially
something
that
this
doesn't
need.
Any
user
interface.
So
technically,
you
can
render
to
a
png
file
and
display
this,
for
example,
for
over
a
websocket
interface.
So
there's
a
demonstrator
which
shows
that
you
can
run
basically
a
python
module-based
key
layout
in
a
web
server.
A
A
You
can
think
of
any
other
domain
specific
language,
if
you
like
many
people,
use
scripting,
of
course,
to
code
p
cells.
So
I
think
you
are
familiar
with
p
cells.
If
not
p
cells
are
basically
traceable
cells
which
you
can
yeah.
You
can
use,
for
example,
to
to
to
code
devices.
So
a
device
is
given
by
a
certain
number
of
parameters
and
by
using
a
pcell
which
represents
such
a
device,
I
can
basically
generate
variable
cells.
A
I
just
enter
the
width
and
length
of
the
transistor
and
the
p-server
generate
the
transistor
then-
and
this
is
also
available
in
in
layout
slightly
different
than
this
happens
in
in
virtuoso,
for
example,
but
in
a
quite
similar.
But
in
the
end
the
concepts
are
pretty
much
the
same,
and
I
find
many
people
can
can
reuse
their
knowledge.
They
gain
from
virtuoso
coding,
also
in
k-layout
and
of
course
finally,
scripting
can
also
be
used
to
generate
layout.
A
B
B
A
There
are
eighty
percent
of
the
functionality
you
can
access
for
the
scale
layout
module,
so
not
not.
Every
single
api
is
available,
everything
that
is
related
to
user
interface.
A
A
Nevertheless,
there's
a
discussion
ongoing
how
to
port
this
to
to
this
dlc
language
to
python,
and
maybe
you
will
finally
find
dlc
also
available
in
the
python
module
and
regarding
rendering
that
we
discussed
on
extension
or
we.
I
have
created
an
extension
which
is
currently
experimental,
but
there's
a
branch
on
github
where
this
is
available
and
with
this
or
with
this
new
version,
you
can
essentially
render
layout
to
a
png
file
without
with
using
the
scale
layout
module,
but
not
using
the
qt
libraries,
and
this
is
what
I
meant,
I'm
not
sure.
A
I
think
I
I
I
I
could
have
prepared
a
demonstration
of
this,
but
I
didn't
so.
I
think
I
will
not
get
it
running
so
quickly,
but
I
think
you
you
just
have
to
wait
a
little
and
then
there
will
be
some
some
development
happening
in
the
for
for
gds
factory.
I
think
they
are
already
picking
this
up
and
hopefully
we'll
release
this
sooner
or
later.
A
A
Okay,
yeah
well,
okay,
so
there's
there's
going
to
be
some
development.
I
don't
see
the
chat
here.
Sorry,
so
I
just
see
who's
talking,
okay,
so,
regarding
the
the
apis
that
quite
layout
offer,
this
is
also
basically
answering
your
question.
I
hope
so
there
are
a
couple
of
different
or
yeah.
I
wouldn't
say
they
are.
They
are
these.
These
apis
are
not
disconnected,
but
there
are
some
apis.
A
Some
group
of
functions
and
classes
that
form
individual
apis
and
there's
an
application
framework
layout
database,
dlc,
reporting,
qt,
binding
geometry
and
so
on
and,
as
you
see
here,
saw
the
ones
with
the
with
the
green
circle.
A
So
there's
a
good
coverage
already,
and
I
think
this
or
this
will
give
you
a
lot
of
more
options
here
as
compared
to
what
you
have
already,
I
think
for
you
for
for
the
application
of
layout
generation.
I
think
the
layout
database
and
also
the
geometry
engine
are
probably
the
most
important
ones
because
they
they
basically
comprise
something
that
is
similar
to,
I
wouldn't
say,
open
access,
but
maybe
the
layout
part
of
open
access
can
more
be
mapped
more
or
less
be
mapped
to
these
apis
and
regarding
the
geometry
processing
capabilities.
A
A
Coming
to
layout
generation,
because
I
think
that
was
an
important
point
for
you-
there
are
multiple
options
to
do
layer
generation,
one
is
psets,
as
I
explained
so,
presets
are
usually
used
for
for,
for
creating
small
and-
and
you
know,
small
layout
features
such
as
devices.
A
I
mean
they
can
be
big
in
terms
of
area,
but
they
are
not
big
in
terms
of
complexity,
so
I
don't
think
anyone
would
call
the
p-cell
for
flip-flop,
for
example,
so
they
they
would
code
psets,
maybe
for
single
transistors
in
the
extreme
case,
including
finger
finger
transistors
or
things
like
that,
but
not
much
much
more
and
it's
they're
very
convenient
when
you,
when
you
generate
layout
manually
because
they're
integrated
in
the
layout
editor
and
you
can
adjust
parameters
and
immediately
see
how
they,
how
they
behave
in
in
k
layout.
A
A
Layout
generators
can
use
p
cells
coded
in
ruby,
so
there's
a
bridge
built
in
then
there's
a
low
level
api,
where
you
have
all
the
the
commonly
used
objects
like
cells,
shapes
polygons
paths,
intense
instances
to
to
place
cells
and
so
on,
and
these
are
the
building
blocks
where
you
can
build
any
any
kind
of
layout
form
whatever
you
want,
provided
you
have
the
algorithms
to
do
so
and
then
there's
a
slightly
higher
level
api,
where
you
have
boolean
operations
and
layer,
processing
operations,
things
like
minkowski
sums,
corner
rounding,
dummy
fill,
dlc
features
or
the
the
you
can
even
do
with
spacing
checks.
A
If
you
like
things
like
that-
and
this
also
includes
net
tracing
and
net
extraction,
which
is
essentially
the
the
basic
feature
for
lvs.
So
you
can.
Yes,
sorry.
C
For
the
the
net
tracing,
so
is
there
any
feature
for
connectivity,
especially
when
you're
drawing
polygons
right,
it's
kind
of
really
hard
to
track
how
everything
is
connected.
A
Okay,
it's
not
integrated
into
editing
currently,
because,
mainly
because
there's
no
schematic
that
you
can
attach
to
but,
for
example,
there's
a
feature
which
is
the
net
tracer.
So
you
you
click.
You
have
to
define
your
metal
stack,
then
you
click
on
a
metal
piece
and
then
it
will
show
you
where
this
metal
routes
to.
A
The
as
well
and
it
will
highlight
this
net
and
this
is
quite
convenient
if
you
want
to
see
whether
you
created
a
short
or
something
like
that
yeah.
But
it's
it's
not.
It
doesn't
happen
immediately.
So
you
have
to
trigger
that
and
if
you,
if
you
happen
to
touch
a
vdd
net
on
a
big
sock,
then
it
takes
a
while
I
mean
you
can
stop
it
of
course,
but
it
basically
works.
You
can
even
extract
a
power
net
or
ground
net
from
a
big
soc,
but
then
you
wait
an
hour
or
so.
C
I
see
yeah,
but
how?
How
can
you
enable
this?
It
sounds
like
there's
some
procedure
to
to
have
here
right.
A
C
A
If
you
search
for
net,
I.
A
Way:
okay,
yeah,
so
I
mean
I'm
I'm
basically,
I
don't
have
a
lot
to
say.
Most
of
that,
I've
told
you
already.
Almost
most
content
is
already
already
presented.
I've
just
wanted
to
show
you
a
few
examples
of
examples
for
layout
generation.
This
is
an
example
for
p
cell.
I
coded
this
generates
a
qr
code
and
basically
you
type
in
a
text,
and
then
it
will
generate
this
qr
code
on
the
fly
so-
and
this
is
already
an
example
for
a
complex
pcell
and
it's
it's
openly
available.
A
So
whenever
you
need
some
feature
like
this,
you
can
code
it
for
a
pizza,
and
you
can
also
use
p
cells
from
scripting.
So
you
can
embed
this
p
cell
in
a
layout
generated
by
a
script.
A
A
Things
like
that
you
might
need
when
you
create
test
structures
where
you
want
to
investigate
lifo
effects
or
things
like
that,
then
you
might
want
to
have
labels
and
below.
I
don't.
I
will
not
explain
now
how
this
works,
but
this
is
basically
a
small
python
script
which
generates
this
field
of
labels
using
a
piece,
a
built-in
p
cell,
which
provides
these
texts
there.
A
You
can
see
that
with
a
few
lines
of
python,
you
can
already
create
complex
layouts
with
variations
built
in,
and
this
is
another
example
you
can
also
generate
layouts
in
terms
of
the
region.
Features
regions
is
and
can
lay
out
what
is
called
a
layer
in
caliber,
so
it's
essentially
a
set
of
polygons,
and
here
this
example
uses
this.
A
This
feature
to
generate
a
kind
of
guard
ring
with
rounded
corners
around
these
pinkish
shapes,
and
to
do
so,
it
uses
sizing
operations
and
and
corner
rounding,
and
things
like
that-
and
this
is
actually
a
dlc
script,
so
it
in
this
case
the
dlc,
does
not
check
anything,
but
it's
used
to
generate
layout.
This
is
also
a
way
to
to
add
or
to
manipulate
layout
so,
for
example,
to
in
this
case
to
add
features
which
may
enhance
manufacturability,
for
example.
A
If
you
talk
about
higher
level
concepts,
for
example,
if
you
want
to
have
place
involved,
I
imagine
if
you
want
to
really
generate
a
circuit,
then,
of
course
you
need
to
have
some
place
involved
feature
built
in
right
now,
keller,
doesn't
support
a
place
involved
function
that
you
can
readily
use,
but
I
think
there
are
many
algorithms
available
out
there,
which
probably
can
be
implemented
more
or
less
easily,
with
the
features
with
the
functions
which
are
there
already,
it's
basically
a
matter
of
trying
I'd
say
I
don't
have
a
list
myself.
What
what
is
there?
A
I
also
would
just
like
to
raise
the
question
if
there
is
need
for
certain
support
features
for
this,
I
personally
have
little
experience
in
implementing
place
involved.
Feature
placement,
algorithms,
but
maybe
something
like
a
point.
Stitch
data
structure,
for
example,
would
be
useful
in
this
case.
Maybe
can
be
added
to
k
layout
itself
or
it
can
be
added
as
a
python
module,
with
a
way
to
translate
between
polygon
geometry
and
so
on.
So
there
I'm
open
to
discussion
discussions
here.
If
you
have
an
idea
how
to
proceed
here.
B
B
A
B
A
Yeah,
that's
that's.
I
think
it's
a
long
journey,
yeah!
It's
in
fact
I
mean
my
understanding
is
that
many
databases
are
kind
of
specialized,
but
if
there's
something
that
is,
let's
say
generic
enough,
then
and
and
you
have
different
tools
able
to
attach
to
it.
Of
course,
why
not
k
layout
and
any
other
tool
like
coriolis
and
yeah,
and
some
parasitic
extraction
tools,
if
you
like
exactly
okay,
so
yeah
regarding
pin
terminal
information?
A
I
just
wanted
to
mention
this
because
this
is
quite
a
quite
a
crucial
ingredient
for
for
many
higher
level
circuit
generation
features.
So
you
need
to
know
when
you
have
a
sub
circuit
where
the
pins
are
ak
layout
currently
does
not
provide
data
structures
for
this
information,
but
of
course
it
can
be
like
it
can
be
added
if
required.
A
Okay.
So
now
coming
to
the
last
topic,
which
was
interesting
for
you,
I'd
say-
or
I
heard
at
least
right
now-
parasitic
extraction
is
not
a
feature.
We
talked
about
this
many
times
so
me
and
others,
and
even
I
don't
remember
the
name,
unfortunately,
the
guy
from
the
fast
solvers
we
were
talking
already.
A
I
honestly
I
couldn't
really
find
a
an
access
to
this
topic,
so
there
are
so
many
different
levels
of
detail.
You
can
consider
so
from
starting
from
very
simplistic
models
to
to
three-dimensional
em
simulations
and
so
on.
So
I
think
it's
important
to
first
focus
on
on
some
yeah
some
scope,
and
I
understand
that
most
implementations
we
have
including,
let's
say
open
rcx-
are
pretty
from
use
pretty
simple
models.
A
But
honestly
I
tried
to
understand
open
r6,
but
I
didn't
get
far
to
me.
It's
it's
hard
to
read.
A
A
If
you
have
references,
please,
so
anything
is
welcome.
If
you
have
some
yeah.
A
But
I
understand
I
mean
also
so
tim
was
basically
talking.
Tim
edwards
was
talking
about
his
attempts
to
do
rc
extraction
and
he
was
a
bit
skeptic,
so
he
I
think
he
was
not
well
not
really
content
with
his
success.
He
made
so
far,
which
kind
of.
B
C
A
A
C
A
I
got
him
tim
made
some
some
at
least
some
attempts
to
to
to
go
in
the
direction
of
rc
extraction,
but
he
was
a
bit
skeptic,
but
finally,
he
he
achieved
like
20
accuracy
from
from
yeah
with
very
basic
assumptions
so
which
I
consider
quite
good,
but
he
was
not
happy
with
that.
So
I
don't
know
at
least
on
sky
water.
He
was
focusing
on
20.
A
A
A
Yeah
yeah,
I
mean
device
prosthetics
if
you
think,
for
example,
about
yeah
the
french
capacitances
of
well
or
of
these
whole
strain
regions,
or
things
like
that.
I
guess
that's
pretty
simple,
because
you
you
extract
the
area
and
parameter
of
source
and
drain,
and
then
this
goes
into
a
bcm
model
and
that's
it.
A
A
C
I
think
I
think
we
need
to
do.
I
think
it
is
important
to
have
some
qualitative
numbers
on
how
how
bad
is
parasitic
extraction
in
these
open
source
tools.
I
mean
I
mean
especially
magic
because
that's
the
only
one
we
have.
A
A
Do
you
think
of
parasitic
extraction
for
the
purpose
of
analog
design?
Yes,.
C
Well,
I
mean,
I
think
there
is
timing
issues
with
open
rcx
and
there
is
a
calibration
that
that
is
being
done
right
now
that
isn't
really
fully
open
source.
But
that's
a
different
issue
than
you
know,
just
basically
simulating
your
op-amp
or
ldo.
A
I
I
imagine
that,
for
this
you
need
a
really
well
cross
coupling
enabled
and
detailed
netlist
with
rc
elements,
and
so
on.
Maybe
a
reduced
one
things
like
that,
so
you
cannot
just
take
spf
right,
yeah
yeah,
so
I
mean
honestly,
I
have
some
experience
in
using
parasitic
extraction
tools,
but
not
in
coding
ones.
So
I
mean,
if
there's
some
some
literature
or
some
basic
ideas
how
to
do
that?
I'd
be
happy
about
this.
I
I
mean
I
can
show
you.
This
is
essentially
my
yeah.
A
These
are
my
thoughts
about
this
layout
has
a
little
bit
of
support
already
for
for
this
kind
of
feature
in
terms
of
providing
the
basis,
so
it
can
give
you
a
because
it
needs
that
for
lvs
it
can
give
you
a
net
list
which
has
a
link
to
layout,
so
it
can
give
you
the
polygons
from
a
net
and
you
will
get
the
hierarchy
of
circuits
and
the
devices
and
the
multi-layer
geometry.
A
So
this
is
available
and
you
can
essentially
also
identify
nets
that
interact
in
terms
of
a
certain
interaction,
distance,
collect
the
geometries
and
then
go
into
some
heuristic
rc
extractor.
If
you
like,
and
finally,
you
could
also
attach
timing
information
to
these
nets
that
that
infrastructure
should
be
there
already-
and
this
is
an
example
I
took
from
a
real
layout-
this
is
a
single
net
and
from
k
layout,
you
can
essentially
get
all
the
polygons
which
make
up
this
net,
and
you
see
here
these
these
bluish
elements.
A
So
these
kind
of
hooks
that
or
these
these
leaves
these
are
the
device
terminals.
So
the
sources
in
this
case,
because
it's
a
vdd
net
and
the
green
and
the
reddish
elements.
These
are
the
metals
and
of
course
they
have
ears
built
in
and
and
caleot
has
this
information.
So,
for
example,
if
you
think
about
now
generating
resistor
networks
from
this
yeah,
that's
the
input.
A
D
Yeah,
I
have
a
question
with
the
net
tracing
like
the
way
we
implemented.
Ngds
factory
is
using
these
epic
tools
where
they
throw
a
device,
recognition,
layer
and
some
pins
and
the
pins
are
basically
making
sure
they
overlap,
but
it
doesn't
really
track
layer
to
layer
like
different
metal
layers
connectivity.
So
you
were
saying:
what's
the
recommended
way
to
implement
netflix
tracing,
do
we
have
to
add
labels
or.
A
So
I
think
what
what
you
refer
to
is
essentially
coming
from
photonics
right,
where
you
don't
have
years.
I
understand
and
we.
D
A
Yeah
I
mean
so
the
labels,
you
don't
necessarily
need,
but
it's
it's
good
to
have
a
label,
because
when
you
debug
you,
you
know
which
net
you're
looking
at
I
mean
apart
from
this
and
network
connectivity
is
essentially
quite
simple.
So
it
just
tells
you
what
metal
layers
you
have
and
what
wheels
connect,
which
metals.
A
Yeah,
and
in
this
case
I
took
the
ivs
engine,
so
the
lvs
engine
has
is
it
it's
made
from
a
couple
of
faces,
so
the
first
phase
is
to
derive
the
the
info
or
the
layers
which
you
need.
So,
for
example,
you
of
course
you
read
in
all
the
metals,
but
then
you
also
separate
the
gate
areas
from
the
other
poly
regions,
and
then
you
need
to
subtract
gate
from
source
drain,
for
example,
to
separate
source
and
drain,
and
so
on.
A
So
you
have
a
kind
of
preparation
phase
and
then
you,
you
take
the
outputs
of
this
preparation
phase
and
you
start
connecting
it.
So
everything
that
touches
needs
to
be
connected,
for
example,
the
the
metal
one
via
one
metal,
two
transition.
A
You
need,
then,
to
have
an
idea
of
what
is
a
device
and
where
the
terminals
are
and
what
devices
you
have,
and
this
will
generate
you,
these
terminal
shapes
here
and
then
you
finally
extract
the
whole
netlist
from
that,
and
this
gives
you
then
a
schematic
or
your
spicenet
list
or
netlist
api
structure
and
k
layout
knows
what
original
shapes
were
connected
to
each
net
and
you
can
you
can
regenerate
a
layout
from
this
information,
and
this
is
what
I
did
here.
D
Yeah
yeah,
the
the
miniature
was
having
with
the
current
connectivity
checks
that
we
use
with
cypic
is
that
it
doesn't
really
scale
very
well
with
the
layout
side,
and
so
maybe
I
think
for
that,
the
hierarchical
mode
or
the.
I
think
you
cover
this
at
the
free
silicon
conference,
maybe
running
on
a
different
mode,
will
be
better
because
it
works
well
for
small
circuits.
If
we
make
a
bigger
circuit,
the
connectivity
checks
with
this
because
the
lvs
engine
or
the
drc
engine
needs
yeah.
If
it's
too
big,
there's
too
many
booleans.
A
D
D
Yeah,
that's
yeah,
that's
the
problem.
Maybe
I
simplify
the
polygons
will
be
better
before
we.
D
B
C
C
If
there
is
a
way,
if
you
think
there
is
a
way,
we
can
do
that
and
provide
example
and
build
something
that
would
be
really
helpful
for
the
whole
open
source
community,
because
I
think
that's
one
part
where
we
are
a
bit
struggling
and
we
don't
know
what
is
golden.
To
be
honest.
A
Yeah
I
mean
when
you
talk
about
regression
tests.
Do
you
think
correlation
with
actual
hardware
as
well.
A
C
If
we
have,
I
mean
we
taped
out
tringos
later
at
the
structures
witness
so
we
can
use
those
and
you
have
the
layout
and
netlist.
A
A
C
So
this
those
should
be
good,
but
we
didn't
include
rc
in
the
ring
oscillator.
We
just
put
them
next
to
each
other.
Okay,.
C
A
C
Correct
and
but
we're
planning
to
do
that
for
the
other
nodes.
So
we
should
probably
you
know,
resume
discussion
offline
and
see
what.
A
C
Yeah
I
mean
there's
a
couple
now,
I'm
pretty
sure
we
can
leverage
a
couple
designs
from
what
was
taped
out
I'll
I'll
talk
with
nest
as
well
and
see
if
there's
a
way
to
do
this,
a
better
way
or
some
kind
of
approach.
A
A
Matthias
for
the
presentation-
okay,
you're
welcome,
I
mean
well,
it
was
kind
of
just
a
quick
walk
through.