mirror of
https://github.com/VLSIDA/OpenRAM.git
synced 2026-09-07 03:12:12 +02:00
tech: Make power_grid configurable
this is the first step to allow engineers, porting technologies, more room for routing their handmade cells. For now, we don't allow the specification of power_grids where the lower layer prefers to be routed vertically. This is due to the router not connecting some pins properly in that case. Signed-off-by: Bastian Koppelmann <[email protected]>
This commit is contained in:
@@ -148,14 +148,21 @@ class sram_base(design, verilog, lef):
|
||||
if not OPTS.route_supplies:
|
||||
# Do not route the power supply (leave as must-connect pins)
|
||||
return
|
||||
elif "m4" in tech.layer:
|
||||
# Route a M3/M4 grid
|
||||
from supply_grid_router import supply_grid_router as router
|
||||
rtr=router(self.m3_stack, self)
|
||||
elif "m3" in tech.layer:
|
||||
from supply_tree_router import supply_tree_router as router
|
||||
rtr=router(("m3",), self)
|
||||
|
||||
grid_stack = set()
|
||||
try:
|
||||
from tech import power_grid
|
||||
grid_stack = power_grid
|
||||
except ImportError:
|
||||
# if no power_grid is specified by tech we use sensible defaults
|
||||
if "m4" in tech.layer:
|
||||
# Route a M3/M4 grid
|
||||
grid_stack = self.m3_stack
|
||||
elif "m3" in tech.layer:
|
||||
grid_stack =("m3",)
|
||||
|
||||
from supply_grid_router import supply_grid_router as router
|
||||
rtr=router(grid_stack, self)
|
||||
rtr.route()
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user