Skip to content

Commit aaee345

Browse files
authored
Purgeodb.dbDatabase.create (#2146)
* Synchronize tool versions with OpenLane 2.1.1. * Downgrade Magic to 8.3.478: See RTimothyEdwards/magic#317 * Purge `odb.dbDatabase.create` from the codebase: See The-OpenROAD-Project/OpenROAD#4743
1 parent 679d5ba commit aaee345

File tree

7 files changed

+23
-25
lines changed

7 files changed

+23
-25
lines changed

flake.lock

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

flake.nix

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
};
2323

2424
inputs = {
25-
openlane2.url = github:efabless/openlane2/dev;
25+
openlane2.url = github:efabless/openlane2/2.1.1;
2626
};
2727

2828
outputs = {
@@ -50,9 +50,15 @@
5050
};
5151
openroad = pkgs.openroad.override {
5252
# openroad-rev-sha
53+
# https://github.com/The-OpenROAD-Project/OpenROAD/discussions/4743
5354
openroad-abc = self.openroad-abc;
5455
opensta = self.opensta;
5556
};
57+
magic = pkgs.magic.override {
58+
# https://github.com/RTimothyEdwards/magic/issues/317
59+
rev = "8.3.478";
60+
sha256 = "sha256-aFFKbSqIgpkYjFZfpW3C52N1yQc5+KiLyf5jC16K5UU=";
61+
};
5662
openlane1 = callPythonPackage ./default.nix {};
5763
default = self.openlane1;
5864
}
@@ -63,13 +69,5 @@
6369
});
6470
in
6571
self);
66-
67-
# devShells = self.forAllSystems (
68-
# pkgs: let
69-
# callPackage = pkgs.lib.callPackageWith (pkgs // self.packages.${pkgs.system});
70-
# callPythonPackage = pkgs.lib.callPackageWith (pkgs // pkgs.python3.pkgs // self.packages.${pkgs.system});
71-
# in rec {
72-
# }
73-
# );
7472
};
7573
}

scripts/odbpy/defutil.py

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -87,10 +87,7 @@ def merge_components(reader, donor_def, input_lef):
8787

8888

8989
def move_diearea(target_db, input_lef, template_def):
90-
source_db = odb.dbDatabase.create()
91-
92-
odb.read_lef(source_db, input_lef)
93-
odb.read_def(source_db.getTech(), template_def)
90+
source_db = OdbReader(input_lef, template_def).db
9491

9592
assert (
9693
source_db.getTech().getManufacturingGrid()
@@ -164,9 +161,7 @@ def relocate_pins(db, input_lef, template_def):
164161
# --------------------------------
165162
# 2. Read the donor def
166163
# --------------------------------
167-
template_db = odb.dbDatabase.create()
168-
odb.read_lef(template_db, input_lef)
169-
odb.read_def(template_db.getTech(), template_def)
164+
template_db = OdbReader(input_lef, template_def).db
170165
template_bterms = template_db.getChip().getBlock().getBTerms()
171166

172167
assert (

scripts/odbpy/reader.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,7 @@ class OdbReader(object):
2828

2929
def __init__(self, *args):
3030
if primary := OdbReader.primary_reader:
31-
self.db = odb.dbDatabase.create()
32-
self.db.setLogger(primary.design.getLogger())
31+
self.db = primary.design.createDetachedDb()
3332
else:
3433
self.ord_tech = Tech()
3534
self.design = Design(self.ord_tech)

tests/1007-buffer_insertion/hooks/post_run.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,11 @@
1414

1515
import os
1616
import odb
17+
from openroad import Tech, Design
1718

18-
db = odb.dbDatabase.create()
19+
ord_tech = Tech()
20+
design = Design(ord_tech)
21+
db = ord_tech.getDB()
1922
odb.read_db(db, os.getenv("CURRENT_ODB"))
2023
instances = db.getChip().getBlock().getInsts()
2124
buffers = [

tests/1413-odb_remover/hooks/post_run.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,11 @@
1414

1515
import os
1616
import odb
17+
from openroad import Tech, Design
1718

18-
db = odb.dbDatabase.create()
19+
ord_tech = Tech()
20+
design = Design(ord_tech)
21+
db = ord_tech.getDB()
1922
odb.read_db(db, os.getenv("CURRENT_ODB"))
2023
nets = db.getChip().getBlock().getNets()
2124
pins = db.getChip().getBlock().getBTerms()

tests/__main__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ def run_test_case(test_case):
124124

125125
result = subprocess.Popen(
126126
[
127-
"flow.tcl",
127+
os.path.join(openlane_root, "flow.tcl"),
128128
"-design",
129129
test_case,
130130
"-verbose",

0 commit comments

Comments
 (0)