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

cpu/rocket: change load path of generated verilog files #1878

Closed
wants to merge 1 commit into from

Conversation

inochisa
Copy link

@inochisa inochisa commented Jan 27, 2024

Since rocket-chip upstream switched to mill build, it can not generate a single verilog file, instead, it generate a lots of file in build directory. To save space, we do deduplication for the common file. This means that we need to load verilog file from different directory (common code and config specific).

Add all the path needed for generated verilog files.

related change: litex-hub/pythondata-cpu-rocket#6

Since rocket-chip upstream switched to mill build, it can not generate
a single verilog file, instead, it generate a lots of file in build
directory. To save space, we do deduplication for the common file.
This means that we need to load verilog file from different directory
(common code and config specific).

Add all the path needed for generated verilog files.

Signed-off-by: Inochi Amaoto <inochiama@outlook.com>
@gsomlo
Copy link
Collaborator

gsomlo commented Jan 27, 2024 via email

@inochisa
Copy link
Author

@gsomlo Great, let's wait the litex-hub/pythondata-cpu-rocket#6 and see what is needed.

@gsomlo
Copy link
Collaborator

gsomlo commented Mar 1, 2024

An experimental branch of pythondata-cpu-rocket has been created to support mill/firtool based builds, here: litex-hub/pythondata-cpu-rocket@master...mill-experimental

The corresponding LiteX changes will, for the time being, be available here: master...gsomlo:litex:rocket-mill-experimental

To reiterate some of the issues preventing the main/master branches from simply being updated:

  • the latest upstream rocket results in "bloated" verilog that requires significantly more LUTs than before (e.g., 4-core Linux variant no longer fits on the digilent nexys video board)
  • the latest upstream results in elaborated *.sv files that can't be loaded into yosys, which would remove support for ECP5 and the FOSS yosys/trellis/nextpnr toolchain.

Until these issues are resolved, we can experiment with the latest rocket upstream, but can not adopt it in an "official" capacity.

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

Successfully merging this pull request may close these issues.

None yet

2 participants