Method of using a four-state simulator for testing integrated circuit designs having variable timing constraints
First Claim
1. In a system for performing timing analysis on circuit designs having different timing constraints for multiple parallel paths, a computer-implemented method comprising the steps of:
- (a) clearing the state of the circuit design;
(b) setting control lines in the circuit design to a selected set of control signals;
(c) identifying blocking points of the circuit design to be flagged for timing analysis by simulating the circuit design with said selected set of control signals as input signals;
(d) adding said blocking points to a list, said list identifying paths in the circuit design to be analyzed and further indicating portions of the circuit design to be disregarded during timing analysis;
(e) repeating steps (a)-(d) for all possible sets of control signals; and
(f) performing timing analysis on the circuit design using said lists.
9 Assignments
0 Petitions
Accused Products
Abstract
Method for performing critical path timing analysis on a circuit design having different timing constraints for multiple parallel paths. Method includes clearing the state of the circuit design, setting control lines in the circuit design to a selected set of control signals, and identifying blocking nets of the circuit design to be flagged for timing analysis by simulating the circuit design with the selected set of control signals as input signals. Identified blocking points are added to a list which identifies paths in the circuit design to be analyzed. All possible sets of control signals are processed. Timing analysis is then performed on the circuit design using the list as input data. A critical step is the identification of the blocking points. Blocking points are identified for each net input to a gate in the circuit design having an unknown value, and a known value on an output net from the gate for the selected set of control signals. Blocking points input to the timing analysis tool ensure that these nets are analyzed during critical path timing analysis, so all possible timing violations in the circuit design are detected.
-
Citations
17 Claims
-
1. In a system for performing timing analysis on circuit designs having different timing constraints for multiple parallel paths, a computer-implemented method comprising the steps of:
-
(a) clearing the state of the circuit design; (b) setting control lines in the circuit design to a selected set of control signals; (c) identifying blocking points of the circuit design to be flagged for timing analysis by simulating the circuit design with said selected set of control signals as input signals; (d) adding said blocking points to a list, said list identifying paths in the circuit design to be analyzed and further indicating portions of the circuit design to be disregarded during timing analysis; (e) repeating steps (a)-(d) for all possible sets of control signals; and (f) performing timing analysis on the circuit design using said lists. - View Dependent Claims (2, 3)
-
-
4. A system for performing timing analysis on a circuit design of a circuit including nets and components, wherein predetermined ones of the components are state devices, the circuit further having control lines to control the transfer of data signals from ones of the state devices to others of the state devices, the circuit including paths, each path comprising nets and components that interconnect a driving one of the state devices and a receiving one of the state devices and whereby the driving one of the state devices can propagate a signal to the receiving one of the state devices, ones of the paths being parallel paths, wherein each of the parallel paths is associated with at least one other parallel path, the parallel paths which are associated each drive the same state device and have a different maximum allowable propagation delay from one another such that the paths which are associated have different timing constraints, the system for performing timing analysis on the circuit design, comprising:
-
storage means for storing identifiers of paths in a circuit design to be analyzed; simulation means coupled to said storage means, said simulation means for associating a predetermined initial logical state with each net and each state device in said circuit design, for setting control lines in said circuit design to a selected logical state, for identifying blocking points of the circuit design to be flagged for timing analysis by simulating said circuit design with said selected set of control lines set to said selected logical state and utilized as input signals, and for storing said blocking points in said storage means; and timing analysis means coupled to said storage means for performing timing analysis on the circuit design using said blocking points, whereby each of said blocking points indicates paths of the circuit to be temporarily disregarded during timing analysis. - View Dependent Claims (5, 6, 7, 8, 9)
-
-
10. In an electronic design automation system for performing timing analysis on integrated circuit designs having gates and nets, ones of the gates being state devices receiving a clock signal, ones of the nets being control lines for controlling the transfer of data signals from ones of the state devices to other ones of the state devices, the integrated circuit design further including paths including gates and nets, ones of the paths being parallel paths such that each of the parallel paths is associated with at least one other parallel path and the associated parallel paths each drives the same one of the state devices, and wherein ones of the associated parallel paths have different timing constraints, a computer-implemented method, comprising the steps of:
-
(a) writing timing notes to direct boolean simulation and timing analysis processing on an integrated circuit design; (b) clearing the state of nets in said integrated circuit design; (c) setting control lines in said integrated circuit design to a selected set of control signals; (d) setting a timing delay constraint for paths selected by said selected set of control signals; (e) creating a block list for storing identifiers of nets of said integrated circuit design to be flagged for timing analysis; (f) identifying blocking points by simulating said integrated circuit design with said selected set of control signals as input signals, said blocking points identifying which paths of the integrated circuit design are not to be processed during timing analysis; (g) recording the identification of said blocking points within said block list; (h) repeating steps (b)-(g) for all possible sets of control signals; (i) performing critical path timing analysis on said integrated circuit design, said block lists identifying which paths in the integrated circuit design are to be analyzed and which paths are to be temporarily ignored; and (j) reporting any timing violations detected by step (i). - View Dependent Claims (11)
-
-
12. A system for performing timing analysis on a representation of a circuit design including nets and further including parallel paths having different timing constraints, comprising:
-
identification means for identifying ones of the nets as control lines which control the transfer of data signals within the circuit design; simulation means coupled to said identification means for receiving the identification of said control lines, said simulation means for initializing the representation of the circuit design to a predetermined initial state, for setting ones of said control lines to a predetermined logical state, and for performing boolean simulation to identify ones of the paths in the circuit design which do not affect the operation of the circuit design when said control lines are set to said predetermined logical state, said identified ones of the paths being designated as unselected paths; and timing analysis means coupled to said storage means for receiving identities of said unselected paths, and for performing timing analysis on the representation of the circuit design without analyzing said unselected paths. - View Dependent Claims (13, 14)
-
-
15. In an electronic design automation system for performing timing analysis on a circuit design having combinational logic components, state devices, and nets, the circuit design further including paths which include those combinational logic components and nets which may provide a signal from an associated driving one of the state devices to an associated receiving one of the state devices, ones of the paths being parallel paths such that each of the parallel paths is associated with at least one other parallel path and the associated ones of the parallel paths each drive the same one of the state devices and have timing delay constraints which are different from each other, a computer-implemented method comprising the steps of:
-
(a) writing timing notes to indicate ones of the nets which are control signals; (b) setting the state of nets and state devices in said circuit design to a predetermined initial state; (c) setting selected ones of said control signals to a predetermined logical state; (d) setting a timing delay constraint for paths selected by said selected ones of said control signals when said ones of said control signals are set to said predetermined logical state; (e) performing boolean simulation to identify those paths of said circuit design which are not selected by said ones of said selected control signals when said selected ones of said control signals are set to said predetermined logical state; (f) recording the identities of the paths identified in step (e) in a block list which is associated with said predetermined logical state of said selected ones of said control signals; (g) repeating steps (b)-(f) for all possible logical states of said control signals; (h) designating all paths in the circuit design as not being blocked paths; (i) designating all paths recorded in a selected one of said block lists as blocked paths within the circuit design; (j) performing timing analysis to locate timing violations existing in the circuit design, said critical path timing analysis temporarily disregarding said blocked paths; and (k) repeating steps (h)-(j) for each of said block lists created in said steps (b)-(f). - View Dependent Claims (16, 17)
-
Specification