Cadence® system design and verification solutions, integrated under our System Development Suite, provide the simulation, acceleration, emulation, and management capabilities.
System Development Suite Related Products A-Z
Cadence® digital design and signoff solutions provide a fast path to design closure and better predictability, helping you meet your power, performance, and area (PPA) targets.
Full-Flow Digital Solution Related Products A-Z
Cadence® custom, analog, and RF design solutions can help you save time by automating many routine tasks, from block-level and mixed-signal simulation to routing and library characterization.
Overview Related Products A-Z
Driving efficiency and accuracy in advanced packaging, system planning, and multi-fabric interoperability, Cadence® package implementation products deliver the automation and accuracy.
Cadence® PCB design solutions enable shorter, more predictable design cycles with greater integration of component design and system-level simulation for a constraint-driven flow.
An open IP platform for you to customize your app-driven SoC design.
Comprehensive solutions and methodologies.
Helping you meet your broader business goals.
A global customer support infrastructure with around-the-clock help.
24/7 Support - Cadence Online Support
Locate the latest software updates, service request, technical documentation, solutions and more in your personalized environment.
Cadence offers various software services for download. This page describes our offerings, including the Allegro FREE Physical Viewer.
Get the most out of your investment in Cadence technologies through a wide range of training offerings.
This course combines our Allegro PCB Editor Basic Techniques, followed by Allegro PCB Editor Intermediate Techniques.
Virtuoso Analog Design Environment Verifier 16.7
Learn learn to perform requirements-driven analog verification using the Virtuoso ADE Verifier tool.
Exchange ideas, news, technical information, and best practices.
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.
It's not all about the technlogy. Here we exchange ideas on the Cadence Academic Network and other subjects of general interest.
Cadence is a leading provider of system design tools, software, IP, and services.
Hi!right now, I am working on a project using SoCE4.2. The library I am using contains these kinds of clock buffers, which are all output complementary, Q and -Q. Unfortunately, while I specified them in my *.ctstch file and ran the CTS, the errors appeared:
ckSynthesis Option : -rguide digital_cts/digital_cts.guide -report digital_cts/digital_cts.ctsrpt **WARN: cell CK01D1 has more than one timing arc. Check the timing libraries.**ERROR: Buffer CK01D1 specified in the clock tree specification file is invalid.Usage: ckSynthesis [-clk ] [-report ] [-rguide ] [-macromodel ] [-check] [-forceReconvergent] [-dontFixAddedBuffers] [-breakLoop | -ignoreLoopDetect] [-addOriginalNet]**ERROR: ERROR: Incorrect usage for command "ckSynthesis".
So I have to use those simple normal buffers & inverter instead. Although this time the CTS succeed, I am not quite satisfied with the CTS result report, cause the discrepancy between the rising skew and falling skew is huge:
Rise Skew : 506.3(ps) Fall Skew : 1358.5(ps)
I guess this is due to the performance of the simple buffer & inverter is not as good as the clock buffer.So I wanna try to use the clock buffer back in the CTS. Can anybody tell me how to fix this cell-CK01D1-has-more-than-one-timing arc problem?
Thanks in Advance!
Hi Gordonlyn,I think this is fixed in more recent versions of the tool. If you can't use a more recent version, you may be able to get away with a set_disable_timing on the unused arc (I'm guessing the -Q). As for the normal buf/inv tree, you could try using all inverters and see if you get something more balanced, but it's hard to say without knowing the details of your library. - Kari
Hi Gordonlyn,Unfortunately, I dont think CTS is able to build a tree using multiple output timing arcs cells. To handle that, it needs to figure out if it should build a tree after the Q or -Q output or both. Using inverters shouldhelp to reduce the difference between rise and fall skew because usually inverters have symmetric rise and fall time characterisitc or the tool can insert pairs of them to compensate the effect.Nevertheelss, it also depends on the gated clock structure that the designhas. If the clock has to go thru multiple of gating cells or muxes which has non-symmetrical rise and fall time,even if you have a symmetrical clock buffers, you may still get a difference of rise and fall skew. You may want to do a displayClockTreeMinMaxPaths -pin xxx/CK to see the details of the timing. (latest 4.2 should havethis cmd or try 5.2)
Thanks for your helps, Kari and bsg. I tried the method you've recommended - to use the inverters only in my CTS, and it works! After several times of trial-and-error, I got my results finally: Rise Skew : 331.4(ps) Fall Skew : 420(ps) Max. Rise Buffer Tran : 464.6(ps) Max. Fall Buffer Tran : 470.7(ps) Max. Rise Sink Tran : 442.6(ps) Max. Fall Sink Tran : 468.9(ps) Min. Rise Buffer Tran : 6(ps) Min. Fall Buffer Tran : 6(ps) Min. Rise Sink Tran : 120.1(ps) Min. Fall Sink Tran : 104.9(ps) Pretty symmetrical comparing with my previous one. :)While I was working on the clock buffer problem, writing the set_disable_timing scripts to disable the -Q timing arc in my *.sdc file, I still ended up with the same error. I just totally have no idea what to do. I think it might be better to make the clock buffer(Q) and inverter work together.
Hi all,Please can anybody tell me about how to calculate number of straps,power ring widths for a particular chip( if possible give some examples).And also give me the info about how to reduce the power dissipation while doing power planning in the physical design.I am waiting for the solution........