jeffdi
StefanCK
11/15/2022, 1:40 PMpaint fillblock
as I have seen recommended in a different channel.Mitch Bailey
11/15/2022, 1:57 PMyour met 3 & 4 density is too high. the clear area requirement is 0.40 and you have 0.37 and 0.33 respectively.I believe this is one density value calculated over the entire design and consists of the actual metal and the fill patterns.
fom density (diff+tap) is also an issue. the check is tiled at 700x700um. your highest is 0.62 and the limit is 0.57 .This density is calculated in 700umx700um tiles separately. Jeff is suggesting that you add a fill blockage layer to prevent the creation of fill squares, thus lowering your density.
Jorge Marin
11/15/2022, 2:06 PMMitch Bailey
11/15/2022, 2:14 PMcaravel/scripts/generate_fill.py
, I think, but I’m not sure what it’s doing.
You could try adding blockages and see if that increases your clear area.Harald Pretl
11/15/2022, 4:13 PMHarald Pretl
11/15/2022, 4:14 PMmagic script
to calculate the density, but I am not sure. @Tim Edwards?Jorge Marin
11/15/2022, 4:16 PMHarald Pretl
11/15/2022, 4:17 PMHarald Pretl
11/15/2022, 4:18 PMBoris Murmann
11/15/2022, 4:18 PMJorge Marin
11/15/2022, 5:49 PMTim Edwards
11/15/2022, 6:56 PMtech unlock *
in magic. Then put the types obsactive
in a ring around the transistors to offset the FOM density. Since top metal was not flagged as an issue, then put fillblock4
in a ring around the transistors (blocks metals 1 to 4; this will reduce metal 1 and 2, which are not flagged as an error, but I do not expect it will reduce them enough to cause a low density error). I would guess that a ring of maybe 100 microns around the transistors should be sufficient for the FOM error, and maybe 200 microns for the metal.
@Harald Pretl, @Jorge Marin: The script check_density.py
in $PDK_ROOT/sky130A/libs.tech/magic/
will run density checks on a GDS file. Note that the script will be checking density before fill generation. There's also a generate_fill.py
script, but it was designed for the tapeout process and I'm not sure whether it can be used on anything other than the caravel top level.StefanCK
11/15/2022, 7:02 PM<< fillblock >>
or << cfom.fill>>
and see what happens.Jorge Marin
11/16/2022, 2:40 PMTim Edwards
11/16/2022, 2:50 PMJorge Marin
11/16/2022, 2:51 PMTim Edwards
11/16/2022, 2:52 PMJorge Marin
11/17/2022, 2:47 PMTim Edwards
11/18/2022, 3:37 PMJorge Marin
11/18/2022, 3:50 PMJorge Marin
11/18/2022, 4:14 PMTim Edwards
11/18/2022, 4:18 PMantennacheck
command to do that, and there are klayout decks for running antenna checks. Both of them should give the same results as commercial tools.Alfonso Cortés
09/05/2023, 8:45 PM