I would like to work on an opensource patterning t...
# sky130
p
I would like to work on an opensource patterning tool, to possibly replace the existing commercial tool with an opensource one for Sky130. Could someone please provide me with documentation, relevant design-rules, configuration files, before- and after-GDS files, and any other relevant information?
m
What do you mean "patterning" tool?
p
It goes something like that there must be enough metal density on one of the upper metal layers, so this patterning tool fills the empty spaces on that layer with various metal shapes. This step is currently done by EFabless before shipping the GDS to Skywater.
m
Ah fill insertion.
👍 1
Patterning made me think you wanted to make an OPC/RET tool
t
@Philipp Gühring: All of the fill generation scripts we use are in the public domain. See open_pdks under
sky130/custom/scripts
, scripts
generate_fill.py
and the corresponding
check_density.py
. The
generate_fill.py
script uses the python
multiprocessing
package to distribute the task over many threads, so it is quite fast.
👍 1
m
I assume this is basic fill insertion based on area. There are lots of enhancements possibly to reduce changes in coupling capacitance of critical nets, minimize complexity of added fill (it probably does this), etc.
Just for @Philipp Gühring's information
t
There are definitely many ways the fill generator could be enhanced. The main drawback is that it is "blind" and will generate fill without checking the density beforehand. It really needs to do something like check the density, record the areas failing density, run the pass at coarse fill, check again, etc. It might even end up being faster, because it would not run fill generation in areas that don't need it.