|
1 引言
建立芯片模型是在早期进行芯片架构决策的有效方法,通过建模不仅可以对芯片的性能做出分析,还可以在硬件没有完成之前开发软件,不仅提高了产品成功率,而且缩短了研发周期。设计人员早期采用C/C++语言进行硬件建模。但是随着软硬件复杂度的提高,C/C++语言难以再满足要求。OSCI适时推出了SystemC语言来适应新的需求。如今SystemC已经被广泛应用于SoC软硬件建模中。
目前大部分SystemC建模方面的文献是作者对自己所设计芯片整体模型的描述,这种针对特定芯片设计的文献虽然都有参考价值,但是其模型本身借鉴性有限。另一方面,构成SoC硬件的基本组件因为可重用的缘故,其模型设计具有更好的可借鉴性。这方面的研究成果相对较少,而且集中在总线建模方面,也可以看到多核设计方面的建模方法。
除了上述总线、CPU 架构外,片内或片外存储器同样是系统关键模块,对系统性能有着至关重要的影响。文献[6]对SystemClick框架做了扩展,从而通过存储器模型能够分析共享存储器对性能的影响。文献[7]针对多通道DRAM 做了建模,并且分析了不同的配置和使用情况对性能的影响。这两篇文献都对所设计的模型做了详尽的分析,具有很好的参考价值,但是两者的通用性欠佳。本文提出了一个可配置的通用存储器SystemC模型。
2 SystemC
SystemC可被视作C++硬件建模和仿真的扩展库,特别适合集成电路的建模,但它事实上可以用来描述更多的系统。SystemC通过确定仿真核心(simulation kernel)算法定义了处理并行事件和仿真时间的机制。SystemC还定义了模块、端口、接口、通道等概念来组成一个复杂SoC的连接关系和层次结构。因此,它解决了标准C++语言用于复杂硬件建模时的难题。
|
|