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.
The Cadence Academic Network helps build strong relationships between academia and industry, and promotes the proliferation of leading-edge technologies and methodologies at universities renowned for their engineering and design excellence.
Participate in CDNLive
A huge knowledge exchange platform for academia to network with industry. We are looking for academic speakers to talk about their research to the industry attendees at the Academic Track at CDNLive EMEA and Silicon Valley.
Come & Meet Us @ Events
A huge knowledge exchange platform for academia. We are looking for academic speakers to talk about their research to industry attendees.
Americas University Software Program
Join the 250+ qualified Americas member universities who have already incorporated Cadence EDA software into their classrooms and academic research projects.
EMEA University Software Program
In EMEA, Cadence works with EUROPRACTICE to ensure cost-effective availability of our extensive electronic design automation (EDA) tools for non-commercial activities.
Apply Now For Jobs
If you are a recent college graduate or a student looking for internship. Visit our exclusive job search page for interns and recent college graduate jobs.
Cadence is a Great Place to do great work
Learn more about our internship program and visit our careers page to do meaningful work and make a great impact.
Get the most out of your investment in Cadence technologies through a wide range of training offerings.
Overview All Courses Asia Pacific EMEANorth America
Instructor-led training [ILT] are live classes that are offered in our state-of-the-art classrooms at our worldwide training centers, at your site, or as a Virtual classroom.
Online Training is delivered over the web to let you proceed at your own pace, anytime and anywhere.
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.
Get email delivery of the Cadence blog featured here
One of my customer's last week asked a good question that has come up many times before when I was a designer too.
Customer: When is using "-through" in my SDC timing constraints a bad thing? Any guidelines?
Here was my response for those curious:
One reason '-through' for exception path SDCs may not be recommended for synthesis and P&R tools is because they may restrict optimization. So in general, by default, definitely keep them to a minimum where possible.
For one ASIC vendor in the past, they restricted all set_false_path and set_multicycle_paths with a maximum of N '-through' per SDC statement due to known QOR issues with at least one of their backend tools. I thought this was a good practice of the vendor - be proactive to make the ASIC flow smoother.
One popular reason why '-through' constraints may come into the picture is when using internal IP or external IPs that come with their own set of SDCs. We didn't want the constraints on the submodule hierarchical pins because it was not a good practice (explanation below). In some cases, you may not be able to translate these 'through' SDCs easily to the fan-in or fan-out cones, especially if large - so you may choose to live with it. The problem is that even if you do translate them to get rid of the '-through' points on hierarchical module pins in this case, you need to verify your SDC again after the changes, which may not be trivial. In the past, for example, while integrating a popular 3rd party PCI/PCIX core which had many SDC exception paths on the I/O of the IP, we tried to do this translation. It looked easy on first glance, but after we started doing the work, it took months to do a full multi-mode verification (on and off work for our startup team, since realistically this was only one of many tasks/challenges we had in our tight schedule) that we were satisfied with and could sign-off on for these particular SDC changes because of the complexity of the paths (large cones) and much longer run times we saw from STA (our chip was a large SOCE to begin with, ~10M gates).
In general, if you do declare '-through' points, a good methodology is to place them on at least cell instances rather than sub-module hierarchical pins. For example, I've heard that in P&R, due to hierarchical pins that can be cloned, it can complicate the SDC constraints that reference the hierarchical pins with '-through'. Why take a chance with your flow when you can use any given tool which may treat these situations differently? Better to be safe and keep the flow at tight as possible by proactively pushing these SDCs upstream or downstream instead. Even better, push them right to the sequential elements or a siimlar if possible, since those are the best anchors for the SDCs.
Also, aside from the above question, another question came up on understanding the status of SDCs at each step of the process. Pretty much for any tool that gobbles an SDC, it will give some kind of status (very brief, or more detailed).
In general, whenever you read in your SDCs, you should have an accounting for what pass/failed at each step if you don't do that already. Make it a formal process in your ASIC flow and understand what you're tools are checking (because it may not be complete). I've seen too many times in the past when people only look at their SDCs when the tool gives an error and stops, or when results from a tool looks weird, and debugging the SDC then comes into the picture.
If you're looking for dedicated SDC constraints verification (and generation), such as my customer, you can check out Cadence's Conformal Constraint Designer, well worth it's checks for sign-off.
If you have other opinions, it would be great to hear them!