SystemC

SystemC是一种基于C++语言的用于系统设计的计算机语言，是用C++编写的一组库和宏。它是为了提高电子系统设计效率而逐渐发展起来的产物。IEEE于2005年12月批准了IEEE1666-2005标准。

通常，系统由软件部分和硬件部分组成，系统的一部分功能由软件实现，而另一部分功能则由硬件实现。早期的系统比较简单，系统工程师将准备设计的系统划分为软件部分和硬件部分，分别由软件工程师和硬件工程师进行设计、仿真、实现和改进，最后再将软件部分和硬件部分结合起来形成系统。软件工程师使用C和C++等程序设计语言，因为这些语言专长于描述串行执行的程序，用来仿真软件部分；而硬件工程师则使用VHDL和Verilog等硬件描述语言，因为这些语言专长于描述并行运行的硬件，用来仿真硬件部分。但是，随着电子系统的不断发展，系统结构越来越复杂，系统元件也越来越多，这就要求系统工程师在先期划分软件和硬件时，就对整个系统性能有很好的了解和掌握，以便更好地划分软件和硬件，减小设计中不必要的失误所带来的损失和风险。SystemC也就由此孕育而生，因为它能够满足对软件和硬件协同仿真的需求。

SystemC的名称来自“系统”一词的英语System和“C/C++语言”中的C，以表示它是一种基于C/C++语言的系统设计语言。

许多科学研究团队和计算机辅助设计软件公司一同为SystemC的发展做出了贡献，1999年成立了开源SystemC的开发团队“Open SystemC Initiative（OSCI）”。

2011年11月10，IEEE通过了新SystemC 2011标准：IEEE1666-2011。

相关条目 
 C语言
 C++语言
 计算机语言
 高级验证
 硬件验证语言

参考文献 
 T. Grötker, S. Liao, G. Martin, S. Swan, System Design with SystemC. Springer, 2002. ISBN 1-4020-7072-1
 J. Bhasker, A SystemC Primer, Second Edition, Star Galaxy Publishing, 2004. ISBN 0-9650391-2-9
 D. C. Black, J. Donovan, SystemC: From the Ground Up, Springer 2005. ISBN 0-387-29240-3

外部链接 
 SystemC.org SystemC的社区
 AutoESL From Xilinx
 CatapultC From Calypto
 C-to-Silicon From Cadence
 Cynthesizer From Forte

程序设计语言
硬件验证语言