• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Digital Implementation
  3. Clock Tree Synthesis - Not able to add clock buffers

Stats

  • Locked Locked
  • Replies 4
  • Subscribers 92
  • Views 4864
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Clock Tree Synthesis - Not able to add clock buffers

Northfork
Northfork over 12 years ago

Hi all,

 I'm running a script that was given to me for clock tree synthesis, but no buffers are being inserted in my clock tree. I only have 240 sinks (flip-flops) and one clock input pin in my design. I suspect the problem is due to my power domain specification, but I cannot figure it out. The basic scheme I am trying to recreate:
The design is primarily an input to reg path, in which I have specified each cell one logic depth before a flip flop to be in a different power domain (via CPF). The reason I created this power domain is that I want those cells to be connected to a virtual rail that I can monitor with a separate analog macro. However, both power domains will be running at the same nominal voltage (0.6 V, and the domain with the virtual rail may see a little drop-but that is not the main concern).

When I try to run: ckSynthesis -rguide ${top_level}.cts.rguide -report ${top_level}.ctsrpt -macromodel ${top_level}.ctsmdl -forceReconvergent

No clock tree buffers are added. I have attached the log file and cts file I am using. I know there is enough space in my design for buffers to be added.

Newbie student here, so ANY advice or help is appreciated. (i'm using 130 nm ibm13, 1.2V but my design is low power/using a library characterized at 0.6 V). Thanks for your time!

  • ctslog.txt
  • View
  • Hide
  • Cancel
Parents
  • Northfork
    Northfork over 12 years ago

    I have reattached a new cts report. I cannot understand why the actual Max. Rise Sink tran and Max. Fall Sink Tran are so big (would this problem arise from incorrect library characterization?). Please see the attached file for more details.

    Actual Max. Rise Sink Tran            : 391862(ps)                   

    Actual Max. Fall Sink Tran            : 12150.8(ps)            

    Anyways, the tool will still not generate/buffer the clock tree. I also get the following message :

    SubTree No: 0

    Input_Pin:  (NULL)

    Output_Pin:  (clock)

    Output_Net: (clock) DontTouch (Special PowerDomain Case)

     Is clock tree synthesis different for MSV designs? (Either way, both my power domains are at the same voltage, I only use an additional domain to allow me to connect cells in that domain to a rail that i want to monitor, (current sensing completion detection))

    In the end the clock tree is just a bunch of long wires connected to the 240 flip flops. 

    Any help or advice is extremely appreciated.

    Thanks!                                      

    • EX_EX_MEM.ctsrpt.txt
    • View
    • Hide
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Northfork
    Northfork over 12 years ago

    I have reattached a new cts report. I cannot understand why the actual Max. Rise Sink tran and Max. Fall Sink Tran are so big (would this problem arise from incorrect library characterization?). Please see the attached file for more details.

    Actual Max. Rise Sink Tran            : 391862(ps)                   

    Actual Max. Fall Sink Tran            : 12150.8(ps)            

    Anyways, the tool will still not generate/buffer the clock tree. I also get the following message :

    SubTree No: 0

    Input_Pin:  (NULL)

    Output_Pin:  (clock)

    Output_Net: (clock) DontTouch (Special PowerDomain Case)

     Is clock tree synthesis different for MSV designs? (Either way, both my power domains are at the same voltage, I only use an additional domain to allow me to connect cells in that domain to a rail that i want to monitor, (current sensing completion detection))

    In the end the clock tree is just a bunch of long wires connected to the 240 flip flops. 

    Any help or advice is extremely appreciated.

    Thanks!                                      

    • EX_EX_MEM.ctsrpt.txt
    • View
    • Hide
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information