From: Luke Kenneth Casson Leighton Date: Tue, 25 May 2021 15:01:46 +0000 (+0000) Subject: attempt better grid alignment for fake cells X-Git-Tag: LS180_RC3~45 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=689f3552a1d8198759581dadf0bc71227076fcbc;p=soclayout.git attempt better grid alignment for fake cells --- diff --git a/experiments9/LibreSOCMem.py b/experiments9/LibreSOCMem.py index eadff7e..b5c2764 100644 --- a/experiments9/LibreSOCMem.py +++ b/experiments9/LibreSOCMem.py @@ -209,10 +209,12 @@ def _load(): lib = Library.create(rootlib, 'LibreSOCMem') cell = Cell.create(lib, 'spblock_512w64b8w') + space = 0.1 + with UpdateSession(): cell.setAbutmentBox(Box( #u(0.0), u(0.0), u(110.025), u(2.025), - u(0.0), u(0.0), u(110.0), u(2.5), + u(0.0), u(0.0), u(space*1000), u(space*25), )) nets = { '*': Net.create(cell, '*'), @@ -230,9 +232,9 @@ def _load(): nets[cname] = Net.create(cell, cname) # create series of stepped pins - x = 0.135*20 - wid = 0.135 / 2 - step = wid*10 + x = space*20 + wid = space + step = wid*5 for name, qty in (('a', 9), ('d', 64), ('q', 64), @@ -243,7 +245,7 @@ def _load(): net = nets[cname] pin = Vertical.create( net, tech.getLayer('metal1'), - u(x), u(wid), u(0), u(3.455), + u(x), u(wid), u(0), u(space*25), ) x += step net.setExternal(True) diff --git a/experiments9/pll.py b/experiments9/pll.py index 39ea520..ec31755 100644 --- a/experiments9/pll.py +++ b/experiments9/pll.py @@ -208,11 +208,13 @@ def _load(): lib = Library.create(rootlib, 'pll') + space = 0.1 + cell = Cell.create(lib, 'pll') with UpdateSession(): cell.setAbutmentBox(Box( #u(0.0), u(0.0), u(13.5), u(2.025), - u(0.0), u(0.0), u(13.5), u(2.5), + u(0.0), u(0.0), u(space*100), u(space*25), )) nets = { #'*': Net.create(cell, '*'), @@ -225,15 +227,15 @@ def _load(): } # create series of stepped pins - x = 0.135*20 - wid = 0.135 / 2 - step = wid*10 + x = space*20 + wid = space + step = wid*5 for cname in ['ref', 'div_out_test', 'a0', 'a1', 'vco_test_ana', 'out_v']: net = nets[cname] pin = Vertical.create( net, tech.getLayer('metal1'), - u(x), u(wid), u(0), u(3.455), + u(x), u(wid), u(0), u(space*15), ) x += step net.setExternal(True)