• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Blogs
  2. Analog/Custom Design
  3. Managing Inherited Connections with CPF in Virtuoso
AndreasLenz
AndreasLenz

Community Member

Blog Activity
Options
  • Subscribe by email
  • More
  • Cancel
CDNS - RequestDemo

Have a question? Need more information?

Contact Us
inherited connections
EDI
Low Power
mixed signal solution
CPF
analog
Mixed-Signal
encounter
Verilog
mixed signal physical implementation open access
Virtuoso
oa
Mixed signal physical implementation
mixed signal
OA: OpenAccess
mixed-signal design
Virtuoso environment
mixed signal implementation
design implementation
Common Power Format

Managing Inherited Connections with CPF in Virtuoso

23 May 2012 • 4 minute read

Let's assume you are managing a schematic-driven top level design in Virtuoso and you want to import a digital block Verilog netlist into Virtuoso. This is a very common use model in mixed-signal implementation. While the Layout Database is saved in Open Access (OA), the optimized Verilog netlist needs to be imported into Virtuoso.

  • Why use CPF?

The Common Power Format (CPF) describes the design power intent for the whole flow, including digital implementation in Encounter, custom/analog implementation in Virtuoso Schematic Editor, and further into simulation. In Virtuoso Schematic XL, CPF creates the inherited connections for you in an automated way. You may want to reuse the same CPF that was used for your digital block implementation in Encounter.

  • What might CPF contain?
    • Power domains with their shutoff conditions if applicable
    • Power and ground nets
    • Technology for low power: isolation cells, level-shifters (need to be registered as special cell in Virtuoso)
    • Isolation, shifting and retention policy
    • Power modes and analysis views
    • Library sets
    • Global connection
  • What does CPF not contain?

CPF is not a command file. It doesn't contain power domain coordinates, power routing details, number of power switches, or implementation details.

  • How can I handle the inherited connections ?

Within the Virtuoso IC 6.1.5 release it is possible to describe your low power intent through a CPF file. This posting describes the method according to the use model described above. Further information, including supported CPF commands, is available in the Virtuoso Schematic XL User Guide.

  • What are the requirements?

A consistent power intent for the analog and digital parts of your design is required. You could have explicit power pins and implicit net sets and net expressions defined in parallel.  CPF will update or create the net sets and expressions.

All of the power and ground nets (PG nets) in your design should have the signal type Power or Ground. The default signal type is Signal. This might be the case if you take a closer look at your standard cell library. Power and Ground nets are very often defined as type signal. Another requirement is that your standard cell power connection must be described as an inherited connection. Before you start, make sure that the CPF created is verified for correctness using the Cadence Conformal Low Power product.

And as mentioned before, you need Schematics XL to make use of CPF.

Step by Step introduction

  • Setup Schematics XL

After Verilog import Open Check - Rules Setup - Inherited Connections and enable the CPF nets error switch.

To verify the signal types choose Options - Check and enable "set Signal Type from Net and Type Registration."

Applying the right signal type

As mentioned above, we need to make sure to set the right signal type. Descend in the hierarchy by double clicking on a symbol until the standard cells occur. Are your PG nets defined as inherited connections, but the signal type is Signal? If so you need to change it. Because your standard cell library usually is set to read only, we need to change the cells in your design using the register API to provide a complete list of all your PG nets (don't miss the std cell PG nets):

ciRegisterNet("power" list("VDD" "vdd" "VDD!" "VDDA" "VDDD" ....) )

ciRegisterNet("ground" list("VSS" "vss" "VSS!" "GND" "gnd" ....) )

Now check if the PG Signal type gets applied correctly:

ciGetNetNames("power") ciGetNetNames("ground")

Finally we use the Check - Hierarchy command to propagate the changes to the schematic. Don't enable save schematics since you may don't have write access to the Library

Shortcut: schHiCheckHier()

 

  • Import the CPF file

Open "File - Import Power Intend" or type schHiAddCPFNetSets() in the CIW command line to open the CPF import form. Library, Cell and View Name are already filled in. The View Name List may be changed by adopting by editing "Options - Check - Views to check.

Specify your CPF File name

Use ‘Register Special Low Power cells' for Isolation cells , Level shifter cells, Power switches, ...Use ‘Remove existing Power Intend' if you are not sure which power is defined and you want to rebuild the power connection. The alternative is to use "Edit - Power Intend - Remove netSet properties." The progress is logged in CIW and CDS.log files.

Again, the last step is to propagate the power intent through the hierarchies and we use "Check - Hierarchy."

  • Verify the power intent

After importing and applying the CPF file you may want to verify the created power intent. To verify the created power domains, rules, mappings ... Enable "Window - Assistant - Power Intend Export" for a review.

To verify the created inherited connections on a specific instance open "Edit- Net Expressions - Available properties" and select a block or instance.

If you want to verify the evaluated names from net expressions open "Edit- Net Expressions - Evaluated Names."  In case you want to review which instances are connected to a PG net, use the Search assistant to search for a net and check the User properties.

 

Kind Regards,

Andreas Lenz 

 


CDNS - RequestDemo

Try Cadence Software for your next design!

Free Trials

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information