Before I got started with my DAC 2010 customer meetings on Monday morning, I stopped by the DAC Pavilion to hear what Gary Smith had to say in his "Trends and What's Hot at DAC" session. I was very pleased to hear Gary say that Virtual Platforms are the most promising way to reduce design costs. Richard Goering did a good job summarizing the main points if you are interested in more details. Today, I will push a little deeper and identify what to look for in a Virtual Platform that will help cut SoC design costs. I will also share some trends I observed at DAC.
Here's the start of a list of things to look for:
One trend at DAC has been the Missing Model Syndrome related to IP purchased from other companies that does not come with suitable models for integration into a Virtual Platform. This should be a required deliverable, but is still missing or lagging in many cases.
Another trend I observed is that multiple companies described how they are planning to overcome the organizational barriers between hardware and software groups by having the hardware and verification teams take over the responsibility of low-level software APIs. In the past, many verification teams have written C test programs and hardware testbenches to verify the hardware. They even pass these tests to software engineers in the form of C fragments or e or SystemVerilog sequences to tell the software team how to program the device for configuration or to do certain operations. Delivering a combined hardware and software package to the software team is a good next step for many companies to consider.
The last trend that was common among users was the need for a good platform assembly tool to quickly create variations of Virtual Platforms. Today, many users find manual text editing to be time consuming and difficult to get right. The result is wasted time spent debugging every time the platform is modified.
Remember, Virtual Platforms are only a means to get to the end goals of higher quality software in a shorter time, which will ultimately lower SoC design cost.
At DAC this year it's clear that Virtual Platforms are no longer a side project that is separate from main design activities with insufficient resources assigned to it. Users are now serious about learning how to create models and platforms and understand that they can't just rely on an EDA vendor to show up and provide everything they need. Making Virtual Platforms a key step in the design process ensures that the promised cost savings will be realized.
I'm always interested to hear additional keys to success with Virtual Platforms or other trends related to embedded software development.
Hi Jason, great posting. I personally like it quite a bit because most of the things you list as requirements are features of the model generation and virtual platform solutions offered by Carbon Design Systems. Our tools automatically create virtual platform models from RTL and create TLM-2.0 interfaces which allow those models to be integrated into platforms at any level of abstraction. We automatically generate the instrumentation code to enable debug and analysis in the leading virtual platform environments. Remember the great virtual platform assembly features from Axys you marveled at in your "Missing Model Syndrome" posting? That tool is now owned by Carbon Design Systems and is augmented by a full library of IP models from ARM, Denali and other leading IP vendors which are 100% cycle accurate. Cycle accurate models not fast enough to meet your needs? Any of the cycle accurate models in the system can be automatically replaced with ARM's Fast Models. Want to have speed AND accuracy? Use our Swap 'n Play feature to execute the Fast Model platform until a software breakpoint and then dynamically (and automatically!) replace the Fast Models with their cycle accurate equivalents and now you have all the accuracy you can use.
All of this of course is incorporated in a virtual platform environment which delivers concurrent views of hardware and software to enable true codesign along with great capabilities for architectural and performance analysis.
Sorry to be so self-promoting in a comment to your blog but I couldn't resist such a clear-cut opportunity.