editor's blog
Subscribe Now

Optimizing Power at the Architecture Level

When Mentor handed their flagship HLS product, Catapult C, to Calypto almost a year ago, there were a lot of questions about the move. There could be technical, financial, personnel, all kinds of reasons.

Well, at least from a technical standpoint, Calypto just announced what they say was the driving factor: the natural synergy between Catapult C and the Calypto tools. In particular, their PowerPro tool, used for optimizing power.

Automated power optimization typically happens at a low level – typically using netlists (although analysis is moving up to the RTL level). But the real gains are to be had at the architectural level, which is far above RTL even. It’s the realm of untimed C/C++ and SystemC. It’s also the realm of HLS (high-level synthesis, more or less used synonymously with electronic system-level, or ESL). Which is where Catapult C plays.

So they’ve put the two together in a product they’re calling Catapult LP. While the standard Catapult SL can optimize area and performance, it can’t optimize power along with it. Catapult LP does all three by integrating PowerPro under the hood so that it can go figure out what the power will be for a given configuration.

Of course, in order for this to work, Catapult C has to generate RTL out of the high-level code, and then  that RTL has to be synthesized into gates for the low-level power work. Calypto actually has their own RTL synthesis engine which they say can match Synopsys DC results within 15%, which is close enough for architectural level estimation. Yes, they are tracking a tool that’s out of their control, but, realistically, Synopsys isn’t changing DC much these days, so it’s unlikely that there will be much work trying to keep up with the Synopsys updates.

So the designer can create one or more architectural configurations and then have the tool go figure out which one has the lowest power. While the RTL is synthesized in a feed-forward manner for area and performance based on constraints, the power element is managed in a feedback manner.  The gate-level representation can be optimized for clock gating etc. so that those effects can be included in the power estimate, but, at a high level, the designer generates the different options and then selects the one that’s lowest power (of the ones that meet the other constraints). The designer can influence the accuracy and run time through what Calypto calls an “elastic engine” that can be set to select either bit-level or word-level solvers, the former being more accurate but slower.

You can find more information in their release.

Leave a Reply

featured blogs
May 24, 2019
It's Memorial Day in the US on Monday, and Cadence is off. So today is the day before a holiday. By tradition, I write about...whatever I feel like. So let's go with figures of speech. Even... [[ Click on the title to access the full blog on the Cadence Community s...
May 23, 2019
The Role Of EDA In AI Achieving Effective Verification and Validation of Vehicle E/E Systems – Part 4 Signal Integrity and high-speed design challenges: interview with Mentor’s Todd Westerhoff Designing For The Edge Benefits of a Digitalization Strategy for Electr...
May 23, 2019
Everybody loves webcasts, right? While some may view webcasts as these kids in Ferris Bueller’s class, others love the on-demand technical education available via this popular medium. In an attempt to appeal to the second group, Samtec is pleased to announce a new Chalk...
Jan 25, 2019
Let'€™s face it: We'€™re addicted to SRAM. It'€™s big, it'€™s power-hungry, but it'€™s fast. And no matter how much we complain about it, we still use it. Because we don'€™t have anything better in the mainstream yet. We'€™ve looked at attempts to improve conven...