I’ve shied away from getting into the power format wars – honestly, the whole question kind of bores me. I think everyone can agree that specifying your power intent in a single file that drives all the tools in the flow is a good thing. The specifics of which create_power_domain is used are less interesting.
But I think it is important to see how this whole thing was created, since it represents one of the more interesting developments in EDA in the past few years.
CPF began as an initiative in the RTL Compiler team in 2005. RC had introduced Low Power features the previous year, including isolation cell and level shifter cell insertion, and true top down Multi-Mode, Multi-Library synthesis. But the team was surprised that customers were slow to adopt this technology. They asked customers, and soon figured out that the main reason was because there was no real mechanism to validate that the power spec was correct. Since the isolation cells change the functionality, that new functionality needs to be tested. Without a way to ensure that the cells have the right values, there was just too much risk to the adoption.
Now, people had been working around this risk for a while, using home-grown PLI routines or even just force statements. But these techniques are limited and are costly to maintain. With the increased emphasis on LP design, a different, more structured technique was needed. And so the concept of a single power spec, driving every tool in the chain was born. This represented a significant investment for Cadence. In addition to developing a spec to drive a complete RTL to GDSII flow, all the tools in the flow would need to be updated and enhanced.
By the second quarter of 2006, a draft spec was ready and the initial tool implementations were available for deployment. Something like 300 person-years was spent to bring the prototype low power flow to customers. But the team realized that the flow needed industry test cases and validation. The spec needed to be proven, and needed experienced designer’s eyes on it. As a result, the Power Forward Initiative (PFI) was founded. The original ten members included AMD, ATI, ARM, NXP, Freescale, Fujitsu, NEC Electronics, Applied Materials, and TSMC. These are industry leaders who have a strong need for more automation in advanced low-power techniques. The PFI members agreed to review the spec and provide feedback that would refine the CPF specification and how it interacted with the tool chain. In addition, they agreed to do real projects, Proof Point Projects, to validate the requirements.
During the next 6 months, the PFI team provided over 500 separate inputs into the specification team. These new requirements and suggestions dramatically changed the spec, adding support for hierarchy, increased wildcards, tighter specification, and many other items. In addition, the first chip using CPF taped out around the end of 2006. This first tapeout proved the concepts and value of the single spec concept. There were real problems found in simulation, and real productivity enhancements.
By the end of 2006, the PFI team realized that the specification was production worthy and a standardization process was needed to take CPF to the next level of adoption. The decision was made to transfer the spec to Si2 for industry standardization. A Low Power Coalition (LPC) was set up inside Si2 to manage future updates to the spec. Si2 is now responsible for the specification with member companies having well –defined role in defining CPF’s evolution. At the same time, PFI membership grew – additional companies joined, including some EDA companies, additional design service companies, and more fabs. Currently, PFI membership stands at 36. PFI continues to do Proof Point Projects, proving new and advanced concepts in power specification for a range of design applications and low-power IP.In my next post, I’ll talk about the future of CPF.
Si2 Low Power Coalition
Power Forward Initiative