Hi all, I need to know whether Antenna Violations ...
# openlane
t
Hi all, I need to know whether Antenna Violations should be zero in digital macros, or a small number of violations is ok.
w
They should be zero- Yes. It must be zero at all cost - No A small number is acceptable if the ratio is not a very large value
πŸ‘ 2
t
I got two violations. Now how can we check whether they are critical or not?
m
check this for how to read the antenna report
@Tim Edwards has mentioned a few times in the slack that " However, most violations are not worth fixing unless they exceed the ratio by 2x."
t
@Matt Venn Thanks, I am reading the guide above, so we stumble upon question " How do we know if they exceed limit". I will try to find it in above guide.
So I found below,
[1] met1: PAR: 185.46 Ratio: 0.00 (Area) PAR: 929.15* Ratio: 400.00 (S.Area) CAR: 185.55 Ratio: 0.00 (C.Area) CAR: 929.26 Ratio: 0.00 (C.S.Area)
@Matt Venn Now comes the fixing part. I tried all DIODE_INSERTION_STRATEGY values. "1" yields two errors, "2" yields 3 errors. "3" with good number of fastroute iterations removes errors, but we get overlaps in extraction, lvs mismatches in number of diodes and finally DRC errors. It means that diodes were not placed well.
m
so that ratio is only 2x
so I would personally ignore it
πŸ™ 1
m
@Matt Venn I'm still confused by that report. It says ratio 400... which is greater than 2.
m
My understanding is the first number has to be less than the 2nd
m
Which first and second numbers?
m
I'll try to clarify the page
But right now I am about to take a well deserved nap!
πŸ‘ 1
m
It's it's 929 / 185 that is 5x
t
@Tayyeb Mahmood: The general principle here is that antenna violations will give you a yield hit---that's something to worry about on a production run because it will affect profit margins. But for a test chip on an MPW run, you could in principle have a yield loss as high as 10% and never notice it. So then it comes down mostly to personal choice. If the antenna violation is in a circuit that you think people will re-use as-is on other projects, then it would be in your best interest to knock the antenna violations down to zero. But it is most likely that the antenna violations occur in (1) a synthesized block which would most likely be resynthesized if re-used in another project, or (2) a top level layout which would necessarily be re-done for another project. That's the thinking behind my guidance.
m
@Tim Edwards Do you know how to read that report? "Area" vs "S.Area"? I understand C = cummulative.
t
@Matthew Guthaus: No, sorry, I was puzzling over that myself. "P" is for "partial" and "C" is for "cumulative". "S" is maybe "sidewall", but I'm not sure, since all of the metal calculations should be done on sidewall areas.
But I don't know why a report would give you anything other than the single number that is the result of doing the calculations the way that SkyWater specifies them. Then again, I think the LEF files might have values for multiple methods of antenna violation calculations, and you wouldn't be able to tell just by looking at the technology LEF file which one is the preferred method.
m
Yeah, I was trying to correspond it to the LEF calculation. The value of 400 seems like the S.Area compared to the the gate area is 400x which would be significant.
t
The 400 value is too much of a coincidence. . . I think it must be referring to the rule ratio (which is 400). That would make the 929 value the actual ratio, which is 2.3x over the rule limit, which is what Matt Venn was assuming. But that's just guesswork. Is that output format documented anywhere in the OpenROAD/OpenLane documentation?
t
I think this stuff is explained here and coded here.
After resolving Antenna violations, finally getting a lots of nwell.4 DRC errors, citing "All_nwells_must_contain_metal_connected_Nplus_taps_nwelldot4". How to troubleshot these @Tim Edwards @Matt Venn
t
Are you putting tap cells in your design?
t
Tap cells are part of user_proj_example (or macro hardening) flow. However, I was experimenting with MAGIC_DRC_USE_GDS setting that created problem. Setting it to 1 resolves the problem.
m
I've updated https://www.zerotoasiccourse.com/terminology/antenna-report/ to make it clearer and include Tim's latest advice
I've also added the --antenna flag to the openlane summary tools which will now list violations and advise to fix if more than 2x ratio
πŸ‘ 3