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.
Get email delivery of the Cadence blog featured here
Most low-power panels and presentations I've attended talk
only about hardware design techniques, like multiple supply voltages and power
shutoff. I was thus very interested in a discussion about power-aware software
that emerged at a panel at the March 25 EE Times "Designing with ARM" virtual conference.
It should be intuitively clear that if software doesn't take
advantage of nifty hardware power management features, those features won't be very
effective. For example, software needs to support power shutoff techniques by
entering power-down modes at the right times. Embedded software can also be
written in a power-efficient way - with limited memory accesses, for instance -
or it can be a power hog, with inefficiently used registers and poorly managed
I/Os. The least expensive pathway to system power optimization may actually be
through the software.
At the 2009 Embedded Systems Conference, I went around
talking to RTOS and software development companies asking one simple question
-why isn't anybody here talking about low-power design? (You can read
the answers here). At last week's panel Brian Carlson, OMAP platform
marketing manager at Texas Instruments, spoke of attending a session of mobile
OS providers at an ARM conference in 2008. "I was talking to these guys about how
they support low power, and a lot of them didn't have good answers," he said.
In the very first sentence uttered by a panelist at the ARM
conference panel, Carlson said that low-power design in the mobile world must
be "a holistic approach, all the way from the process to the SoC design and the
methodology, even to the software level." Speaking more specifically later, he
identified "energy-optimized software" as an area that has huge potential. "How
do you manage what frequency you're at, how do you balance your load?" he
asked, speaking of multicore designs. "These are huge issues, even at the
driver level. We have to look at how drivers can be more intelligent."
"We don't have compiler technology that is power aware,"
said Rick Zarr, PowerWise technologist at National Semiconductor. "When
software designers are designing blocks of code, they have no correlation to
the [hardware] knobs and dials we can turn. It's disjointed and disconnected."
Pete Hardee, solutions marketing director at Cadence, noted
that software developers in the mobile industry need to optimize their
algorithms so less data is moved from place to place. Lower-level software
should maximize cache efficiency. Moreover, he noted, software needs to have
"system mode" knowledge about how long each part of the chip is going to be
powered down. "All of that is in the software," he said.
Cary Chin, director of technical marketing at Synopsys, said
EDA vendors are considering power-aware software and are making progress. "We
have been focused on putting together a connection between the hardware and
software design worlds, so you can actually start to develop, as well as debug
and verify, software environments early," he said.
Hardee, however, noted that "if you're waiting until you've
got a prototype, it's too late." Virtual platforms make it possible to run a
lot of software and do some optimization, but they don't provide enough
accuracy for power estimation, he said. Design teams traditionally have to either
wait until they can get the accuracy, or make an early decision when they don't
have the accuracy. In the Cadence environment, he noted, many design teams are
using the Incisive
Palladium emulators to do software integration, and the Palladium Dynamic
Power Analysis option lets users run software and get accurate power
My conclusion from these discussions is that low-power
design is a hardware/software integration problem. It would be great to have a
power-aware compiler, but if software is written with no visibility into system
hardware, you won't have an optimized low-power system. Software and hardware
need to work hand-in-glove to enable cost-effective power management features.
Decisions about power management need to involve both hardware and software,
and should be made as early in the design process as possible.
To make all this possible, system design teams need to
develop software in a virtual or emulated hardware environment that is fast
enough for software developers, but also accurate enough to do some realistic
power estimation and optimization. As Carlson said, "I think there is a huge
opportunity for tools and a huge opportunity for developers to provide a
what-if analysis for power estimation."