- •Contents
- •Introduction
- •About These Application Notes
- •What Is a Cell?
- •Cell Interconnect Delays
- •What Is Delay Back Annotation?
- •What Is Delay Calculation?
- •Prerequisites and Related Reading
- •Creating a Back Annotator
- •The Programming Language Interface (PLI) Mechanism
- •PLI Access Routines
- •Access Routine Families
- •Required UTILITY Routines
- •Access to Timing Information
- •Effect of Source Protection
- •Where to Look for More Information
- •Back Annotating Delays
- •Examples Used in This Chapter
- •Retrieving a Handle to the Object Associated with the Delay
- •Retrieving a Handle to a Net
- •Retrieving a Handle to a Module Path Delay
- •Retrieving a Handle to a Timing Check
- •Annotating the Delay
- •Determining How and Where to Place Delays
- •Annotating to Cells with Path Delays
- •Annotating to Cells with Lumped or Distributed Delays
- •Libraries with Mixed Cell Timing Descriptions
- •Annotating to Timing Checks
- •Calculating Delays
- •Examples Used in This Chapter
- •Scanning Cell Instances Within the Design
- •Determining the Scope of the Delay Calculation
- •Scan Methodology
- •Scanning Objects Within the Cell Instance
- •Relationship to Modeling Methodology
- •Scanning Path Delays
- •Scanning Cell Output Ports
- •Libraries with Mixed Cell Timing Descriptions
- •Types of Data Needed
- •Coding Data into Cell Descriptions (Attributes)
- •Retrieving Cell I/O Load Factors
- •Load Due to Interconnect Wire
- •Calculating and Annotating the Delays
- •Calculating the Delays
- •Annotating the Delays
- •Example Listings
- •Delay Back Annotators
- •Cell Output Nets to Lumped or Distributed Delay Cells
- •Interconnect Nets to Lumped or Distributed Delay Cells
- •Cell Output Nets to Path Delay Cells
- •Interconnect Nets to Path Delay Cells
- •Delay Calculators
- •Creating and Extracting Data From a Hash Table
- •Random Cell Scan and Cell Output Nets
- •Random Cell Scan and Cell Interconnect Nets
- •Delay Calculation Driven by Cell Output Nets
- •Delay Calculation Driven by a Cell Interconnect Nets
- •Index
Back Annotation and Delay Calculation
2
Creating a Back Annotator
The Programming Language Interface (PLI) Mechanism
To create your own custom delay back annotator or delay calculator within a Veritool, use the Programming Language Interface mechanism to associate your C-language routines with a new Verilog HDL system task or function name.
This process consists of the following four steps:
1.Write one or more C-language routines that use the PLI access routines to perform the delay back annotation or delay calculation function.
2.Fill in the veriusertfs data structure in the C-language source file veriuser.c. This file is provided with the Veritool release; the data structure provides a cross-reference between the new system task or function name and your C-language routines.
3.Run vconfig (the Veritool configuration program) to create a script for your system that compiles your C-language routines and links a new Veritool executable that includes these routines (and thus the new system task or function).
4.Run the script created by vconfig to link the new Veritool executable.
When you have completed this process, you call the new system task or function from your
Verilog HDL source description. During simulation, the Veritool passes control to your C- language routines to perform delay back annotation or delay calculation. Figure 2-1 on page 14 illustrates this connection.
October 2000 |
13 |
Product Version 3.2 |