Multi-mode scheduler for clock tree synthesis
AssigneeSynopsys, Inc.
InventorsAiqun Cao, Ssu-Min Chang
Life of this patent
Estimating the term…
Abstract
Techniques and systems for performing clock tree synthesis (CTS) across multiple modes are described. Some embodiments traverse one or more clock trees from the root of each clock tree to a set of sinks of the clock tree. During the traversal, each clock gate can be marked with a traversal level, and each sink can be marked with one or more clocks and one or more modes that are associated with the sink. A task queue can then be created based on the information collected during the clock tree traversal and populated with different types of tasks based on skew balancing requirements across different modes, and the task queue can be provided to a CTS engine to achieve high-quality skew-balanced clock trees across all modes.
Claims15
A method for performing clock tree synthesis (CTS), the method comprising:
- traversing one or more clock trees from the root of each clock tree to a set of sinks of the clock tree, wherein said traversing is performed across different clocks and modes;
- wherein while performing said traversing, marking each clock gate with a traversal level, and marking each sink with one or more clocks and one or more modes that are associated with the sink;
- creating a task queue for a CTS engine, wherein each task is associated with a clock gate, and wherein tasks are scheduled in the task queue in decreasing traversal level;
- and
- providing the task queue to the CTS engine.
A non-transitory computer-readable storage medium storing instructions that, when executed by a computer, cause the computer to perform a method for performing clock tree synthesis (CTS), the method comprising:
- traversing one or more clock trees from the root of each clock tree to a set of sinks of the clock tree, wherein said traversing is performed across different clocks and modes;
- wherein while performing said traversing, marking each clock gate with a traversal level, and marking each sink with one or more clocks and one or more modes that are associated with the sink;
- creating a task queue for a CTS engine, wherein each task is associated with a clock gate, and wherein tasks are scheduled in the task queue in decreasing traversal level of the associated clock gate;
- and
- providing the task queue to the CTS engine.
An apparatus, comprising:
- a processor;
- and
- a non-transitory storage medium storing instructions that, when executed by the processor, cause the apparatus to perform a method for performing clock tree synthesis (CTS), the method comprising:
- traversing one or more clock trees from the root of each clock tree to a set of sinks of the clock tree, wherein said traversing is performed across different clocks and modes;
- wherein while performing said traversing, marking each clock gate with a traversal level, and marking each sink with one or more clocks and one or more modes that are associated with the sink;
- creating a task queue for a CTS engine, wherein each task is associated with a clock gate, and wherein tasks are scheduled in the task queue in decreasing traversal level of the associated clock gate;
- and
- providing the task queue to the CTS engine.
Dependencies are inferred from the claim text.