Claims
- 1. A method for performing a global timing analysis of a proposed digital circuit comprising:
receiving timing models and said proposed digital circuit; determining at least one mode of circuit operation of said proposed digital circuit; deriving a sub-circuit corresponding to each of said at least one mode of circuit operation; performing timing analysis on each of said sub-circuits derived corresponding to each of said modes; and combining the timing analysis results for all of said modes to determine an overall maximum circuit delay.
- 2. The method of claim 1 wherein said proposed digital circuit is received in the form of a circuit graph.
- 3. The method of claim 2 wherein said circuit graph includes components and interconnections between said components.
- 4. The method of claim 1 wherein said timing models are received for components and interconnections of said digital circuit.
- 5. The method of claim 4 wherein said timing models include timing edges and delays.
- 6. The method of claim 1 wherein said determination of at least one mode of circuit operation is performed by first determining control signals of said digital circuit.
- 7. The method of claim 1 wherein:
said digital circuit is received in the form of a circuit graph; said timing models include timing edges and delays; and said determination of at least one mode of circuit operation is performed by first determining control signals of said digital circuit.
- 8. The method of claim 7 wherein deriving a sub-circuit for each of said modes is done by:
applying values corresponding to each of said modes to said control signals; propagating said control signal values through the circuit graph for each of said modes; and removing disabled timing edges from the circuit graph to create modified circuit graph for each of said modes.
- 9. The method of claim 6 wherein said control signals are associated with those signals that control the sensitization of circuit paths with large delay.
- 10. The method of claim 6 wherein said modes of circuit operation include all possible combinations of control signal values.
- 11. The method of claim 6 wherein said modes of circuit operation are determined such that in each mode, the control signals that influence the sensitization of those circuit paths with large delay that are sensitized in this mode are assigned a 0 or a 1 value.
- 12. The method of claim 6 wherein said control signal values are one of a “0” or a “1”
- 13. The method of claim 8 further including:
disabling timing edges include those timing edges through which no signal propagates in each of said mode.
- 14. The method of claim 1 wherein said timing analysis is performed using Program Evaluation and Review Technique (PERT).
- 15. The method of claim 1 wherein said step of determining an overall maximum circuit delay includes:
identifying a mode containing a maximum delay.
- 16. The method of claim 1 wherein the proposed digital circuit is a circuit datapath that is controlled by a Finite-State Machine (FSM) based controller.
- 17. The method of claim 1 wherein the proposed digital circuit is a periodic circuit.
- 18. The method of claim 1 wherein the proposed digital circuit is a circuit produced as a result of software pipelining.
- 19. The method of claim 1 wherein the proposed digital circuit is a circuit produced as a result of modulo scheduling.
- 20. The method of claim 1 wherein the proposed digital circuit is produced by PICO-NPA synthesis.
- 21. A system for performing a global timing analysis of a proposed digital circuit comprising:
means for receiving timing models and said proposed digital circuit; means for determining at least one mode of circuit operation of said proposed digital circuit; means for deriving a sub-circuit corresponding to each of said at least one mode of circuit operation; means for performing timing analysis on each of said sub-circuits derived corresponding to each of said modes; and means for combining the timing analysis results for all of said modes to determine an overall maximum circuit delay.
- 22. The system of claim 21 wherein said proposed digital circuit is received in the form of a circuit graph.
- 23. The system of claim 22 wherein said circuit graph includes components and interconnections between said components.
- 24. The system of claim 21 wherein said timing models are received for components and interconnections of said digital circuit.
- 25. The system of claim 24 wherein said timing models include timing edges and delays.
- 26. The system of claim 21 wherein said determination of at least one mode of circuit operation is performed by first determining control signals of said digital circuit.
- 27. The system of claim 21 wherein said digital circuit is in the form of a circuit graph, said timing models include timing edges and delays; and said determination of at least one mode of circuit operation is performed by first determining control signals of said digital circuit.
- 28. The system of claim 27 further comprising:
means for deriving a sub-circuit for each of said modes, including:
means for applying values corresponding to each of said modes to said control signals; means for propagating said control signal values through the circuit graph for each of said modes; and means for removing disabled timing edges from the circuit graph to create modified circuit graph for each of said modes.
- 29. The system of claim 28 further including:
means for disabling timing edges include those timing edges through which no signal propagates in each of said mode.
- 30. The system of claim 21 wherein said timing analysis is performed using Program Evaluation and Review Technique (PERT).
- 31. The system of claim 21 wherein said means for determining an overall maximum circuit delay further includes:
means for identifying a mode containing a maximum delay.
- 32. The system of claim 21 wherein the proposed digital circuit is a circuit datapath that is controlled by a Finite-State Machine (FSM) based controller.
- 33. The system of claim 21 wherein the proposed digital circuit is a circuit produced as a result of software pipelining.
- 34. The system of claim 21 wherein the proposed digital circuit is a circuit produced as a result of modulo scheduling.
- 35. The system of claim 21 wherein the proposed digital circuit is produced by PICO-NPA synthesis.
- 36. A computer program product stored on computer readable media for performing a global timing analysis of a proposed digital circuit comprising:
code for receiving timing models and said proposed digital circuit; code for determining at least one mode of circuit operation of said proposed digital circuit; code for deriving a sub-circuit corresponding to each of said at least one mode of circuit operation; code for performing timing analysis on each of said sub-circuits derived corresponding to each of said modes; and code for combining the timing analysis results for all of said modes to determine an overall maximum circuit delay.
- 37. The computer program product of claim 36 wherein said proposed digital circuit is received in the form of a circuit graph.
- 38. The computer program product of claim 37 wherein said circuit graph includes components and interconnections between said components.
- 39. The computer program product of claim 36 wherein said timing models are received for components and interconnections of said digital circuit.
- 40. The computer program product of claim 39 wherein said timing models include timing edges and delays.
- 41. The computer program product of claim 36 wherein said code for determining at least one mode of circuit operation is performed by first determining control signals of said digital circuit.
- 42. The computer program product of claim 36 wherein:
said digital circuit is received in the form of a circuit graph; said timing models include timing edges and delays; and said code for determining at least one mode of circuit operation is performed by first determining control signals of said digital circuit.
- 43. The computer program product of claim 42 wherein deriving a sub-circuit for each of said modes is done by:
code for applying values corresponding to each of said modes to said control signals; code for propagating said control signal values through the circuit graph for each of said modes; and code for removing disabled timing edges from the circuit graph to create modified circuit graph for each of said modes.
- 44. The computer program product of claim 41 wherein said control signals are associated with those signals that control the sensitization of circuit paths with large delay.
- 45. The computer program product of claim 41 wherein said modes of circuit operation include all possible combinations of control signal values.
- 46. The computer program product of claim 41 wherein said modes of circuit operation are determined such that in each mode, the control signals that influence the sensitization of those circuit paths with large delay that are sensitized in this mode are assigned a 0 or a 1 value.
- 47. The computer program product of claim 43 further including:
code for disabling timing edges include those timing edges through which no signal propagates in each of said mode.
- 48. The computer program product of claim 36 wherein said code for determining an overall maximum circuit delay includes:
code for identifying a mode containing a maximum delay. 25136692.2
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] The present application is related to commonly assigned U.S. Patent Application Serial No. [Attorney Docket No. 100200560-1] entitled “METHOD FOR DESIGNING MINIMAL COST, TIMING CORRECT HARDWARE DURING CIRCUIT SYNTHESIS,” and U.S. Patent Application Serial No. [Attorney Docket No. 100200562-1] entitled “METHOD OF USING CLOCK CYCLE-TIME IN DETERMINING LOOP SCHEDULES DURING CIRCUIT DESIGN,” filed concurrently herewith, the disclosures of which are hereby incorporated by reference in their entireties.