Grt: Use DPL to legalize diode positions inserted in repair antennas
The modification eliminates the mini placement engine in repair antennas, which used to place diodes near gates with violations.
To legalize the positions of inserted diodes, run DPL after inserting all diodes in all nets (the diodes are placed in the same position as the gates).
Running test-branch, I found a small difference in the number of inserted diodes and other metrics. The designs with the largest differences in the metrics are:
- sky130hd/chameleon:
- Total inserted diodes increase from 193 to 237 (~22.8%)
- Total number of violations found increase from 324 to 343 (~5.9%)
- sky130hd/jpeg:
- Total inserted diodes increase from 203 to 228 (~12.3%)
- Total number of violations found increase from 263 to 271 (~3%)
- sky130hs/ibex:
- Total inserted diodes increase from 37 to 41 (~10.8%)
- Total number of violations found increase from 79 to 87 (~10.1%)
- ihp-sg13g2/jpeg:
- Total inserted diodes increase from 92 to 100 (~8.7%)
- Total number of violations found increase from 131 to 148 (~12.98%)
- sky130hd/aes:
- Total inserted diodes increase from 184 to 199 (~8.15%)
- Total number of violations found increase from 240 to 248 (~3.3%)
Two designs failed due to a larger number of diodes, necessitating a metric update:
- ihp-sg13g2/jpeg
- ihp-sg13g2/aes
clang-tidy review says "All clean, LGTM! :+1:"
@luis201420 I believe it's worth to investigate the large difference in sky130hd/chameleon and in the failing designs. Perhaps we can try to play with the max displacement to prevent having diodes far from the violated pin.
@luis201420 Please check the CI failures too.