• 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. Automated Digital Block Implementation Using Virtuoso
LayoutWolf
LayoutWolf

Community Member

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

Have a question? Need more information?

Contact Us
VSR
Virtuoso Custom Placer
Virtuoso
Custom IC Design
VCP

Automated Digital Block Implementation Using Virtuoso

27 Mar 2009 • 2 minute read
Have you ever found yourself laying out a digital block in Virtuoso where you have so many standard cells to place and route that you wish you could use an automated tool to place and route those cells? Maybe you even at one point considered using a Big-Digital P&R tool like Encounter Digital Implementation System (EDI System) to place and route this digital block, but then decided against it since you are not familiar with EDI System or since the block is small enough that you decide you can hand place and route it faster than figuring out how to use a different tool to do it.  For very large digital blocks, it may indeed be best to use a P&R tool like EDI System. But for smaller digital blocks, you may want to consider staying in Virtuoso and taking advantage of the automated placement and routing features available in Virtuoso Layout Suite-GXL through Virtuoso Custom Placer and Virtuoso Custom Router in IC6.1.3.

I have found that the combination of Virtuoso's placer and router is very powerful for implementing smaller digital standard cell blocks. The placer can be used to create rows and then place the standard cells within the rows along with filler cells, much like a Big-Digital P&R placement tool. After placement, the router can be used to route the digital block. I have developed a demo that shows how Cadence's placement and routing technology can be used to quickly place and route a small digital block that has about 200 standard cells within just a few minutes. I have been showing this flow to several customers in Asia and North America and the feedback has been very positive.  

The setup required for such a flow is straight forward. Assuming you already have a complete technology file with all required spacing rules for the technology node you are working on, there are only a few other things to make sure are setup:

  • Component Types (Std Cell component type must be defined for your standard cells and filler cells)

  • VirtuosoDefaultSetup constraint group must have the proper valid router layers and vias defined for routing

After that, you can use the Placement Planning utility to create the  power rails and rows that will be used to place your standard cells in. After the rows are created, you can used the Auto Placement GUI to run the custom digital placer. For my block with 5 rows and 200 standard cells, the placer ran in just under a minute. It is quite impressive to see how fast  the placer runs. After placement, you can use the router to route the design.  For this design, the router ran in about 5 minutes. I had a completely placed androuted digital block in under 10 minutes.

If you need to quickly place and route a small digital block, it would be worthwhile to look at Virtuoso's Custom Placer and Space-Based Router in IC6.1.3 to place and route the block.

-John Wilkosz


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