tnt
09/10/2024, 8:48 PMhd
library is that it fails the npc.2
klayout FEOL precheck.
After investigating a bit the cases that happens and how the various cells are laid out, I think the main culprit is actually the conb_1
cell.
To make sure cells can abut properly, the npc
geometry of the cell must have the "central" band which is common to all cells and if it needs more geometry to contact a gate outside of that area then either that geometry needs to be more than 0.27u away from the edge, or it must extend right to the edge. This avoid forming a small gap between two abutting cells.
The current geometry of conb_1
doesn't respect this.
I have written a demonstration python script using gdspy
that corrects the npc
geometry inside the conb_1
cell and this has fixed the issue in the various cases we encountered ( https://pastebin.com/uQqhi3eY ). The geometry still doesn't strictly conform to the requirements above, so it's not 100% fool proof but AFAICT it's enough to fix compatibility with all the other cells. (I'll need to write a quick script to verify that though).
So how would one go about getting this fixed in the PDK ? If we're following the same path as for the decap_12
issue, I think a new sky130_ef_hd__conb_1
should be added and then pointing yosys to use this instead of the one in the library ?tnt
09/10/2024, 10:03 PMhd
library and AFAICT the fix I applied should be good for all possible cell combination of conb_1
next to any other cell.Uri Shaked
09/11/2024, 4:40 AMtnt
09/11/2024, 9:59 AMtnt
09/11/2024, 10:00 AMtnt
09/11/2024, 11:46 AM[IFP-0039] Liberty cell or port sky130_ef_sc_hd__conb_1/LO not found.
so obviously I missed something somewhere π
tnt
09/11/2024, 12:00 PM.lib
but none of the other custom cells area dded in there because they are just fillers so it's not needed meaning there isn't any infra / examples on how to do that in open_pdk ...tnt
09/12/2024, 2:34 PMdonn
09/16/2024, 12:53 PMDavid Lindley
09/16/2024, 12:57 PMdonn
09/16/2024, 12:58 PMDavid Lindley
09/16/2024, 12:59 PMtnt
09/16/2024, 2:43 PMdecap
be gone, or just enough to pass new density ? ( like replace decap_12
with decap_4
and fill_8
maybe )David Lindley
09/16/2024, 2:45 PMDavid Lindley
09/16/2024, 2:46 PMtnt
09/16/2024, 2:46 PMtnt
09/17/2024, 9:03 AMTim Edwards
09/17/2024, 1:59 PM