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
I arrived safe and sound at the Embedded Systems Conference in Boston today. It's been a few years since I have attended ESC, but it all came back to me quickly, and is just as I remember it, a lot of small booths with vendors showing small boards doing something (hopefully something interesting and not something small).
The most interesting talk I attended was Virtualization for Embedded and Real-Time Systems. Virtualization is one of favorite topics to follow as I'm pretty sure it has many applications in both embedded systems and for EDA tools that have yet to be realized. This talk was a 90 minute session jammed with all things related to virtualization by somebody who clearly has spent years understanding and implementing many types of virtualization.
I found a good wikipedia page that is a good summary of some of the material that was covered.
One of the primary applications in embedded systems is to use virtualization to run multiple operating systems on a single CPU. This is not unlike server applications in a data center, but in embedded applications the operating systems are heterogeneous. Often times one of the operating systems is a legacy OS and the other is a general purpose OS like Linux. This enables cost reduction of hardware as processors get faster since multiple boards can be replaced by a single board. Another example that seems to be popular among the embedded virtualization vendors is to run the protocol stack for making phone calls on the mobile phone in one virtual machine and the general purpose OS that handles the display, other peripherals, and all the applications in another virtual machine. This way the user cannot download and run poorly behaved applications that might interfere with the core capability of making phone calls. Trango is another vendor working in this area. The concept sounds very promising to keep the games, e-mail, and web browsing from causing poor call quality.
If you can follow and understand the picture below you have a good start at understanding commonly used virtualization techniques. This is just the first level. For every one of these there are interesting topics such as using virtualization to improve software debugging and to profile software execution.
There are multiple talks on the ESC program about virtualization. It seems to be one of the hot topics in embedded software. This talk definitely helped me understand all of the kinds of virtualization and gave me a better understanding of how many of them work, including the VMware that I use everyday.
I would love to hear about other applications or ideas on how virtualization is being used or could be used.