Get email delivery of the Cadence blog featured here
There have been a lot of interesting new customer-driven enhancements in the device-level routing space in Virtuoso® Layout Suite. To help you adopt these recently-released enhancements, especially for increasingly complex advanced node designs, we are happy to announce a short series of blogs to introduce the various new features—from manual and assisted routing to increased automation of routing tasks. Look out for the blogs about these new features over the next few months.
Have you ever worked with the Finish Trunk command and known its capabilities? In one step, the Finish Trunk command automatically converts the pathSeg that is being created using the Create Wire command into a trunk and then also runs Pin to Trunk routing.
This first blog in the series talks about features that are not new but capabilities that are ground-breaking and can support your device-level routing requirements for a design with the use of the Finish Trunk command. The current capabilities in the ICADVM18.1 ISR3 release are limited to a user-assisted flow using the Finish Trunk command.
To see how you can use the Finish Trunk command on a design that has width spacing patterns (WSPs) defined, has connectivity defined, and is set up to run the Pin to Trunk route flow, look at the video below.
Access the Finish Trunk command by starting the Create Wire command and then right-click the wire being created. Alternatively, you can use the bindkey 2.
One of the most powerful features of the Pin to Trunk routing is the Trunk Extending option that can be set either to One Direction or Both Directions. When you use set Trunk Extending to the Both Directions option and run the Finish Trunk command, the trunk is extended in both directions from the last canvas location of the wire being created. In addition, if you have selected the Trunk Trimming option (as is the case in the above video), the trunk connecting to the last pin is trimmed to the right and left of the last via of the wire.
The first image on the right shows how to access the Trunk Extending options from the Pin to Trunk toolbar. The image next to it shows the last pin in the row to the right and left of the wire to which the trunks will be extended and connected.
The images below show the routed results after the Finish Trunk command was executed with Trunk Extending set to Both Directions and Trunk Trimming option selected. Note that the yellow highlights indicate the last device pin in the row.
The resulting interconnect is converted to trunk objects, which means that you can use the EM Trunk Optimization feature to automatically fix EM violations. The image shown below is of the routed net, which has EM violations.
To fix these EM violations, use the EM Trunk Optimization feature. The following image shows the results of running the EM Trunk Optimization command, which has automatically fixed the EM violations on the routed net by adding and connecting additional trunks.
For more information on how to use the Finish Trunk command for both device-level and block-level designs and to perform EM Trunk optimization, check out the following RAKs available on the Cadence Support portal.
Stay tuned... the next blog in this series will cover more ways to improve the productivity of device-level routing for advanced nodes.
Virtuosity has been our most viewed and admired blog series for a long time that has brought to fore some lesser known, yet very useful software and documentation improvements, and also shed light on some exciting new offerings in Virtuoso. We are now expanding the scope of this series by broadcasting the voice of different bloggers and experts, who would continue to preserve the legacy of Virtuosity, and try to give new dimensions to it by covering topics across the length and breadth of Virtuoso, and a lot more… Click Subscribe to visit the Subscription box at the top of the page in which you can submit your email address to receive notifications about our latest Virtuosity posts.
John Wilkosz and Parul Agarwal (Team Virtuoso)