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

Single Port Memories #1610

Merged
merged 195 commits into from
Feb 20, 2024
Merged

Single Port Memories #1610

merged 195 commits into from
Feb 20, 2024

Conversation

andrewb1999
Copy link
Collaborator

This is definitely still a work in progress, mostly need to fix all the frontend test cases. Will need to coordinate with all the frontends too.

@rachitnigam
Copy link
Contributor

@EclecticGriffin is this a hard change to make in the interpreter?

@EclecticGriffin
Copy link
Collaborator

This shouldn't be too hard to implement in the interpreter, the only weirdness being that some adjustments will be needed in the SeqMem state-machine since there's no longer an explicit error state if I'm understanding things correctly. I can handle that today probably if desired

@EclecticGriffin
Copy link
Collaborator

Okay took care of the interpreter side, though I can't be sure there aren't any obvious mistakes until whatever is upsetting the parser is fixed

@andrewb1999
Copy link
Collaborator Author

Not exactly sure why the parser is failing here (and I don't have enough experience with the parser to debug this). Any ideas @rachitnigam ?

@EclecticGriffin
Copy link
Collaborator

EclecticGriffin commented Jul 19, 2023

my guess is that it has to do with the static annotation? I'm not clear on whether or not the old style is fully deprecated yet, but the parser does treat static as a keyword and so might be mis-parsing because of that? Here's a stupid idea, try reordering the annotations so that the static attribute is never the first one. I think the repeated attribute parsing might not explode then?

@rachitnigam
Copy link
Contributor

Weird error!

@rachitnigam
Copy link
Contributor

Ah, missing comma after content_en is the problem! Normally, if you forget commas, error locations become really inscrutible!

@rachitnigam
Copy link
Contributor

Should be fixed now!

@rachitnigam
Copy link
Contributor

Remaining failures seem legitimate. We also need to update Dahlia to use the right ports. Maybe we can recruit @calebmkim's help on this

@calebmkim
Copy link
Contributor

Yeah I can try to implement a fix for Dahia... should be pretty simple.

@calebmkim
Copy link
Contributor

One thing I'm noticing is that we should change the @write_together annotations. Right now write_data and write_en are required to be driven together, but we shouldn't necessarily require that, since if we want to read, we would drive write_en to 0, and not set write_data.

I think we probably want the following ports driven together: content_en, write_en, and all the address ports. Any time you set content_en to high, you should specify a) whether to read/write and b) which memory addresses to access.

@rachitnigam
Copy link
Contributor

This is getting stale. @andrewb1999 what are the specific blockers to getting this merged?

@andrewb1999
Copy link
Collaborator Author

I was mostly just waiting for front end changes to make sure this won't break stuff, but yeah this is getting stale now. I'm happy to fix the staleness of it but before I do that we should make sure we are ready to merge and fix any issues that may arise with frontends.

@rachitnigam
Copy link
Contributor

@andrewb1999 sorry for the slow turnaround on this! Let's start the process of merging it. We can handle the Dahlia side of things. I think getting this done will also unblock #1261 which we should do soon.

rachitnigam and others added 4 commits February 16, 2024 11:11
I found broken links to fud and the interpreter. Easy fixes!
* comb components in clk and reset insertion

* update changelog
@rachitnigam
Copy link
Contributor

Pushed fixes to this branch! Should be ready to merge once the tests pass.

@rachitnigam
Copy link
Contributor

Blocked by #1919

@rachitnigam
Copy link
Contributor

Ready to merge now!

@rachitnigam rachitnigam enabled auto-merge (squash) February 18, 2024 06:07
@rachitnigam rachitnigam linked an issue Feb 18, 2024 that may be closed by this pull request
@rachitnigam
Copy link
Contributor

Ugh, we'll need to update the outputs from the relay test suite but I don't have that working on my machine...

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.

Default assignments for non-@data ports