The Increasing Role of SystemC in System Design
Today's post is less technical and a bit more theoretical, but I promise that my next post will be more hands-on.
As somebody working on virtual platforms in an EDA company, I regularly spend time talking to firmware and embedded software engineers with many different backgrounds. Every so often one of them asks, "Why SystemC?" Some software engineers look at SystemC and decide that it looks like a real mess. They mention things like:
- SystemC has complex classes built with C++
- It uses strange macros like SC_MODULE, SC_METHOD, and SC_HAS_PROCESS
- Sometimes it can be difficult to find the cause of compilation errors
- SystemC takes a long time to compile
- Generally it doesn't provide much benefit for all this complexity
They ask, "what is wrong with plain C++ or even plain old C?" Most of the time they ask these questions because they don't understand how everything fits together.
To read the full article, click here
Related Semiconductor IP
- OpenTitan-based RISC-V Secure Element
- TSMC 40nm 5V GPIO
- Low Power 32kHz Pierce Oscillator
- Time-Sensitive Networking (TSN) End Point DO-254 IP Core
- TSMC 22nm 1.0V, 1.2V & 1.8V GPIO
Related Blogs
- The Integrated Design Challenge: Developing Chip, Software, and System in Unison
- Relationship between architecture and validation in system design
- The Missing Layer in AI Systems Design is Predictable, Scalable Data Movement
- Samsung Foundry and Synopsys Accelerate Multi-Die System Design
Latest Blogs
- Arm and NVIDIA: Building the trusted compute foundation for the agentic AI era
- Trusted Autonomy with Cadence Super Agents & NVIDIA Open Agent Safety Platform
- One Processor, One Toolchain
- Akida Execution in Heterogeneous Environments - Clone It, Build It, Run It
- Inside TSMC’s Evolving Design Ecosystem: Shaping the Future of AI, with AI