Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Converting to use BLOCKs results in bazel looking for Liberty file in wrong location #92

Closed
jeffng-or opened this issue Aug 20, 2024 · 1 comment

Comments

@jeffng-or
Copy link
Collaborator

In #91, I've done the following:

  • Updated orfs to v3.0-1160
  • Updated BUILD.bazel to extract the RAM names and pass them to ORFS using the BLOCKS variable

It looks like the RAM names are passed correctly, since I see:

[INFO][FLOW] Invoked hierarchical flow.
Block ebtb_128x40 needs to be hardened.
Block array_256x128 needs to be hardened.
Block dataArrayB_256x64 needs to be hardened.
Block regfile_128x64 needs to be hardened.
Block regfile_128x65 needs to be hardened.
Block tag_array_64x184 needs to be hardened.
Block tag_array_64x168 needs to be hardened.
Block table_256x48 needs to be hardened.
Block table_128x52 needs to be hardened.
Block table_128x44 needs to be hardened.
Block btb_128x56 needs to be hardened.
Block meta_128x120 needs to be hardened.
Block lb_32x128 needs to be hardened.
Block sdq_17x64 needs to be hardened.
Block data_2048x8 needs to be hardened.
Block mem_256x4 needs to be hardened.
Block meta_40x240 needs to be hardened.

But, the bazel build BoomTile_floorplan fails with:

Error: read_liberty.tcl, 25 cannot read file ./results/asap7/BoomTile_ebtb_128x40/base/ebtb_128x40.lib.

The correct lib location is

bazel-bin/results/asap7/ebtb_128x40/base/ebtb_128x40.lib

I also see lots of warnings before we get to the failure point like:

external/bazel-orfs~~orfs_repositories~docker_orfs/OpenROAD-flow-scripts/flow/Makefile:379: target 'bazel-out/k8-fastbuild/bin//objects/asap7/BoomTile/base/lib/ebtb_128x40.lib' given more than once in the same rule

But, I'm not sure if that's getting in the way, so sharing this info in case @oharboe has an intuition on the issue.

@maliberty FYI.

@oharboe
Copy link
Collaborator

oharboe commented Aug 20, 2024

See update to PR, "BLOCKS" is a Makefile only construct in ORFS, bazel-orfs sets MACROS, so simply remove the code that sets "BLOCKS".

What motivated you to set "BLOCKS"?

@oharboe oharboe closed this as not planned Won't fix, can't repro, duplicate, stale Sep 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants