-
Notifications
You must be signed in to change notification settings - Fork 615
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Import memory files inline for Verilog generation #1805
Conversation
I believe this CI failure is unrelated. I intend to look into it today. |
CI failure is fixed in chipsalliance/firrtl#2112, so once that's merged we can rerun 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 looks great. I have a couple of minor suggestions and a meta point for @mwachs5 about that Wiki link.
src/main/scala/chisel3/util/experimental/LoadMemoryTransform.scala
Outdated
Show resolved
Hide resolved
src/main/scala/chisel3/util/experimental/LoadMemoryTransform.scala
Outdated
Show resolved
Hide resolved
This annotation adds memory import with inline generation for the emmiter. Supports both readmemh and readmemb statements based on argument.
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! Nice work!
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 annotation adds memory import with inline generation for the emmiter. Supports both readmemh and readmemb statements based on argument. (cherry picked from commit 9ea57e0)
This annotation adds memory import with inline generation for the emmiter. Supports both readmemh and readmemb statements based on argument. (cherry picked from commit 9ea57e0) Co-authored-by: Carlos Eduardo <carlosedp@gmail.com>
This annotation adds memory import with inline generation for the
emmiter.
Supports both readmemh and readmemb statements based on argument.
This PR depends on FIRRTL version with merged PR chipsalliance/firrtl#2107.
Example code:
Generated Verilog:
Contributor Checklist
docs/src
?Type of Improvement
API Impact
This change adds a new annotation method supporting load memory files inline in generated Verilog code. No impacts to existing methods or API.
Backend Code Generation Impact
The change adds inline memory read statements to generated Verilog backend.
Desired Merge Strategy
Release Notes
(addition) Added
loadMemoryFromFileInline
annotation inchisel3.util.experimental
to allow loading hex and bin memory files inline in Verilog emitter backend(#1805)Reviewer Checklist (only modified by reviewer)
Please Merge
?