The present invention relates generally to the data processing field, and more particularly, relates to a method, system and computer program product for implementing enhanced clock tree distributions to decouple across N-level hierarchical entities of an integrated circuit chip.
High-frequency clock distributions require low skew. Common methods of constructing clock distributions can achieve low skew, but with extensive interaction between levels of hierarchy.
Current clock distributions construction methods can require large design resources including for example, wires, and gates in clock grids or extensive tuning for different random logic macro (RLM) tree latencies such as in standard buffer trees.
Known arrangements include clock grids or meshes that can achieve very low skew, but are rigid in their planning and layout, and costly in wiring and design resources required. Buffer or inverter trees offer flexibility, but are limited in their skew control, and need extensive tuning to balance out differences between small and large hierarchical blocks. Trees that use large buffers and wide or thick wires, such as structured clock buffers (SCB) trees, enable good performance, but often thick metal is not available inside child hierarchical blocks or only available at the parent or chip level.
In an application specific integrated circuit (ASIC) design, a common design methodology takes advantage of the use of random logic macros (RLMs) to improve data management and design closure. RLMs increase complexity for clocking by decreasing the chances of finding optimal solutions due to placement, routing and timing issues.
A need exists for an efficient and effective mechanism to implement enhanced clock tree distributions to decouple across N-level hierarchical entities of an integrated circuit chip.
A principal aspect of the present invention is to provide a method, system and computer program product for implementing enhanced clock tree distributions to decouple across N-level hierarchical entities of an integrated circuit chip. Other important aspects of the present invention are to provide such method, system, and computer program product substantially without negative effects and that overcome many of the disadvantages of prior art arrangements.
In brief, a method, system and computer program product for implementing enhanced clock tree distributions to decouple across N-level hierarchical entities of an integrated circuit chip. Local clock tree distributions are constructed. Top clock tree distributions are constructed. Then constructing and routing a top clock tree is provided.
In accordance with features of the invention, the local clock tree distributions and the top clock tree distributions are independently constructed, each using an equivalent local clock distribution of high performance buffers to balance the clock block regions.
In accordance with features of the invention, the construction of the local clock tree distributions and the top clock tree distributions include initially determining and setting a plurality of local clock block areas. Then placing and fixing starting buffer of clock block area serial trees is provided, together with fixing blockage overlaps and cloning serial trees is provided if required.
In accordance with features of the invention, the hybrid top or global tree is constructed with a structured clock buffer floor planner (SCBFP) tree builder with large clock buffers placed and fixed. Then routing of the hybrid top or global tree is performed.
The present invention together with the above and other objects and advantages may best be understood from the following detailed description of the preferred embodiments of the invention illustrated in the drawings, wherein:
In the following detailed description of embodiments of the invention, reference is made to the accompanying drawings, which illustrate example embodiments by which the invention may be practiced. It is to be understood that other embodiments may be utilized and structural changes may be made without departing from the scope of the invention.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
In accordance with features of the invention, a method, a system, and a computer program product are provided for implementing enhanced clock tree distributions across N-level hierarchical entities of an integrated circuit chip.
In accordance with features of the invention, the local clock tree distribution and the top clock tree distribution are independently constructed, each local clock tree uses an equivalent clock distribution of high performance buffers to balance the clock block regions. Clocking and timing are decoupled. The present invention enables timing closure and clock to be done independently and in parallel. The need for clock delay books is eliminated, which typically adds timing complexity and possibly timing variability into the design with some conventional clocking systems.
In accordance with features of the invention, the present two level tree process eliminates the need for random logic macro (RLM) basining or early clock. Balancing requirement for different RLM clock tree sizes and latencies is eliminated. Latency of the clock tree contained in the random logic macro (RLM) or local tree is reduced. The use of more top metal layers for the majority of the RLM tree distribution is enabled. A highly consistent and uniform routing problem is provided to top for the balanced router. The high fan out typical of structured clock buffers (SCB) balanced routing in a full SCB tree is eliminated.
Referring now to the drawings, in
Computer system 100 is shown in simplified form sufficient for understanding the present invention. The illustrated computer system 100 is not intended to imply architectural or functional limitations. The present invention can be used with various hardware implementations and systems and various other internal hardware devices, for example, multiple main processors.
As shown in
Various commercially available computers can be used for computer system 100. CPU 102 is suitably programmed by the clock tree design 134 to execute the flowchart of
Referring to
As indicated at a block 306, loads are assigned to local CBA trees and CBA clock optimization control files are created. Next local starting buffer pins are pop to the top of the local CBA serial buffer trees as indicated at a block 308. Then clock optimization of the CBA trees is performed as indicated at a block 310. Next for the top or global level, the steps indicated at block 302, 304, 306, and 310 are repeated as indicated at a block 312.
A hybrid top or global tree is constructed with the structured clock buffer floor planner (SCBFP) tree builder or other available tree builder, such as an L0 tree builder with large clock buffers placed and fixed, as indicated at a block 314. Then routing of the hybrid top or global tree is performed as indicated at a block 316.
Referring to
Referring to
In
Referring now to
A sequence of program instructions or a logical assembly of one or more interrelated modules defined by the recorded program means 604, 606, 608, 610, direct the computer system 100 for implementing enhanced clock tree distributions to decouple across N-level hierarchical entities of an integrated circuit chip of the preferred embodiment.
While the present invention has been described with reference to the details of the embodiments of the invention shown in the drawing, these details are not intended to limit the scope of the invention as claimed in the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
5686845 | Erdal et al. | Nov 1997 | A |
5974245 | Li et al. | Oct 1999 | A |
6204713 | Adams et al. | Mar 2001 | B1 |
6651232 | Pileggi et al. | Nov 2003 | B1 |
6751786 | Teng et al. | Jun 2004 | B2 |
7243323 | Williams et al. | Jul 2007 | B2 |
7257788 | Haar et al. | Aug 2007 | B2 |
7392495 | Cherukupalli et al. | Jun 2008 | B1 |
7562316 | Tschanz et al. | Jul 2009 | B2 |
7779372 | Campbell et al. | Aug 2010 | B2 |
8117579 | Warnock et al. | Feb 2012 | B2 |
8205182 | Zlatanovici et al. | Jun 2012 | B1 |
8214790 | Masleid et al. | Jul 2012 | B2 |
20030051222 | Williams et al. | Mar 2003 | A1 |
20030208736 | Teng et al. | Nov 2003 | A1 |
20040237060 | Igarashi et al. | Nov 2004 | A1 |
20050102642 | Tschanz et al. | May 2005 | A1 |
20070220468 | Haar et al. | Sep 2007 | A1 |
20100031214 | Hou et al. | Feb 2010 | A1 |
20100229142 | Masleid et al. | Sep 2010 | A1 |
20120079437 | Li et al. | Mar 2012 | A1 |
Number | Date | Country | |
---|---|---|---|
20120110533 A1 | May 2012 | US |