Get email delivery of the Cadence blog featured here
We'd like to welcome guest writer Yanyan Qiao from our Cadence Japan AE team. Many thanks for her contribution!
Today analog design has become very challenging. Analog circuit designers need tools which can provide deep insight into circuit behavior. The MMSIM simulator family provides device check functions, as well as static circuit topology checks and dynamic behavior check functions for typical design problem verification. Virtuoso Analog Design Environment (ADE) is capable of generating these check statements which are applied during simulation and collecting the output results to give a detailed graphic interpretation.
Before IC_6.1.7, Virtuoso ADE supported a post-processing GUI function for device checks (assert statements): Violation Display. Users could access a text report table of “Violations Summary” and “Violation Detail” which are collected from simulation output. The “Highlight” button under the “Violations Summary” table helped to locate the device in the design for which the specific violation was reported.
In IC_6.1.7, Violation Display has been replaced by a more powerful and comprehensive GUI function: Results-Checks/Asserts View. The new function is available in Virtuoso ADE XL, ADE Explorer, and ADE Assembler. It not only supports device checks, but also static and dynamic checks. It is an easy-to-use filter function to sort out violation reports as required by the user. Hyperlinks are embedded in the table to provide handy access to desired details: waveforms of selected violation items, detailed explanation, related device or node location in design, etc.
Designers who are used to applying hundreds/thousands of check statements can get great benefit from the new filter function:
1) Results-Checks/Asserts View is a text report table with the top row serving as a simple data filter. It works just like the data filter of Excel; users can select any item from the pull-down list. Filtered results can be further refined by other data filters or “Violation Filter” function stated later.
For example, users can select dyn_highz check from the top data filter of the “Type” column, then apply a user-defined (customized) filter of specified start time on previous filtered results.
2) Table contents can also be controlled by “Violation Filter,” which is above the right-hand side of the table. By default, filters are listed for each type of check statement available from simulation results.
3) Users can create their own filter rules using simple logic expressions noted in the linked manual below; wild cards are supported. User-customized filters will be shown in the Violation Filter list for selection.
Query Operators for custom filters
For example, users can make a simple filter if they are interested in multiple check statements.
4) The Violation Filter list is also available in the “violations” type outputs setup. Users can select from the list to display information in the traditional Results->Detail view.
Please enjoy the new function and feel free to share your experience.