Skip to content

Commit a70b8ff

Browse files
committed
Merge branch 'master' into resizer_determinism
2 parents beef2e7 + 12f5d70 commit a70b8ff

File tree

873 files changed

+1494753
-1404658
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

873 files changed

+1494753
-1404658
lines changed

.bazelversion

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
8.3.1
1+
8.5.0

.github/workflows/github-actions-clang-tidy.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
build_dir: "./build"
2222
cmake_command: cmake . -B build
2323
config_file: ".clang-tidy"
24-
exclude: "*/codeGenerator/templates/*,*/third-party/*"
24+
exclude: "*/codeGenerator/templates/*,third-party/*,test/orfs/*"
2525
split_workflow: true
2626
apt_packages: libomp-15-dev,libfl-dev,libyaml-cpp-dev
2727
- uses: The-OpenROAD-Project/clang-tidy-review/upload@master

MODULE.bazel

Lines changed: 5 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -18,24 +18,8 @@ git_override(
1818
remote = "https://github.com/bazelbuild/rules_scala",
1919
)
2020

21-
bazel_dep(name = "rules_verilator", version = "5.034")
22-
single_version_override(
23-
module_name = "rules_verilator",
24-
registry = "https://raw.githubusercontent.com/Pinata-Consulting/ascenium-registry/683f93e670a04f8d3d47316c42d197d8ac095a00/",
25-
version = "5.034",
26-
)
27-
28-
single_version_override(
29-
module_name = "verilator",
30-
registry = "https://raw.githubusercontent.com/Pinata-Consulting/ascenium-registry/683f93e670a04f8d3d47316c42d197d8ac095a00/",
31-
version = "5.034.ar.1",
32-
)
33-
34-
single_version_override(
35-
module_name = "systemc",
36-
registry = "https://raw.githubusercontent.com/Pinata-Consulting/ascenium-registry/683f93e670a04f8d3d47316c42d197d8ac095a00/",
37-
version = "3.0.1",
38-
)
21+
bazel_dep(name = "rules_verilator", version = "0.1.0")
22+
bazel_dep(name = "verilator", version = "5.036.bcr.3")
3923

4024
# Not all boost libs are available at the latest version yet, so use a
4125
# slightly older one that has all we need.
@@ -162,7 +146,7 @@ bazel_dep(name = "bazel-orfs")
162146
# To bump version, run: bazelisk run @bazel-orfs//:bump
163147
git_override(
164148
module_name = "bazel-orfs",
165-
commit = "06be7f48c85f3e66e4a79205a68ae2170be88273",
149+
commit = "287262398210ecc368e8cee1fbefddb02ac2e2f3",
166150
remote = "https://github.com/The-OpenROAD-Project/bazel-orfs.git",
167151
)
168152

@@ -171,10 +155,10 @@ orfs = use_extension("@bazel-orfs//:extension.bzl", "orfs_repositories")
171155
# To bump version, run: bazelisk run @bazel-orfs//:bump
172156
orfs.default(
173157
# Official image https://hub.docker.com/r/openroad/orfs/tags
174-
image = "docker.io/openroad/orfs:v3.0-4230-g26b521c49",
158+
image = "docker.io/openroad/orfs:v3.0-4350-g4e47ad013",
175159
# Use OpenROAD of this repo instead of from the docker image
176160
openroad = "//:openroad",
177-
sha256 = "8fc7ac130828053d7f0a9ad93ae8e3a74e9b24be6e76f9900f809ff93a80d005",
161+
sha256 = "2e09979b7ab7f8e797b50ad8baec1e26d66205ea5bd6ec1b4ddfc7b4e924eb2b",
178162
)
179163
use_repo(orfs, "com_github_nixos_patchelf_download")
180164
use_repo(orfs, "docker_orfs")

MODULE.bazel.lock

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

include/ord/OpenRoad.hh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -225,6 +225,7 @@ class OpenRoad
225225
void read3Dbv(const std::string& filename);
226226
void read3Dbx(const std::string& filename);
227227
void write3Dbv(const std::string& filename);
228+
void write3Dbx(const std::string& filename);
228229
void read3DBloxBMap(const std::string& filename);
229230

230231
void readDb(std::istream& stream);

src/OpenRoad.cc

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -495,6 +495,7 @@ void OpenRoad::read3Dbx(const std::string& filename)
495495
{
496496
odb::ThreeDBlox parser(logger_, db_, sta_);
497497
parser.readDbx(filename);
498+
parser.check();
498499
}
499500

500501
void OpenRoad::read3DBloxBMap(const std::string& filename)
@@ -507,6 +508,11 @@ void OpenRoad::write3Dbv(const std::string& filename)
507508
odb::ThreeDBlox writer(logger_, db_, sta_);
508509
writer.writeDbv(filename, db_->getChip());
509510
}
511+
void OpenRoad::write3Dbx(const std::string& filename)
512+
{
513+
odb::ThreeDBlox writer(logger_, db_, sta_);
514+
writer.writeDbx(filename, db_->getChip());
515+
}
510516
void OpenRoad::readDb(const char* filename, bool hierarchy)
511517
{
512518
try {

src/OpenRoad.i

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -383,6 +383,13 @@ write_3dbv_cmd(const char *filename)
383383
ord->write3Dbv(filename);
384384
}
385385

386+
void
387+
write_3dbx_cmd(const char *filename)
388+
{
389+
OpenRoad *ord = getOpenRoad();
390+
ord->write3Dbx(filename);
391+
}
392+
386393
void
387394
read_db_cmd(const char *filename, bool hierarchy)
388395
{

src/OpenRoad.tcl

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -191,6 +191,13 @@ proc write_3dbv { args } {
191191
ord::write_3dbv_cmd $filename
192192
}
193193

194+
proc write_3dbx { args } {
195+
sta::parse_key_args "write_3dbx" args keys {} flags {}
196+
sta::check_argc_eq1 "write_3dbx" $args
197+
set filename [file nativename [lindex $args 0]]
198+
ord::write_3dbx_cmd $filename
199+
}
200+
194201
sta::define_cmd_args "read_3dbx" {filename}
195202

196203
proc read_3dbx { args } {
@@ -423,7 +430,7 @@ proc place_inst { args } {
423430
}
424431

425432
if { [info exists keys(-name)] } {
426-
set inst_name [lindex $keys(-name) 0]
433+
set inst_name $keys(-name)
427434
} else {
428435
utl::error ORD 57 "-name is a required argument to the place_cell command."
429436
}

src/cts/include/cts/TritonCTS.h

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
#include <vector>
1414

1515
#include "odb/db.h"
16+
#include "odb/geom.h"
1617

1718
namespace utl {
1819
class Logger;
@@ -39,7 +40,8 @@ class Pin;
3940

4041
namespace stt {
4142
class SteinerTreeBuilder;
42-
}
43+
struct Tree;
44+
} // namespace stt
4345

4446
namespace cts {
4547

@@ -125,6 +127,11 @@ class TritonCTS
125127
void incrementNumClocks() { ++numberOfClocks_; }
126128
void clearNumClocks() { numberOfClocks_ = 0; }
127129
unsigned getNumClocks() const { return numberOfClocks_; }
130+
void cloneClockGaters(odb::dbNet* clkNet);
131+
void findLongEdges(
132+
stt::Tree& clkSteiner,
133+
odb::Point driverPt,
134+
std::map<odb::Point, std::vector<odb::dbITerm*>>& point2pin);
128135
void initOneClockTree(odb::dbNet* driverNet,
129136
odb::dbNet* clkInputNet,
130137
const std::string& sdcClockName,

0 commit comments

Comments
 (0)