https://open-source-silicon.dev logo
#openlane
Title
# openlane
t

Tayyeb Mahmood

06/06/2021, 7:33 AM
Hi all, I need to know whether Antenna Violations should be zero in digital macros, or a small number of violations is ok.
w

Wajeh ul hasan

06/06/2021, 9:19 AM
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

Tayyeb Mahmood

06/06/2021, 9:21 AM
I got two violations. Now how can we check whether they are critical or not?
m

Matt Venn

06/06/2021, 9:28 AM
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

Tayyeb Mahmood

06/06/2021, 9:31 AM
@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

Matt Venn

06/06/2021, 9:52 AM
so that ratio is only 2x
so I would personally ignore it
🙏 1
m

Matthew Guthaus

06/06/2021, 2:15 PM
@Matt Venn I'm still confused by that report. It says ratio 400... which is greater than 2.
m

Matt Venn

06/06/2021, 2:16 PM
My understanding is the first number has to be less than the 2nd
m

Matthew Guthaus

06/06/2021, 2:16 PM
Which first and second numbers?
m

Matt Venn

06/06/2021, 2:17 PM
I'll try to clarify the page
But right now I am about to take a well deserved nap!
👍 1
m

Matthew Guthaus

06/06/2021, 2:18 PM
It's it's 929 / 185 that is 5x
t

Tim Edwards

06/06/2021, 2:43 PM
@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

Matthew Guthaus

06/06/2021, 2:45 PM
@Tim Edwards Do you know how to read that report? "Area" vs "S.Area"? I understand C = cummulative.
t

Tim Edwards

06/06/2021, 2:51 PM
@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

Matthew Guthaus

06/06/2021, 2:54 PM
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

Tim Edwards

06/06/2021, 3:00 PM
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

Tayyeb Mahmood

06/06/2021, 3:52 PM
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

Tim Edwards

06/07/2021, 1:34 AM
Are you putting tap cells in your design?
t

Tayyeb Mahmood

06/07/2021, 8:18 AM
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

Matt Venn

06/07/2021, 11:54 AM
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