From: Luke Kenneth Casson Leighton Date: Fri, 28 Feb 2020 10:27:47 +0000 (+0000) Subject: add VIA but metal not working yet X-Git-Tag: partial-core-ls180-gdsii~189 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=25924f9faf78b1b47258e816f7b263449f40a719;p=soclayout.git add VIA but metal not working yet --- diff --git a/experiments5/doAlu16.py b/experiments5/doAlu16.py index d6e51a4..75c3369 100755 --- a/experiments5/doAlu16.py +++ b/experiments5/doAlu16.py @@ -54,24 +54,24 @@ def createHorizontal ( contactPaths, y, layer, width=None): contacts = contactPaths - if width is None: width = toDbU(2.0) + if width is None: width = l(2.0) contacts.sort( xincrease ) for i in range(1,len(contacts)): Horizontal.create( contacts[i-1], contacts[i], layer, y, width ) -def build_downtrace(net, layer, x, y, y1): +def build_downtrace(net, via, layer, x, y, y1): contacts = \ - [ Contact.create( net, layer, l(x), l(y), l(2.0), l(2.0) ) - , Contact.create( net, layer, l(x), l(y1), l(2.0), l(2.0) ) + [ Contact.create( net, via, l(x), l(y), l(1.0), l(1.0) ) + , Contact.create( net, via, l(x), l(y1), l(1.0), l(1.0) ) ] createVertical( contacts, l(x), layer ) - print "slaves", contacts[-1].getSlaveComponents() - for component in contacts[-1].getSlaveComponents(): - NetExternalComponents.setExternal(component) + #print "slaves", contacts[-1].getSlaveComponents() + #for component in contacts[-1].getSlaveComponents(): + #NetExternalComponents.setExternal(component) #print "af", dir(af) #sys.exit(0) @@ -226,11 +226,13 @@ def add ( **kw ): success = katana.getSuccessState() katana.destroy() - if False: + if True: + VIA23 = DataBase.getDB().getTechnology().getLayer( 'VIA23' ) UpdateSession.open() + build_downtrace(net, VIA23, metal3, 10, 10, 20) cell.setAbutmentBox( ab ) for i in range(16): - if True: + if False: net = cell.getNet('b(%d)' % i) x = 20.0*i + 10.0 + 10 y = height-10 @@ -559,9 +561,9 @@ def alu_hier_route(**kw): if __name__ == '__main__': success = add() - success = sub() - success = alu_hier_place() - success = alu_hier_route() + #success = sub() + #success = alu_hier_place() + #success = alu_hier_route() shellSuccess = 0 if not success: shellSuccess = 1