Jake Ke
06/09/2022, 9:13 PMnpc.2
?Mitch Bailey
06/09/2022, 10:08 PMnpc 95/20
, poly 66/20
, licon1 66/44
?
There may be a corner case where standard cell placement causes an error.
In magic, it looks like npc is a generated layer and does not have a drc check in the normal rules.
#shuttle-precheck
@Tim Edwards This may be way off base, but AFAICT, the pre-check uses the normal tech file for DRC which doesn't appear to have a NPC check.
From mpw_precheck/checks/drc_checks/magic/magic_gds_drc_check.py
magicrc_file_path = parent_directory.parent.parent / 'tech-files' / 'sky130A.magicrc'
From mpw_precheck/checks/tech-files/sky130A.magicrc
tech load $PDKPATH/libs.tech/magic/sky130A.tech
There is another tech file in the pdk, sky130A-GDS.tech
, that does have an NPC check. Should this be the tech file used with pre-check?Jake Ke
06/10/2022, 12:02 AMMitch Bailey
06/10/2022, 12:13 AMconb
cell with the fill
cell to the left and adjust the wiring.Jake Ke
06/10/2022, 1:15 AMconb
cell and which is the fill
cell? Would this be a manual swap I do in Innovus?Mitch Bailey
06/10/2022, 1:17 AMTim Edwards
06/10/2022, 1:19 AMMitch Bailey
06/10/2022, 1:49 AMconb
cell is placed next to the AND? cell.Tim Edwards
06/10/2022, 1:56 AMand2_1
. I'm trying to figure out what it is. I'm curious if there is really a standard cell combination that violates DRC rules when abutted as designed. If so, the offending cell might be able to be redesigned, or just added to the "don't use" list (which is already too long, in my opinion).Tim Edwards
06/10/2022, 2:14 AMand2_0
(good eye, Mitch!). The NPC on pin A
stretches much too far, all the way to the cell border, which must be a design mistake. I will have to add that to the list of cells that I have layout fixes for, and get a repaired version into open_pdks. Meanwhile, you can make a quick fix by replacing that one cell with an and2_1
, which is the same size but does not have the NPC layer issue.