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

Tywaves crashes with SRAMInterface of 0 number of ports #44

Open
rameloni opened this issue Oct 27, 2024 · 3 comments
Open

Tywaves crashes with SRAMInterface of 0 number of ports #44

rameloni opened this issue Oct 27, 2024 · 3 comments
Assignees
Labels
bug Something isn't working internals-circt The issue is related to the internals of CIRCT

Comments

@rameloni
Copy link
Owner

This issue continues the conversation in #42.

Tywaves fails when generating debug information with some Chisel default constructs. This is a failing example that @bathtub-01 discovered here (#42). Firtool raises a stack dump error while using an SRAMInterface.

val io = IO(new SRAMInterface(64, UInt(4.W), 0, 0, 2))
io :<>= SRAM(64, UInt(4.W), 0, 0, 2)
@rameloni rameloni added bug Something isn't working internals-circt The issue is related to the internals of CIRCT labels Oct 27, 2024
@rameloni rameloni self-assigned this Oct 27, 2024
@rameloni
Copy link
Owner Author

After running a few more experiments I noticed that the error raises when "0 ports" are used in the SRAMInterface.
In fact, the following code works fine with 0.4.2-SNAPSHOT:

val io = IO(new SRAMInterface(64, UInt(4.W), numReadPorts = 1, numWritePorts = 1, numReadwritePorts = 2))
io :<>= SRAM(64, UInt(4.W), numReadPorts = 1, numWritePorts = 1, numReadwritePorts = 2)

But the following configuration fails:

val io = IO(new SRAMInterface(64, UInt(4.W), numReadPorts = 0, numWritePorts = 1, numReadwritePorts = 2))
io :<>= SRAM(64, UInt(4.W), numReadPorts = 0, numWritePorts = 1, numReadwritePorts = 2)

@rameloni rameloni changed the title Firtool fails with SRAMInterface Tywaves crashes with SRAMInterface of 0 number of ports Oct 27, 2024
@rameloni
Copy link
Owner Author

rameloni commented Oct 27, 2024

@bathtub-01 I fixed it. It's not available yet, I'd like to run more experiments first before creating a new release (#45). Let me know if you would need to test it soon. If it's the case I will release a tmp binary that you can use.

@bathtub-01
Copy link

@bathtub-01 I fixed it. It's not available yet, I'd like to run more experiments first before creating a new release (#45). Let me know if you would need to test it soon. If it's the case I will release a tmp binary that you can use.

Thank you so much. I think I am OK to wait for your formal release :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working internals-circt The issue is related to the internals of CIRCT
Projects
None yet
Development

When branches are created from issues, their pull requests are automatically linked.

2 participants