[Libre-soc-bugs] [Bug 526] create dry-run 180nm GDS-II files for IMEC
bugzilla-daemon at libre-soc.org
bugzilla-daemon at libre-soc.org
Sun Nov 29 22:29:27 GMT 2020
https://bugs.libre-soc.org/show_bug.cgi?id=526
--- Comment #65 from Cole Poirier <colepoirier at gmail.com> ---
(In reply to Jean-Paul.Chaput from comment #64)
> [snip]
> * In your json file, you seems to have inverted vdd/vss on the I/O pads.
> "vdd" should be connecteds to "power" and "vss" to "ground".
>
> * The power pads are too far off the side, at least put one ordinary pad
> at the very begin/end of each side.
This should hopefully resolve the error we were running into. Luke created the
hack/patch of changing the behavior of alpha/chip/corona.py from erroring when
a contact is outside rail corona X/Y range to just raising a warning, such that
the compilation would run to completion, but with errors in the P&R layout. See
diff below:
```
diff --git a/cumulus/src/plugins/alpha/chip/corona.py
b/cumulus/src/plugins/alpha/chip/corona.py
index c86fc70a..a19425aa 100644
--- a/cumulus/src/plugins/alpha/chip/corona.py
+++ b/cumulus/src/plugins/alpha/chip/corona.py
@@ -120,9 +120,9 @@ class HorizontalRail ( Rail ):
if contactBb.getXMin() < self.side.innerBb.getXMin() \
or contactBb.getXMax() > self.side.innerBb.getXMax():
trace( 550, '-' )
- raise ErrorMessage( 1, [ '{} is outside rail/corona X
range,'.format(contact)
+ print ( WarningMessage( [ '{} is outside rail/corona X
range,'.format(contact)
, 'power pad is likely to be to far off west
or east.'
- , '(core:{})'.format(self.side.innerBb) ] )
+ , '(core:{})'.format(self.side.innerBb) ] )
)
if self.vias.has_key(contact.getX()): return False
trace( 550, '\tvias:{}\n'.format(self.vias) )
keys = self.vias.keys()
@@ -232,9 +232,9 @@ class VerticalRail ( Rail ):
contactBb = contact.getBoundingBox()
if contactBb.getYMin() < self.side.innerBb.getYMin() \
or contactBb.getYMax() > self.side.innerBb.getYMax():
- raise ErrorMessage( 1, [ '{} is outside rail/corona Y
range'.format(contact)
+ print ( WarningMessage( [ '{} is outside rail/corona Y
range'.format(contact)
, 'power pad is likely to be to far off
north or south.'
- , '(core:{})'.format(self.side.innerBb) ] )
+ , '(core:{})'.format(self.side.innerBb) ] )
)
```
> * Display is still abnormally slow. Another thing to look at after tapeout.
I have already investigated this because I was curious. I found the problem and
solution. Let's talk after the tapeout :)
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the libre-soc-bugs
mailing list