任何系統(tǒng)級(jí)建模語言,都需要具備在較高層次的抽象能力和對(duì)不同來源的IP的集成能力。建模方法的選擇通常基于語言熟悉程度、建模支持、模型可用性和簡(jiǎn)單性。
在各種軟硬件描述語言中,Verilog和VHDL是RTL級(jí)建模的最佳語言,有足夠的精度如比特精確和周期精確,但缺乏高層次抽象的能力,而且對(duì)軟件部分的描述無能為力。
而C/C++、Java等都是軟件的優(yōu)秀描述語言,也具有高層次的抽象能力,一些設(shè)計(jì)師就是用它們來進(jìn)行系統(tǒng)建模的。但他們沒有精確到比特的能力,也沒有并發(fā)描述能力和時(shí)鐘的概念。
通過對(duì)上述語言進(jìn)行擴(kuò)展可以提高描述系統(tǒng)的能力。在這些語言中,有些是在C語言基礎(chǔ)上進(jìn)行擴(kuò)展的HardwareC和SpecC,它們分別由斯坦福大學(xué)和加州大學(xué)研究小組開發(fā)。
還有在Java上擴(kuò)展的語言如JHDL,在Verilog上擴(kuò)展的SystemVerilog,以及在C++上擴(kuò)展的SystemC。這些語言通過增加系統(tǒng)描述的關(guān)鍵詞,可以實(shí)現(xiàn)硬件和軟件的描述,具有描述系統(tǒng)的能力。業(yè)界獲得較多支持和應(yīng)用較為廣泛的語言是SystemVerilog和SystemC。
SystemVerilog是在Verilog上的擴(kuò)展,吸收了C/C++語言中的一些變量,可以實(shí)現(xiàn)和C語言一起仿真。由于是在Verilog上的擴(kuò)展,SystemVerilog的優(yōu)勢(shì)在于基于時(shí)鐘的建模能力和驗(yàn)證能力,但在TLM的抽象上還存在一些不足,如缺少抽象的數(shù)據(jù)類型等。更為成功的系統(tǒng)建模語言無疑是SystemC。
SystemC是OSCI推出的基于C++語言擴(kuò)展的描述語言,是一種可以完成電子系統(tǒng)從軟件到硬件的全部建模過程的語言。在目前的設(shè)計(jì)中,軟件開發(fā)占到設(shè)計(jì)任務(wù)的60%~90%,基于C++語言擴(kuò)展的語言SystemC比從HDL擴(kuò)展的語言有更加有利的發(fā)展趨勢(shì)。SystemC完全支持TLM建模,而且OSCI已經(jīng)提出了TLM建模的標(biāo)準(zhǔn),而其他語言目前還沒有完全支持TLM建模。
SystemC簡(jiǎn)介
SytemC最初的開發(fā)是在Synopsys、Coware和UC Irvine等公司和研究機(jī)構(gòu)中進(jìn)行的,在1999年SystemC被正式推出。SytemC由Open SystemC Initiative (OSCI) 負(fù)責(zé)支持、維護(hù)和發(fā)展。
SystemC是一種基于C++的系統(tǒng)設(shè)計(jì)語言。在SystemC以前,C和C++是芯片結(jié)構(gòu)設(shè)計(jì)的主要語言。而在SoC設(shè)計(jì)中需要集成各種IP和嵌入式軟件,C++具有面向?qū)ο蟮脑O(shè)計(jì)觀念,很適合作為SoC系統(tǒng)的開發(fā)語言。
SystemC在C++語言的基礎(chǔ)上增加了信號(hào)、事件等概念用來描述硬件,而且還可以支持定時(shí)、并發(fā)等概念。
SystemC可以讓系統(tǒng)、硬件和軟件工程師使用相同的語言完成整個(gè)電子系統(tǒng)的全部建模過程,這樣做能夠?yàn)檐浻布澐趾涂s短產(chǎn)品的上市時(shí)間帶來幫助。SystemC通過定義新的C++類庫和仿真核,用以支持硬件的建模和仿真。
-
硬件
+關(guān)注
關(guān)注
11文章
3481瀏覽量
67459 -
ESL
+關(guān)注
關(guān)注
1文章
76瀏覽量
21711 -
模型
+關(guān)注
關(guān)注
1文章
3516瀏覽量
50363
發(fā)布評(píng)論請(qǐng)先 登錄
回去 ESL6/R&S羅德與斯瓦茨 ESL6
硬件驗(yàn)證語言——簡(jiǎn)介
基于ESL方法的DSP微處理器行為模型設(shè)計(jì)
基于SystemC事務(wù)級(jí)的建模仿真研究
面向FPGA的ESL工具
面向FPGA的電子系統(tǒng)級(jí) (ESL) 的新一代設(shè)計(jì)工具
ESL設(shè)計(jì)要點(diǎn)
UML統(tǒng)一建模語言

什么是系統(tǒng)建模語言SysML?

評(píng)論