does the antenna check of the top level (user_proj...
# caravel
a
does the antenna check of the top level (user_project_wrapper) also check macros, or just the top (without going down the hierarchy)? in my design, the hardened macro inside user_project_wrapper finishes the openlane flow successfully but shows antenna violations, but the top level shows no violations, so i'm wondering if I need to address the antenna violations for the macro.
inner macro
Copy code
Antenna Summary:
Source: /home/andrew/mpw/caravel_user_project/openlane/4ft4/runs/4ft4/reports/finishing/antenna.rpt
Number of pins violated: 17
Number of nets violated: 17
[INFO]: check full report here: /home/andrew/mpw/caravel_user_project/openlane/4ft4/runs/4ft4/reports/final_summary_report.csv
[INFO]: There are no max slew violations in the design at the typical corner.
[INFO]: There are no hold violations in the design at the typical corner.
[INFO]: There are no setup violations in the design at the typical corner.
[SUCCESS]: Flow complete.
top user_project_wrapper:
Copy code
Antenna Summary:
Source: /home/andrew/mpw/caravel_user_project/openlane/user_project_wrapper/runs/user_project_wrapper/reports/finishing/antenna.rpt
Number of pins violated: 0
Number of nets violated: 0
[INFO]: check full report here: /home/andrew/mpw/caravel_user_project/openlane/user_project_wrapper/runs/user_project_wrapper/reports/final_summary_report.csv
[WARNING]: There are max slew violations in the design at the typical corner. Please refer to /home/andrew/mpw/caravel_user_project/openlane/user_project_wrapper/runs/user_project_wrapper/reports/routing/22-parasitics_sta.slew.rpt
[INFO]: There are no hold violations in the design at the typical corner.
[INFO]: There are no setup violations in the design at the typical corner.
[SUCCESS]: Flow complete.
d
Top-level Antenna check is not flat run, you need to fix the Antenna violation inside the macro ..
a
thanks!
sorta weird that these violations don't cause the flow to fail
btw do you happen to have any tips on things to try to fix the violations?
d
Flow-wise you can only play with different setting of ::env(DIODE_INSERTION_STRATEGY) 0/1/2/3/4/5 Normally for a commercial chip all Antenna violation are fixed, which typically need manual fixes.
a
ok, thank you!
d
In MPW-5, I see following option are available
GLB_RT_ANT_ITERS
| The maximum number of iterations for global router repair_antenna. This option is only available in
DIODE_INSERTION_STRATEGY
=
3
. <br> (Default:
3
) |
DIODE_INSERTION_STRATEGY
| Specifies the insertion strategy of diodes to be used in the flow. 0 = No diode insertion, 1 = Spray diodes, 2 = insert fake diodes and replace them with real diodes if needed. 3= use FastRoute Antenna Avoidance flow, 4 = Use Sylvian's Custom Script for diode insertion on design pins and smartly inserting needed diodes inside the design, 5 = a mix of strategy 2 and 4. <br> (Default:
3
)
GLB_RT_MAX_DIODE_INS_ITERS
| Controls the maximum number of iterations at which re-running Fastroute for diode insertion stops. Each iteration ARC detects the violations and FastRoute fixes them by inserting diodes, then producing the new DEF. The number of antenna violations is compared with the previous iteration and if they are equal or the number is greater the iterations stop and the DEF from the previous iteration is used in the rest of the flow. If the current antenna violations reach zero, the current def will be used and the iterations will not continue. This option is only available in DIODE_INSERTION_STRATEGY =
3
. <br> (Default:
1
) | You can read at openlane folder file: configuration/README.md
🙏 2