The participants, 5 articulate technologists with overlapping and/or opposing viewpoints, fielded questions, listened and responded to each other, and generally helped to illuminate some of the more difficult issues that swirl about in the semantic vortex created by Virtualization & Simulation. If you’ve been looking for a floatation device recently while caught up in that vortex, again the following is worth your time. Click on ‘print this article’ to see all of the text on one page, and enjoy the conversation.
Roundtable participants include:
* Michel Genard @ Virtutech - VP of Marketing
* Jason Andrews @ Cadence - Architect
* Mark Burton @ GreenSocs - Founder
* Tomas Evensen @ Wind River - CTO, VP & GM, Tools and Common Technologies
* Kent Fisher @ Freescale - Chief Systems Engineer
[ Note: Participant bios can be found at the end of the article.]
Roundtable: Virtualization versus Simulation …
* Q - Let’s start with a brief description of what your company does.
Mark Burton (GreenSocs) - We develop open source SystemC infrastructures.
Michel Genard (Virtutech) - We provide platforms for fast simulation in our tool environments.
Tomas Evensen (Wind River) - We provide software solutions and operating systems, VxWorks, and Linux tools like debuggers and simulators. We have services around [these products] for the embedded space.
Jason Andrews (Cadence) - We do software for electronic design automation, everything from system-level design simulation and embedded software, all the way down to physical design and chip implementation.
* Q - Do you cooperate as organizations, or do you see each other as ‘co-opetition’?
Kent Fisher (Freescale) - We cooperate.
Michel Genard (Virtutech) - We don’t compete with anyone directly, but at the end of the day, the customer has to have a real way to look at problems. In general, as an industry, we tend to work together to try to achieve the main goal, which is to accelerate development for the customer. We are all kind of partnering, but there’s [also] a limited budget, so the customer has to make a choice.
Tomas Evensen (Wind River) - We’re not in competition with any of the other companies here, but only in the sense that people have fixed budgets and [must decide] where do they put their dollars into hardware simulators.
* Q - Please define and distinguish between virtualization and simulation.
Kent Fisher (Freescale) - Virtualization is the ability to run an embedded hypervisor on our multicore processor to partition and provide security for the different operating systems on the multicore processor. Simulation is the ability to develop software on that virtual multicore processor platform and develop and debug [applications there].
Mark Burton (GreenSocs) - This is controversial. [For starters], I disagree with the question. The answer you’ve just been given is technically correct, but as I see it - the way people use these words, day in and day out, a distinction is never drawn.
People talk about virtual platforms when they mean things where simulations can be run, but talk about simulators when they mean virtual platforms. The two words are used in all cases just merged into one another, [so] there’s no real meaning to the words, which means we no longer understand what they mean as an industry. That’s a pity because there’s a lot [that needs to be said] to understand the different proposals from the different companies, moving from simple to complicated systems, not just involving one chip, but many chips and many boards.
At the end of the day, the two words are part of the same coin. You can flip the coin, but you can’t do simulation without a virtual object; you have to have something virtual. The confusion comes in when virtualizing becomes mainstream, thanks to VMWare [and so on]. There’s [clearly] been some confusion, because you’re using virtualization in a lot of different use cases.
Simulation has an embedded device that wants to pretend it’s on a host platform or other hardware or instruction set simulator. Virtualization is more of a technology, a way of running something on top of something else. There, you actually are pretending as well. If you want to pretend you’re running a chip in an industrial controller, but want to simulate it on a PC, then you can use virtualization. Yes, it gets really complex!
Jason Andrews (Cadence) - At Cadence, emulation is the opposite of simulation, which means something completely different to Cadence than it does to Wind River selling a CPU emulator. What I do is try to take it by the use case or application. We all know what virtualization is in the IT space, the concept of having one machine seem like more than one machine, or another operating system.
Then there’s this [additional] space, where we are trying to do embedded software testing on some model, faking some hardware. That’s more of the embedded or SOC space trying to verify hardware in the software space Then there’s the other one: the mobile device or network device running multiple operating systems that was first pioneered in IT.