利用基于SystemC/TLM的方法學(xué)進(jìn)行IP開(kāi)發(fā)和FPGA建模
在事務(wù)級(jí)建模時(shí),本文引用地址:http://m.butianyuan.cn/article/191821.htm
* 更加注重?cái)?shù)據(jù)轉(zhuǎn)移的功能-即轉(zhuǎn)移的是什么數(shù)據(jù),從那里來(lái),到那里去
* 不太關(guān)注實(shí)際的實(shí)現(xiàn)-即不太關(guān)注數(shù)據(jù)轉(zhuǎn)移所用的實(shí)際協(xié)議
該方案使得系統(tǒng)設(shè)計(jì)師的實(shí)驗(yàn)變得更加容易,例如,可以利用不同的總線架構(gòu)(所有都支持公共的抽象接口),不一定需要對(duì)與任意總線進(jìn)行交互的模型進(jìn)行重新編碼,只要這些模型能夠通過(guò)公用接口與總線進(jìn)行交互即可。
在我們的方法中,起始點(diǎn)是對(duì)整個(gè)功能系統(tǒng)平臺(tái)進(jìn)行建模。這是利用SystemC并通過(guò)sc fifo接口實(shí)現(xiàn)的。為了描述通信接口間的數(shù)據(jù)流,采用了各種架構(gòu)。這些架構(gòu)基本上都是協(xié)議需要遵守的參數(shù)和幀格式信息。圍繞IP創(chuàng)建了一個(gè)測(cè)試環(huán)境,環(huán)境中開(kāi)發(fā)了測(cè)試平臺(tái),來(lái)傳輸分別來(lái)自兩側(cè)的輸入,即發(fā)送和接收。在這兩種范例中,利用這種配置產(chǎn)生了預(yù)期的結(jié)果或參考。在抽象層,與平臺(tái)一起使用來(lái)進(jìn)行修改,快速并有效地做試驗(yàn)時(shí)將變得很容易,不過(guò)精度會(huì)降低一些。
圖中所示為用于開(kāi)發(fā)中下一級(jí)輸入的配置平臺(tái)。這里的核心思想是確定系統(tǒng)的瓶頸并執(zhí)行軟硬件劃分。該方案在進(jìn)行軟硬件劃分方面是有效并安全的,因?yàn)槠脚_(tái)提供能夠用來(lái)識(shí)別出整個(gè)系統(tǒng)瓶頸的原始統(tǒng)計(jì)信息。該階段中,實(shí)現(xiàn)了IP的功能模型,使其具備了具體的接口,并嵌入了功能性。而在軟硬件劃分階段將對(duì)該方法學(xué)中所用的方案進(jìn)行具體化。附加到該平臺(tái)上的另一個(gè)是DMA-PL080的TLM模型,下一步是用MAC HW RTL替代整個(gè)MAC HW SystemC功能模型,如圖2所示。整個(gè)周邊環(huán)境是一樣的,因此測(cè)試注入與其他步驟中的注入一樣。與之前環(huán)境的變化是采用了負(fù)責(zé)到信號(hào)變換的事務(wù)處理適配器。由于該系統(tǒng)基于ARM,適配器的書寫必須遵從信號(hào)級(jí)AHB總線接口。實(shí)際上,該平臺(tái)將相同的環(huán)境表征為現(xiàn)實(shí)系統(tǒng),不過(guò)與此同時(shí),開(kāi)始面對(duì)仿真性能方面的問(wèn)題。顯然,我們還不能用該配置來(lái)執(zhí)行廣泛的調(diào)試/驗(yàn)證,不過(guò)可以運(yùn)行簡(jiǎn)單的測(cè)試(具有較短的仿真時(shí)間)。
圖2:從SystemC MAC HW向VHDL RTL MAC HW適配器的轉(zhuǎn)換。
由于在當(dāng)前仿真環(huán)境中發(fā)現(xiàn)瓶頸,我們對(duì)基于硬件模擬XTREME服務(wù)器的平臺(tái)進(jìn)行評(píng)估,該平臺(tái)基本提供了硬件所需的FPGA塊,并提供了軟件與整個(gè)環(huán)境的無(wú)縫集成?;赬TREME服務(wù)器中早期平臺(tái)的移植只需要很少工作量,并且相對(duì)于基于ncsim的仿真環(huán)境,實(shí)現(xiàn)了5倍的仿真速度。很顯然,這使得我們能夠調(diào)試并執(zhí)行VHDL RTL設(shè)計(jì)的驗(yàn)證,否則將會(huì)浪費(fèi)過(guò)多時(shí)間。同時(shí),基于Xtreme服務(wù)器的平臺(tái)還提供了同等調(diào)試能力。
評(píng)論