​SystemC 中的系统级建模

文摘   2024-11-05 07:02   上海  
过去,硬件设计界标准化了两种语言:VHDL 和 Verilog。最近十多年来,人们对可用于更高抽象级别的描述的互补语言的兴趣日益浓厚。这种努力背后的驱动力是设计复杂性的同步增加,数百万门设计,以及在首次设计成功的情况下更快地完成设计的压力增加。在这些高级语言中,SystemC、System-Verilog 和 SpecC 最为广泛。这些语言将众所周知的语法与强大的结构融合在一起,支持复杂系统的建模和仿真;特别是 SystemC 越来越受欢迎。


SystemC 是一组 C++ 类和宏,它们在 C++ 中提供事件驱动的仿真内核,以及信号、事件和同步原语,刻意模仿硬件描述语言 VHDL 和 Verilog。虽然此类语言通常用于寄存器传输级描述,但 SystemC 通常应用于系统级建模、架构探索、软件开发、功能验证和高级综合。SystemC 通常与电子系统级 (ESL) 设计和事务级建模 (TLM) 相关。
硬件描述语言和抽象级别
SystemC 让工程师可以同时设计硬件和软件组件,就像这些组件存在于最终系统上一样,但抽象程度更高,从而真正提高了工作效率。这意味着可以更多地关注系统的实际功能,而不是其实现细节。此外,由于详细实现尚未最终确定,因此仍然可以对设计进行一致的更改,从而能够有效地评估不同的架构替代方案(包括硬件和软件之间的功能划分)。SystemC 还具有高执行速度的特点;请注意,这种高速度不仅是由于 SystemC 仿真引擎本身,而且还由于通常用于基于 SystemC 的系统描述的高抽象级别。

事务级建模 (TLM)
使用系统级建模语言(例如 SystemC)不足以构建有效的可模拟模型:还需要定义各种模型之间的建模风格和互操作性规则。此外,很难确定要抽象哪些特征(以及抽象到何种程度),也很难确定如何使用剩余的特征来创建可执行模型,以便对目标系统进行有意义、高效和准确的分析。事务级建模 (TLM) 是由加州大学欧文分校首次提出的一种想法,现在已被广泛接受为一种有效的通信抽象建模技术,根据最近的研究,它还可用于计算。事实上,我们将事务级建模 (TLM) 定义为一种建模风格,其中至少有一种(在通信和计算之间)引入了近似的时间概念。
TLM 的基本概念是仅对所需的细节级别进行建模;通过消除不必要的细节,设计团队可以大大提高模拟速度。在这个级别,对设计的更改也相对容易且具有成本效益,因为开发团队尚未深入研究底层细节,例如并行总线实现与串行总线。事务级模型不仅对嵌入式软件开发有用,而且对与性能评估相关的其他活动也很有用。
2008 年,OSCI 委员会提出了一个由一组 SystemC 原语组成的 TLM 库,允许设计人员实现具有不同准确度的多个事务级通信协议。

软硬件协同设计 HW-SW Co-Design
欢迎后台留言,AI 客服全天在线。脱离物理硬件,开发测试和调试软件。基于虚拟原型的软硬件协同设计,提前一年实现产品上市创收,降低一半开发时间。
 最新文章