概述
SystemC的主要用途是设计大型SoC。因此,它主要用于大型半导体公司。
通常这样的公司可能正在开发一个大芯片(非常大!)。这导致了许多问题
- 如何同时开发软件和硬件?
- 如何在RTL设计完成之前开始编写软件驱动程序?
- 如何开发用于Testbench Automation / Constrained Random Verification环境的参考模型?
- 如何构建和重用IP模型以用于高级模型? (否则每家公司都必须从头开始构建处理器型号,总线结构模型等)。
如果开发一个全新的芯片,如何分析总线带宽,数据流等 - 特别是多个处理器竞争总线资源。
SystemC允许公司攻克所有这些问题 - 通过构建具有精确寄存器建模的模型,该模型可用于软件设备驱动程序开发。通常使用非常快的处理器模型和松散时序的模型,该模型可以高速启动处理器模型上的多个软件。
通过一些改进,类似的模型可以用作TBA / CRV的参考。您需要一个参考模型,为什么不重复使用它?
对于体系结构分析,松散时序的模型更适合 - 但是如果您正在改进现有平台而不是从头开始,那么请记住您可能不需要它。
对于可重复使用的模型 - 这是TLM2的重点,创建标准API以允许交换模型。现有的API(SCML,TAC等)可以逐步迁移到标准,促进重用。
最后为什么选择SystemC?为什么不使用SystemVerilog;或Java;或Python;或者Haskell;或其他你喜欢的语言?
有许多因素,一些是实际的,一些是政治的,一些是历史的。
在我看来,主要因素是/是
1.系统架构师讲C ++ / Excel / Word / Matlab。他们不会说Verilog / SystemVerilog / VHDL
2. SystemC始于1999年
3. EDA供应商支持SystemC并开发了允许构建虚拟平台的工具
附:关于查找参考/信息/事实,要记住的关键点是SoC / VLSI设计的世界很小。没有多少公司拥有开发大芯片的资源;在这些公司中,没有多少系统架构师/建模师。在典型的大型芯片开发中,他们可能是许多软件工程师 - 可能远远超过硬件工程师;在硬件中,他们将成为一些后端资源;合理数量的RTL设计师;相似或更多的验证工程师;也许还有一个系统架构师。因此,与Verilog / VHDL / SystemVerilog相比,SystemC并没有被大量人使用。
最后
以上就是怕孤独老虎为你收集整理的为什么使用SystemC,谁在使用SystemC?的全部内容,希望文章能够帮你解决为什么使用SystemC,谁在使用SystemC?所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复