Thanks for your opinion. Automatic power reduction solutions are capable of improvements based on the information captured in the design (and simulation. CPF/UPF etc). In addition, by analyzing power graphs, memory operation graphs, enable scorecards etc designers can make architectural level judgments and improvements, whose intent in not captured in the design. Such exploration capabilities, tied with good power estimation capabilities can help designers to do several "what if" analysis and fine tune their RTL for power very effectively.
As Engineering Director for Calypto’s PowerPro product, I’d like to add a few comments to Siddharth's blog.
Let’s not forget what the “A” stands for in EDA. Automation is what allows engineers to design faster, smaller and lower power products with less time. I do agree with Siddharth that designers want control on what to patch in their design but they also want RTL power optimizations to be presented to them versus just showing activity charts and letting them figure what to do with those numbers. Message from engineers is pretty consistent, focus on finding more opportunities for power saving automatically since this produces results in hours versus weeks for guided-only flows. Of course it’s important to have both automatic and guided flows since they both have a place in optimizing for power. A "true" automated solution should take away the need for RTL maintenance from the user by taking care of all the requirements of RTL design (ECO, verification, integration to back-end flows etc).
There is a good value in RTL Power Analysis as it lets you spot places/blocks where to focus. Calypto’s products also focus on showing the engineer the specific RTL optimization which will yield possible savings, automatic then takes care of the rest. For a good read on methodology leveraging automatic and guided flows read the DATE 2012 conference paper "PowerAdviser: An RTL
Power Platform For Interactive Sequential Optimizations" where the user has shown how the
advice from guided mode can help drive automatic optimizations to achieve more power savings.
I agree. Push button methods are great for things like automatic clock gating, but it's difficult to imagine a tool that could understand your design and its application modes well enough to recommend architectural-level things you might have missed -- for example, creating a new power domain for a chunk of logic that can be shut off in certain modes. At least for now, humans are necessary for some of those system-level trade-offs and analyses.