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
- MIL-STD-1553 Controller IP
- UFS 5.x Device IP
- UCIe 3.x Controller IP
- Ethernet 800G PCS IP
- CHI to UCIe Bridge IP
Related Blogs
- The Integrated Design Challenge: Developing Chip, Software, and System in Unison
- Relationship between architecture and validation in system design
- Samsung Foundry and Synopsys Accelerate Multi-Die System Design
- RISC-V: Democratizing Innovation in CPU Design
Latest Blogs
- CDM Dependence on Device Capacitance
- What the Cyber Resilience Act means for the future of chip design
- When Your IP Vendor Has Operated 150,000 Base Stations: Introducing Viettel Semiconductor
- Relationship between architecture and validation in system design
- The Post-Quantum Cryptography Mandate: Building Cryptographically Agile Systems for the Quantum Era