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
Virtual platforms bring the people behind hardware and software design closer together, says Jakob Engblom, technical marketing manager at Virtutech (Stockholm, Sweden). In this guest blog, he shows how virtual platforms can bring new capabilities to both hardware and software designers, and notes the significance of a new collaboration between Cadence and Virtutech.
The integration of the Cadence Incisive Software Extensions tool with Virtutech Simics virtual platforms, announced May 18, applies a proven hardware verification methodology – with planning and metric-driven verification – to software testing. The integration shows how the powerful tools and methods developed for hardware design can be applied to software design tasks such as device-driver testing.
Due to the high cost of mistakes in hardware design, verification tools and methods -- and a strong culture of using them -- have been developed in the hardware design world. These tools have relied on simulation to control and impose states on hardware designs. With virtual platforms, the same kind of control becomes available for software.
Virtual platforms also facilitate methodology innovation in hardware design. Since a virtual platform is much easier to change than traditional hardware design artifacts, virtual platforms make it possible to use modern software development paradigms such as agile development, iterative development, and rapid prototyping in the hardware design flow. The key point is that virtual platforms allow a higher level of abstraction. By moving away from describing the precise implementation of hardware to describing the design intent and software-visible behavior of hardware, the amount of information and therefore time needed to “build” a piece of hardware is reduced by orders of magnitude.
So, virtual platforms can be used to both “harden the software” and “soften the hardware.” But even more importantly, they bring the people behind the hardware and the software closer together. A virtual platform models the hardware-software interface, and is thus a natural mechanism for communications between hardware and software teams.
For example, virtual platforms make it much easier to explore architectures that straddle the hardware-software boundary. Hardware interfaces to the software stack can be explored quickly and deeply, long before the hardware design is frozen. The analysis is not just about bandwidths, performance, and bus load, but also about the usability of driver interfaces, and the viability of hardware designs given the complexity of a modern embedded software stack.
The best published description of this process that I have found is an article called “Application of Full-System Simulation in Exploratory System Design and Development” in the IBM Journal of Research and Development, March/May 2006. In this article, the authors describe how they explored various programming models and architectures for the Cell BE microprocessor.
The authors describe their decision to avoid using cache locking as a performance enhancement technique, after trying to implement it in a software stack consisting of a hypervisor, operating system, and application programs. Their analysis proved that cache locking is too complex to be used effectively by software. Exploring such issues obviously requires very close collaboration between software and hardware design teams, and doing that can be greatly facilitated by using a virtual platform as the common point of communication. Virtual platforms also facilitate an iterative development of hardware and software.
A virtual platform can also help in resolving tricky hardware-software debug issues and communicating problems between teams. If we look at the kinds of driver problems currently addressed by the Cadence-Virtutech collaboration, once an error has been found, we can easily package it up for further examination either by replaying the target control sequence leading to the error, or simply taking a snapshot of the system state just before the error. This can be handed to driver team for investigation, or to the hardware team in case the issue appears to be with the hardware side of the interface. Using the traceability of the virtual platform, it is also easy to log all hardware accesses and determine whether the driver is doing the wrong thing, or the hardware is responding in an unexpected way.
In summary, we see that virtual platforms are really about people and communication. By bringing hardware and software people closer together, we enable innovation in tools. The Cadence-Virtutech collaboration is one example of what can happen when a virtual platform opens up the perspective of software to hardware people -- it lets good ideas and tools flow from one world to another.