A few of the large companies have a level of ABV where designers are required to use pragmas or comments in their designs. These are then post processed to automatically add simple one or two cycle assertions….and in some cases bind files.
To its credit Zocalo embarked on a significant market analysis to determine the major reasons why ABV is not in wide spread use. They found that:
- Time and cost to determine where assertions are required.
- New designs…where do I start and how many is enough?
- Legacy code and IP...rigid assessment is measured in terms of days or weeks.
- Lack of information for management to determine cost of adding assertions.
- Lack of metrics for management to determine:
- Progress in adding assertions.
- Quality of assertions.
- Effectiveness of assertions use.
- Assertion use is limited to simple assertions versus more powerful and useful assertion because:
- Complexity of language for coding assertions.
- Time and effort to debug a complex assertion.
Mr. Martin tells me that " Formal users have no choice relative to providing complex temporal properties. We provide the ability to write this level of property easily, thereby eliminating one of the issues that has kept formal from wide spread use. However, formal has other challenges such as capacity problems and the general idiosyncrasies of each formal technology tool. Properties must therefore be optimized to address these issues as well."
The present Zazz architecture consists of four functional components that implement the following capabilities.
- Zazz Bird Dog - Analyzes the design and rank orders the most important candidate signals that assertions should be considered for. Signals that already have legacy properties are recognized and automatically them as assertion candidates.
- Zazz Metrics - Provides the project team with an on-going progress report about the quantity and quality of the assertions added versus those targeted for adding assertions to. Historical reports on completed functional blocks provide a baseline for measuring the value of using assertions to reduce debug time. If legacy properties are part of the design code, they are automatically included as part of the metrics.
- Zazz Visual SVA - Provides the ability to create and debug all levels of assertion complexity without learning the SVA language. Visual SVA completely eliminates the long learning time typically associated with becoming proficient with and retaining the skills required to write properties with the SVA language. Visual SVA also provides dynamic control of assertions and automatic bind file management and documentation.
- Zazz Assertion Library Support - Makes using assertion libraries fast and easy while providing automatic bind file management and documentation. In addition to supporting OVL and libraries from the major EDA vendors, user defined assertion libraries can be added to Zazz.
Visual SVA insures that creating assertions at all levels of complexity (simple 1 or 2 cycle, complex temporal multi threaded or end to end properties) is an easy to learn intuitive process. Visual SVA frees the user to focus on describing the intent of the design rather than the complexities of the SVA language. Visual SVA's GUI consists of a canvas representing time scale from left to right and threads from top to bottom. Widgets, representing the operations associated with creating a property, are dragged and dropped on the canvas and automatically connected. A typical approach to building an assertion is to start with a simple assertion and add complexity based on interacting with the design hierarchy and recognizing additional scenarios that can take place that need to be checked as part of the property. As complexity of the assertion is increased, at any time by user command, an assertion testbench is automatically created, executed and presented for viewing via the user's wave form viewer. The resulting wave forms allow the user to almost immediately examine the output for the intended results.
For a company offering a point tool, it is important that it be easily incorporated in the design flow existing at its potential customers. The Zazz Assertion Library supports Accellera's Open Verification Library (OVL), Cadence's IAL, Mentor's QVL and Synopsys' SVA _CG. Multiple libraries may be used together. Additionally support for custom assertion libraries is available. Zocalo also supports both OVM (Cadence and Mentor) and VMM (Synopsys) verification methodologies. Accellera has for the last year and a half been working on uniting these two methods into a single one called the Universal Verification Methodology (UVM). Zocalo fully intends to support it. Without any level of automation, manual use of assertion libraries to describe a property can take significant time. The probability of an error is high adding additional time to the process.
When asked about future plans for his company, Mr. Martin said: "Today we are focusing on simulation based ABV. However, in the future we see this market as a potential opportunity to partner with a formal provider with the objective to address property optimization." This observation is a mature realization of the difficulties faced by small EDA companies to reach a significant market presence even when growing at a double digits rate year after year.
« Previous Page 1 | 2
You can find the full EDACafe.com event calendar here.
To read more news, click here.
-- Gabe Moretti, EDACafe.com Contributing Editor.