Friday, April 11, 2008

Clock Tree Synthesis

Now-a-days, designing clock-distribution networks for high-speed chips is more complex than just meeting timing specifications. Achieving clock latency and clock skew are difficult when you have clock signals of 300 MHz or more transversing the chip. Because the clock network is one of the most power-hungry nets on a chip, you need to design with power dissipation in mind.

The basics of CTS is to develop the interconnect that connects the system clock into all the cells in the chip that uses the clock. For CTS, your major concerns are,

  • Minimizing the clock skew
  • Optimizing clock buffers to meet skew specifications and
  • Minimize clock-tree power dissipation
The primary job of CTS tools is to vary routing paths, placement of the clocked cells and clock buffers to meet maximum skew specifications.

For a balanced tree without buffers (before CTS), the clock line's capacitance increases exponentially as you move from the clocked element to the primary clock input. The extra capacitance results from the wider metal needed to carry current to the branching segments. The extra metal also results in additional chip area to accommodate the extra clock-line width. Adding buffers at the branching points of the tree significantly lowers clock-interconnect capacitance, because you can reduce clock-line width toward the root.

When designing a clock tree, you need to consider performance specifications that are timing-related. Clock-tree timing specifications include clock latency, skew, and jitter. Non-timing specifications include power dissipation, signal integrity. Many clock-design issues affect multiple performance parameters; for example, adding clock buffers to balance clock lines and decrease skew may result in additional clock-tree power dissipation.

The biggest problem we face in designing clock trees is skew minimization. The factors that contribute to clock skew include loading mismatch at the clocked elements, mismatch in RC delay.

Clock skew adds to cycle times, reducing the clock rate at which a chip can operate. Typically, skew should be 10% or less of a chip's clock cycle, meaning that for a 100-MHz clock, skew must be 1 nsec or less. High-performance designs may require skew to be 5% of the clock cycle.

Clock design methodology

Many chip companies have comprehensive clock-network- design strategies that they use on their customers' chips. Motorola uses the Clock Generator tool along with Cadence place-and-route tools. This tool combination produces a tree with minimum insertion delay, a minimum number of buffers, and maximum fan-out. Typical skew is less than 300 psec. After generation of the clock tree, the output from the place-and-route tool is flat, meaning that the design hierarchy is lost.

Effect of CTS
  1. Lots of clock buffers are added
  2. Congestion may increase
  3. Non-clock tree cells may have been moved to non-ideal locations
  4. Can introduce new timing violations

Glossary

Balanced clock tree : The delays from the root of the clock tree to leaves are almost same.

Clock distribution: The main task of clock distribution is to distribute the clock signal across the chip in order to minimize the clock skew.

Clock buffer: To keep equal rise and fall delays of the clock signal.

Global skew: Difference in clock timing paths b/w any combination of two FFs in the design within the same clock domain.

Local skew : Balances the skew only b/w related FF pairs. FFs are related only when one FF launches date which is captured by the other.



8 comments:

  1. What happens if the clock skew constraint is not met ? What is the procedure followed ?

    ReplyDelete
  2. i very much adore all your posting type, very interesting.
    don't quit and also keep penning simply because it just simply nicely to read it.
    impatient to look at much of your own content, regards :)

    ReplyDelete
  3. hi
    it is all to have check on hold violation

    ReplyDelete
  4. You have hit the mark. Thought good, I support.

    ReplyDelete
  5. why is the design hierarchy lost after clock tree generation?

    ReplyDelete
  6. wat happen wen we use unbalnced buffers during cts?how does delay can measure interms of each unbanced buffer?

    ReplyDelete
  7. What's up, just wanted to say, I loved this post. It was inspiring. Keep on posting!
    My website :: tmj ct

    ReplyDelete
  8. So, how do you stimulate your produce system, Still they cannot do good with Aquaponics since they
    motive greater amount of money of nutrients and alimony.

    drawn-out standpipe from top, diverse length can be use to have Cagey methods of dispersing the high temperature away from your garden.
    Supporters of such schemes believe beds or to add a bigger army tank, or multiple tanks.


    Visit my page ... Hydroponics Bay City Mi
    Here is my page : Hydroponics Bay City Mi

    ReplyDelete