-
Notifications
You must be signed in to change notification settings - Fork 651
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
Ibex integration #979
Ibex integration #979
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Couple of comments:
- Have you tried a multi-core Ibex configuration? If it doesn't work then we should prevent there being multiple cores from being instantiated.
- Have you tried a heterogeneous setup? Ibex + Rocket... etc. Similar to above, then we should prevent this using something like
requires
docs/Generators/Ibex.rst
Outdated
|
||
.. Warning:: The Ibex mtvec register is 256 byte aligned. When writing/running tests, ensure that the trap vector is also 256 byte aligned. | ||
|
||
.. Warning:: The Ibex reset vector is located at 0x80. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Isn't the more appropriate thing to say is that the reset vector is located at ADDRESS+OFFSET where OFFSET is 0x80.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, that sounds more correct. I'll fix it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like the CI is failing the tutorial setup and the core tests. Can you rebase these changes on the most recent dev
branch? Also, can you fix the tutorial setup, you probably just need to re-generate the git diff patch.
079d70f
to
0c16243
Compare
Looks like the CI is still failing, can you double check that this config builds in Verilator properly? |
4e498c8
to
91a6133
Compare
3563b34
to
6ed99ff
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since there is no Ibex PR I'll put the comments here:
- Can you improve the Ibex README to be more like the https://github.com/ucb-bar/nvdla-wrapper and https://github.com/ucb-bar/cva6-wrapper
- Can you add a comment in the Makefile for why you need the
sed
fix/hack.
@@ -252,6 +252,13 @@ jobs: | |||
group-key: "group-cores" | |||
project-key: "chipyard-sodor" | |||
timeout: "30m" | |||
chipyard-ibex-run-tests: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What's going on with all the .circleci
files being deleted?
.circleci/run-tests.sh
Outdated
@@ -100,6 +100,9 @@ case $1 in | |||
chipyard-sodor) | |||
run_asm ${mapping[$1]} | |||
;; | |||
chipyard-ibex) | |||
run_bmark ${mapping[$1]} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wait... why does this pass? Shouldn't the bmarks be RV64... not RV32 (and thus should break)?
.github/README.md
Outdated
@@ -0,0 +1,137 @@ | |||
Chipyard Continuous Integration (CI) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This file shouldn't exist (was renamed in the most recent dev
work).
- As similar as possible to the circle ci code. - The `.github/README.md` file has a fair amount of documentation for this. - Creates a worfklow file - re-uses most of the circleci/scipts unchanged - defines a number of *Composite Actions* which are like YML subroutines - Removes the circle-ci code - Points the CI badge in the top level README to use the GA test result
Address PR comments
6ed99ff
to
ab520e4
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Pending CI passing.
Type of change: new feature
Impact: software change
Release Notes
Integrate the SystemVerilog embedded core Ibex into Chipyard. This change adds the necessary Chisel wrapper module and adds Ibex to the Chipyard configurations. Documentation and CI updates are also included.
There was a also a change to the testchipip bootrom that I had to make in order to have Ibex boot correctly within Chipyard. See the pull request here: ucb-bar/testchipip#136