System and method for applying timing models in a static-timing analysis of a hierarchical integrated circuit design
First Claim
1. A circuit design system, comprising:
- a network coupled to a plurality of data storage devices, the data storage devices containing a knowledge base that defines an integrated circuit design;
a computer coupled to the network, the computer including logic for receiving information defining an integrated circuit representation from the plurality of data storage devices; and
a memory element associated with the computer, the memory element configured to store logic, the logic configured to generate one or more static-timing scripts that reflect a plurality of timing models responsive to one or more sentry registers inserted along conductors that traverse a boundary of a functional block within the circuit design and the expected signal timing behavior of a signal that traverses the conductor, the logic further configured to generate a static timing run script and structured timing data, wherein the static timing scripts, the static timing run script, and the structured timing data are forwarded to a static timing engine for execution.
10 Assignments
0 Petitions
Accused Products
Abstract
A system and method for automating a static-timing analysis of an integrated circuit design are provided. A representative system includes a network coupled to a plurality of data storage devices, the data storage devices containing a knowledge base that defines an integrated circuit design; a computer coupled to the network, the computer including logic for receiving information defining an integrated circuit representation from the plurality of data storage devices; and a memory element associated with the computer, the memory element configured to store logic, the logic configured to generate static-timing scripts that reflect a plurality of timing models. A representative method includes the following steps: acquiring circuit information, the circuit information comprising a plurality of functional blocks; identifying a timing model to apply to each of the plurality of functional blocks; defining the hierarchical relationships between each of the plurality of functional blocks; extracting the circuit information responsive to the identifying and defining steps to complete a simulation of each of the plurality of functional blocks; and forwarding the simulation to a static-timing engine.
48 Citations
36 Claims
-
1. A circuit design system, comprising:
-
a network coupled to a plurality of data storage devices, the data storage devices containing a knowledge base that defines an integrated circuit design;
a computer coupled to the network, the computer including logic for receiving information defining an integrated circuit representation from the plurality of data storage devices; and
a memory element associated with the computer, the memory element configured to store logic, the logic configured to generate one or more static-timing scripts that reflect a plurality of timing models responsive to one or more sentry registers inserted along conductors that traverse a boundary of a functional block within the circuit design and the expected signal timing behavior of a signal that traverses the conductor, the logic further configured to generate a static timing run script and structured timing data, wherein the static timing scripts, the static timing run script, and the structured timing data are forwarded to a static timing engine for execution. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method for automating static-timing analysis of an integrated circuit representation, the method comprising the steps of:
-
acquiring circuit information, the circuit information comprising a plurality of functional blocks and a plurality of conductors coupling the functional blocks, wherein the functional blocks are modeled by a subset of the plurality of conductors, a respective subset defined by those conductors that traverse a border of each respective functional block;
identifying a timing model to apply to each of the plurality of functional blocks responsive to at least one sentry register inserted along a conductor at the boundary of a functional block and the expected signal timing behavior of a signal that traverses the conductor;
defining the hierarchical relationships between each of the plurality of functional blocks;
extracting the circuit information responsive to the identifying and defining steps to complete a simulation of each of the plurality of functional blocks; and
forwarding one or more static-timing scripts, a static timing run script, and structured timing data to a static-timing engine. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
-
27. A computer-readable medium having a program for automatically configuring a static-timing engine to statically time an integrated circuit design, the program comprising:
-
logic configured to receive a representation of the integrated circuit at a functional block level;
logic configured to identify hierarchical relationships between a plurality of functional blocks of interest;
logic configured to identify each of a plurality of conductors that traverse a border of the functional blocks of interest;
logic configured to model the plurality of conductors by inserting a sentry register at a location where the conductor traverses a border of a functional block and the expected signal timing behavior of a signal that traverses the conductor;
logic configured to generate a plurality of static-timing scripts, a static timing run script, and structured timing data, the static-timing scripts configured to populate a plurality of timing models, each of the timing models configured to simulate the operation of a corresponding functional block; and
logic configured to forward the plurality of static-timing scripts, the static timing run script, and structured timing data to a static timing engine. - View Dependent Claims (28, 29, 30)
-
-
31. A computer aided circuit design tool, comprising:
-
means for acquiring a representation of an integrated circuit;
means for communicating hierarchical relationships within the representation at a functional block level;
means for identifying which of a plurality of interchangeable timing models should be applied in a static-timing analysis of the integrated circuit, wherein each of the interchangeable timing models is responsive to at least one sentry register inserted along a conductor at the boundary of a functional block and the expected signal timing behavior of a signal that traverses the conductor;
means for populating each of the interchangeable timing models; and
means for forwarding a plurality of static-timing scripts, a static timing run script, and structured timing data to a static timing engine.
-
-
32. A method for generating a run script configured to automate a static-timing analysis of an integrated circuit representation using a static timing engine, the method comprising the steps of:
-
configuring child block representations associated with each child block associated with a functional block of interest;
generating a top-level circuit representation responsive to at least one sentry register inserted along a conductor at the boundary of the functional block of interest and the expected signal timing behavior of a signal that traverses the conductor;
applying parasitic values to the top-level circuit representation; and
translating information stored in an integrated circuit knowledge base into a format compatible with a static timing engine, the format comprising one or more static timing scripts, a static timing run script, and structured timing data. - View Dependent Claims (33, 34, 35, 36)
-
Specification