From 689f3552a1d8198759581dadf0bc71227076fcbc Mon Sep 17 00:00:00 2001 From: Luke Kenneth Casson Leighton Date: Tue, 25 May 2021 15:01:46 +0000 Subject: [PATCH] attempt better grid alignment for fake cells --- experiments9/LibreSOCMem.py | 12 +++++++----- experiments9/pll.py | 12 +++++++----- 2 files changed, 14 insertions(+), 10 deletions(-) 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) -- 2.30.2