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

Updating delay model #6

Open
tanvir-a opened this issue Mar 19, 2020 · 2 comments
Open

Updating delay model #6

tanvir-a opened this issue Mar 19, 2020 · 2 comments
Assignees
Labels
enhancement New feature or request

Comments

@tanvir-a
Copy link

At this moment the generated VPR model adds some fake delay. I would like to update with more realistic dealy. What are the steps for that? For example, right now I got a more accurate delay from the layout of the RTL model, and want to update the PRGA for that.

@angl-dev
Copy link
Collaborator

Yes, this is on my long-term todo list. My plan was to add another delegate class (similar to the FASMDelegate class) that "answers" questions about the timing. One possible implementation of this delegate could be reading timing info from a timing report generated by STA tools, or reading a pre-processed timing database.

Specifically, there are three categories of timing: 1) primitive timing, e.g. LUT delay, 2) intra-block switch delay, and 3) routing channel switch delay. The first two categories are simple to deal with, but for the last one, things are a bit complicated. If the switch delays are constrained before layout, you may use the constraint value to define a tag in VPR's rrg.xml, and refer to that in each <rr_edge>. If the switch delays are measured after layout, I recommend you quantitize the switches and classify them into a few speed classes. Create tags for each speed class and then refer to them in each <rr_edge>.

In addition, some big changes are undergoing in the dev branch, and the RTL generation is slightly different. If you've progressed far into ASIC backend, we can have more discussion on how to deal with timing model. But if you can switch over to the dev branch, we can work on the timing model together. If you're interested, we can schedule a virtual meeting and I can go over the changes in the dev branch.

@angl-dev
Copy link
Collaborator

Besides, which type of configuration circuitry are you using?

@angl-dev angl-dev self-assigned this Mar 20, 2020
@angl-dev angl-dev added the enhancement New feature or request label Mar 20, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants