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

Extend ShiftRegisterMem with single-port SRAM implementation #8

Merged
merged 2 commits into from
Dec 21, 2022
Merged

Extend ShiftRegisterMem with single-port SRAM implementation #8

merged 2 commits into from
Dec 21, 2022

Conversation

milovanovic
Copy link
Contributor

Add a single-port SRAM implementation of ShiftRegisterMem. Tests are adjusted accordingly.

Furthermore, it is demonstrated that ShiftRegisterMem with dual-port SRAM implementation does not have the same behavior across different Chisel3 versions. An issue and feature request related to this topic are opened inside Chisel3 repository (bug & feature request).

@jerryz123 jerryz123 self-requested a review December 21, 2022 09:54
Copy link
Contributor

@jerryz123 jerryz123 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can approve this for now, since the banked implementation looks plausible. Still, the implementation using dual-ported SRAM should be fixed to not rely on SyncReadMem read data being held.

I'm not sure I understand why the expected output is changed. That should be invariant of what the underlying implementation is, right?

FYI chisel-testers/iotesters is EOL, replaced by chiseltest. At some point we will bump Chisel to a point where the tests need to be migrated (if at all).

@milovanovic
Copy link
Contributor Author

You're right the second commit also fixes the dual-port SRAM implementation. So in my opinion by merging this, we'll kill both flies.

@jerryz123
Copy link
Contributor

I'm a bit concerned about the changes to the tests here, but I don't want to delay this further.

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