use --recursive on git submodule not --remote - one does a "latest update"
[soclayout.git] / experiments9 / coriolis2 / settings.py
1 # -*- Mode:Python -*-
2
3 import Cfg
4 from Hurricane import DataBase, Cell, Instance, Net
5 from CRL import AllianceFramework, RoutingLayerGauge
6 import CRL
7 import Viewer
8 from helpers.overlay import CfgCache
9 from helpers import overlay, l, u, n
10 import symbolic.cmos45 # do not remove
11 import os
12
13 import LibreSOCMem, pll
14 LibreSOCMem.setup()
15 pll.setup()
16
17 if 'CELLS_TOP' in os.environ:
18 cellsTop = os.environ['CELLS_TOP']
19 else:
20 cellsTop = '../../../alliance-check-toolkit/cells'
21
22 db = DataBase.getDB()
23 af = AllianceFramework.get()
24
25
26 with CfgCache('', priority=Cfg.Parameter.Priority.UserFile) as cfg:
27 cfg.misc.catchCore = False
28 cfg.misc.info = False
29 cfg.misc.paranoid = False
30 cfg.misc.bug = False
31 cfg.misc.logMode = True
32 cfg.misc.verboseLevel1 = True
33 cfg.misc.verboseLevel2 = True
34 cfg.anabatic.edgeLenght = 24
35 cfg.anabatic.edgeWidth = 8
36 cfg.anabatic.topRoutingLayer = 'METAL5'
37 cfg.etesian.graphics = 3
38
39 #cfg.katana.searchHalo = 30
40 #cfg.katana.eventsLimit = 1000000
41 #cfg.katana.hTracksReservedLocal = 7
42
43 # Run 2 (make-cgt-2.log)
44 #cfg.etesian.effort = 2
45 #cfg.etesian.uniformDensity = True
46 #cfg.etesian.spaceMargin = 0.05
47 #cfg.etesian.aspectRatio = 1.0
48 #cfg.katana.vTracksReservedLocal = 4
49 #cfg.katana.hTracksReservedLocal = 4
50
51 # Run 3 (make-cgt-3.log)
52 #cfg.etesian.effort = 2
53 #cfg.etesian.uniformDensity = False
54 #cfg.etesian.spaceMargin = 0.05
55 #cfg.etesian.aspectRatio = 1.0
56 #cfg.katana.vTracksReservedLocal = 5
57 #cfg.katana.hTracksReservedLocal = 5
58
59 # Run 4 (make-cgt-4.log)
60 #cfg.etesian.effort = 2
61 #cfg.etesian.uniformDensity = True
62 #cfg.etesian.spaceMargin = 0.05
63 #cfg.etesian.aspectRatio = 1.0
64
65 # Run 5 (make-cgt-5.log)
66 #cfg.etesian.effort = 2
67 #cfg.etesian.uniformDensity = True
68 #cfg.etesian.spaceMargin = 0.05
69 #cfg.etesian.aspectRatio = 1.0
70
71 # Run 6 (make-cgt-6.log) copy from benchs/6502/cmos45/coriolos2/settings
72 cfg.etesian.effort = 2
73 cfg.etesian.uniformDensity = True
74 cfg.etesian.spaceMargin = 0.3
75 cfg.etesian.aspectRatio = 1.0
76 cfg.etesian.bloat = 'nsxlib'
77 cfg.katana.searchHalo = 4
78
79 cfg.katana.useGlobalEstimate = False
80 cfg.katana.vTracksReservedLocal = 7
81 cfg.katana.hTracksReservedLocal = 6
82 cfg.katana.bloatOverloadAdd = 4
83 cfg.conductor.stopLevel = 0
84 cfg.conductor.maxPlaceIterations = 2
85 cfg.conductor.useFixedAbHeight = False
86
87 env = CRL.AllianceFramework.get().getEnvironment()
88 env.setCLOCK( '^ck|^pll_clk|^jtag_tck$' )
89 env.addSYSTEM_LIBRARY(library=cellsTop+'/niolib',
90 mode=CRL.Environment.Prepend )
91 env.addSYSTEM_LIBRARY(library=cellsTop+'/nsxlib',
92 mode=CRL.Environment.Prepend )
93 env.setPOWER ('vdd')
94 env.setGROUND('vss')
95
96 Viewer.Graphics.setStyle('Alliance.Classic [black]')
97
98 print( ' o Successfully run "<>/coriolis2/settings.py".' )
99 print( ' - CELLS_TOP = "{}"'.format(cellsTop) )
100