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

Process directories in repo root #1

Open
stdavids opened this issue Oct 16, 2019 · 4 comments
Open

Process directories in repo root #1

stdavids opened this issue Oct 16, 2019 · 4 comments
Assignees
Labels
question Further information is requested

Comments

@stdavids
Copy link
Collaborator

Inside each of the designs is a tcl/hard/ directory which is supposed to be how designs express differences from processes. What are the benefits of also having the full design separated at the root of the repository as well?

@stdavids stdavids added the question Further information is requested label Oct 16, 2019
@dpetrisko
Copy link
Collaborator

Yeah, that’s a good point. I did it this way just because they were already separated this way, but I think your proposal makes more sense

@dpetrisko
Copy link
Collaborator

One benefit would be if the designs change by generation — just as we have separate repos per tapeout, the RTL might change per process node. But by virtue of these being “scratch designs”, it might be okay to break previous designs as we work on current designs

@stdavids
Copy link
Collaborator Author

It's an interesting point about RTL changes that process specific. Naively one would want to say that RTL is totally process agnostic but in reality we know that is not totally true for well optimized designs. I think for the most part we try and abstract those differences in basejump STL. It is fairly rare for the RTL inside of a design to be process specific.

@dpetrisko
Copy link
Collaborator

Yeah, I agree. My point is less that the RTL changes actually because of the process node and more that when the RTL changes, it breaks TCL scripts because of renaming, different mems, etc.

Since we only typically work on a process node at a time, what will probably end up happening is a scratch design will have 1 functional TCL/hard folder and several broken ones. But I think this is fine because it’s a scratch design, so needing to be slightly touched up is acceptable.

One idea to fix the problem is to have different commit tags per process in the Makefile.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants