Anyone who has been around system-level simulation for a while has probably accumulated a small graveyard of product names in their memory.
Before digital twins, virtual platforms, architecture exploration, and now AI-driven system design became fashionable terms, we simply called it simulation.
In the early days, one of the hottest areas was signal processing. Tools such as SPW, COSSAP, DSP Station, and MATLAB let engineers connect blocks together and experiment with DSP and communication algorithms long before committing to an implementation. SPW eventually became part of Cadence, COSSAP went into Synopsys, and DSP Station came through Mentor Graphics. MATLAB, of course, kept growing into the giant ecosystem we know today. (Semiconductor Engineering)
Later came SystemVue, carrying much of this graphical signal-processing and communications-system philosophy forward.
At roughly the same time, there was another interesting world developing: discrete-event simulation.
Products such as BONeS Designer, OPNET, Foresite, and COMNET III allowed you to build networks, processors, communication systems, resources, queues, servers, traffic generators, and schedulers. Underneath a lot of it was good old-fashioned queueing theory.
Put packets into queues. Add contention. Add priorities. Add some randomness.
Press Run.
Then stare at the graphs and wonder why the system you were absolutely certain would work…didn’t. 😄
COMNET III, for example, was already being used in the 1990s for graphical performance modeling of LANs, WANs, protocols, applications, processors, storage, and communication resources. (CiteSeerX)
Then system-level simulation started moving much closer to the semiconductor design process.
Cadence Virtual Component Co-Design (VCC) introduced function-to-architecture mapping and hardware/software co-design. CoWare N2C pushed the idea of creating a virtual SoC platform where hardware and software could be developed together. Synopsys had CoCentric/System Studio, evolving technology that included COSSAP and SystemC. (SAE Mobilus)
Suddenly the question wasn’t just:
“Does my algorithm work?”
It became:
“Which processor should run it? How many processors? Which bus? How much memory? What happens when three things try to access that memory at the same time?”
That was a pretty important change.
Then came the virtual prototyping crowd: VaST, DoubleWide, ASTC, and others. Virtutech’s Simics deserves a place in this history as well. The goal shifted again — simulate enough of the hardware platform that software developers could start working before the physical hardware existed. VaST’s CoMET, for example, focused on software-based virtual system prototypes of SoCs. (Semiconductor Engineering)
And eventually we arrived at another interesting branch.
Ptolemy II brought together multiple models of computation rather than assuming that everything in a system behaved the same way. VisualSim Architect commercialized Ptolemy II for electronic system architecture modeling, while SystemC/TLM became an important foundation for semiconductor architecture exploration and products such as Synopsys Platform Architect. (Wikipedia)
Ptolemy also found a commercial home for many years inside ADS Ptolemy for communication and RF-system simulation. Interestingly, Keysight has now retired ADS Ptolemy and recommends SystemVue instead — another turn of the simulation wheel. (Keysight Technologies)
Today we talk about SoC architecture exploration, chiplets, NoCs, AI accelerators, memory bandwidth, power, thermal behavior, software workloads, digital twins, and mission-level models.
But when you look underneath all the new terminology, some remarkably familiar ideas are still there:
Events. Resources. Queues. Dataflow. Contention. Latency. Workloads. And engineers asking, “What happens if I change this?”
The technology has changed enormously.
The fundamental reason for simulation really hasn’t.
Build it virtually. Break it virtually. Fix it virtually. Then build the expensive thing.
I’m curious how many people remember this era.
What system-level simulation tools did I miss?
And, more importantly, which one did you actually use — and what do you remember about it?
I particularly like the ending because it turns the post into a conversation; people from the SPW/BONeS/CoWare/Simics era will probably start adding forgotten products in the comments.