[Libre-silicon-devel] Standardized Data Structures Lef/Def routines

p4w5 paulwuertz at posteo.de
Sat Apr 28 06:01:08 CEST 2018

Hej everybody!

Sorry for not joining mumble sessions, I feel a little of on
communications, but anyway, hope my question finds some positive echo ;)

As I tried to understand project structures of the whole design flow -
correct me if I am wrong - each part of the program uses its own file
formats or parsers as data structures for macros and layers, from what I

* Graywolf uses a YACC parser for some file formats (don't know which)
* in the qflow repo is some form of lefdef parser using YACC, where I am
not sure if it is just for some UI stuff or supposed to be a actual parser
* in qroute 20% of the LOCs are for lefdef parsing with a hand written

I am not sure if there are some more forms of lefdef readers?
So my general plan would be to write a more generic router (being more
algorithmic agnostic providing a general data structure, to experiment
with some routing algorithms, splitting in global and detailed routing
and so on).

Before dealing with this I would opt to have some common core dealing
with lefdef reading and writing. Is there maybe already some tool doing
In the last week I started going through the lefdef ref manual 5.8 and
to manually parse lef files into some c++ structs, see[1] to have a look
yourself. From quite some big lef files it already can parse >90% the
mayor chunck. Being quite uncommented and not tougth through to much,
but before wasting more time on this I wanted to get some feedback.

Is the general lefdef-lib thing a idea worth spending more energy on? Is
there already another attempt to do so in progress?

Thanks for information and feedback!
P.S. Is there already something up for the hackathon? Would be
definitely up for it ;)

[1] https://github.com/paulwuertz/siliconverter

More information about the Libre-silicon-devel mailing list