question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Verify that mux tree generation results in good QoR

See original GitHub issue

Right now we’re generating code like addr == 3 ? elt3 : (addr == 2 ? elt2 : (addr == 1 ? elt1 : elt0)). Verify that Design Compiler does a good job with that, as compared to balanced trees (addr[1] ? (addr[0] ? elt3 : elt2) : (addr[0] ? elt1 : elt0)) and explicit decoding ((addr == 3 ? elt3 : 0) | (addr == 2 ? elt2 : 0) | (addr == 1 ? elt1 : 0) | (addr == 0 ? elt0 : 0)).

Issue Analytics

  • State:closed
  • Created 6 years ago
  • Comments:16 (14 by maintainers)

github_iconTop GitHub Comments

1reaction
aswatermancommented, Apr 14, 2017

It would be genuinely surprising if they do anything smarter than the reflective pattern I mentioned. When there’s more time, I’ll verify that; but since DC is doing a good job already, this is a decidedly lower priority issue than I thought.

1reaction
aswatermancommented, Apr 13, 2017

I think it varies from issue to issue, and relying on synthesis tools is the right approach for some things (e.g., datapath synthesis with redundant forms, like computing a*b+c).

Agreed that all Chisel utils should be audited for QoR.

Not sure about the mux vs. case matter; I’m going to look into it.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Automatic QoR Suggestions and ML Strategies - 2022.2 English
If ML strategies exist before the run is started, the RQS file can be set using the RQS_FILES property. At the end of...
Read more >
IC Compiler is for place and route and it is used after synthesis ...
Use the check_legality -verbose command to verify that the placement is legal. Running clock tree synthesis on a design that does not have...
Read more >
Best Practices using Synopsys Fusion Technology to Achieve
Each generation brings faster performance and new infrastructure-specific features ... Architected to Deliver Fastest Convergence and Best QoR.
Read more >
Clock Tree Power Analysis - NTNU Open
The goal of this exploration is to illustrate trade-offs and examine how the different options affect the synthesis results. Synthesis results on a...
Read more >
Fast and Accurate Estimation of Quality of Results in High ...
quality of results (QoR) achieved by FPGA-targeted designs. Inaccurate. HLS estimates prevent designers from performing meaningful design.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found