whoops forgot settings.py
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Tue, 13 Apr 2021 13:50:45 +0000 (13:50 +0000)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Tue, 13 Apr 2021 13:50:45 +0000 (13:50 +0000)
experiments10_verilog/coriolis2/settings.py
experiments10_verilog/freepdk_c4m45/coriolis2/settings.py [new file with mode: 0644]
experiments10_verilog/freepdk_c4m45/doDesign.py

index 807fae0a0bef368f905a664d66ae139d6054e8ae..e4e3362cd24142fed2499339a92f84548000a38a 100644 (file)
@@ -54,7 +54,6 @@ with overlay.CfgCache(priority=Cfg.Parameter.Priority.UserFile) as cfg:
     cfg.etesian.aspectRatio = 1.0
     cfg.anabatic.edgeLenght = 24
     cfg.anabatic.edgeWidth = 8
-    cfg.anabatic.routingGauge = 'FlexLib'
     cfg.anabatic.topRoutingLayer = 'METAL5'
     cfg.katana.eventsLimit = 4000000
     cfg.etesian.effort = 2
diff --git a/experiments10_verilog/freepdk_c4m45/coriolis2/settings.py b/experiments10_verilog/freepdk_c4m45/coriolis2/settings.py
new file mode 100644 (file)
index 0000000..cc10a52
--- /dev/null
@@ -0,0 +1,44 @@
+# -*- Mode:Python -*-
+
+import os
+import socket
+import helpers
+
+NdaDirectory = None
+if os.environ.has_key('NDA_TOP'):
+    NdaDirectory = os.environ['NDA_TOP']
+if not NdaDirectory:
+    hostname = socket.gethostname()
+    if hostname.startswith('lepka'):
+        NdaDirectory = '/dsk/l1/jpc/crypted/soc/techno'
+        if not os.path.isdir(NdaDirectory):
+            print '[ERROR] You forgot to mount the NDA encrypted directory, stupid!'
+    else:
+        NdaDirectory = '/users/soft/techno/techno'
+helpers.setNdaTopDir( NdaDirectory )
+
+import Cfg
+from   CRL     import AllianceFramework
+from   helpers import overlay, l, u, n
+from   NDA.node45.freepdk45_c4m import techno, FlexLib, LibreSOCIO
+
+techno.setup()
+FlexLib.setup()
+LibreSOCIO.setup()
+
+with overlay.CfgCache(priority=Cfg.Parameter.Priority.UserFile) as cfg:
+    cfg.misc.catchCore           = False
+    cfg.misc.minTraceLevel       = 12300
+    cfg.misc.maxTraceLevel       = 12400
+    cfg.misc.info                = False
+    cfg.misc.paranoid            = False
+    cfg.misc.bug                 = False
+    cfg.misc.logMode             = True
+    cfg.misc.verboseLevel1       = True
+    cfg.misc.verboseLevel2       = True
+    cfg.etesian.graphics         = 3
+    cfg.etesian.spaceMargin      = 0.10
+    cfg.katana.eventsLimit       = 4000000
+    af  = AllianceFramework.get()
+    env = af.getEnvironment()
+    env.setCLOCK( '^sys_clk$|^ck|^jtag_tck$' )
index 3de3798b48ec46ab49538157beee8437e2bc2550..262884269ec43445ce154903a1fbaa0f5ae77ff9 100644 (file)
@@ -31,8 +31,8 @@ def scriptMain ( **kw ):
     """The mandatory function to be called by Coriolis CGT/Unicorn."""
     global af
     rvalue = True
-    coreSize   = u(3*90.0)
-    chipBorder = u(4*214.0 + 10*13.0)
+    coreSize   = u(3.5*90.0)
+    chipBorder = u(4.5*214.0 + 10*13.0)
     try:
         helpers.setTraceLevel( 550 )
         cell, editor = plugins.kwParseMain( **kw )
@@ -76,6 +76,7 @@ def scriptMain ( **kw ):
         adderConf.cfg.etesian.spaceMargin = 0.05
         adderConf.cfg.anabatic.searchHalo = 2
         adderConf.cfg.anabatic.globalIterations = 20
+        adderConf.cfg.anabatic.routingGauge = 'FlexLib'
         adderConf.cfg.anabatic.topRoutingLayer = 'METAL5'
         adderConf.cfg.block.spareSide = u(7*13)
         #adderConf.cfg.chip.padCoreSide = 'North'