基于SystemC/TLM方法學(xué)的IP開(kāi)發(fā)及FPGA建模
圖中所示為用于開(kāi)發(fā)中下一級輸入的配置平臺。這里的核心思想是確定系統的瓶頸并執行軟硬件劃分。該方案在進(jìn)行軟硬件劃分方面是有效并安全的,因為平臺提供能夠用來(lái)識別出整個(gè)系統瓶頸的原始統計信息。該階段中,實(shí)現了IP的功能模型,使其具備了具體的接口,并嵌入了功能性。而在軟硬件劃分階段將對該方法學(xué)中所用的方案進(jìn)行具體化。附加到該平臺上的另一個(gè)是DMA-PL080的TLM模型,下一步是用MACHWRTL替代整個(gè)MACHWSystemC功能模型,如圖2所示。整個(gè)周邊環(huán)境是一樣的,因此測試注入與其他步驟中的注入一樣。與之前環(huán)境的變化是采用了負責到信號變換的事務(wù)處理適配器。由于該系統基于A(yíng)RM,適配器的書(shū)寫(xiě)必須遵從信號級AHB總線(xiàn)接口。實(shí)際上,該平臺將相同的環(huán)境表征為現實(shí)系統,不過(guò)與此同時(shí),開(kāi)始面對仿真性能方面的問(wèn)題。顯然,我們還不能用該配置來(lái)執行廣泛的調試/驗證,不過(guò)可以運行簡(jiǎn)單的測試(具有較短的仿真時(shí)間)。
圖2:從SystemCMACHW向VHDLRTLMACHW適配器的轉換。
由于在當前仿真環(huán)境中發(fā)現瓶頸,我們對基于硬件模擬XTREME服務(wù)器的平臺進(jìn)行評估,該平臺基本提供了硬件所需的FPGA塊,并提供了軟件與整個(gè)環(huán)境的無(wú)縫集成?;赬TREME服務(wù)器中早期平臺的移植只需要很少工作量,并且相對于基于ncsim的仿真環(huán)境,實(shí)現了5倍的仿真速度。很顯然,這使得我們能夠調試并執行VHDLRTL設計的驗證,否則將會(huì )浪費過(guò)多時(shí)間。同時(shí),基于Xtreme服務(wù)器的平臺還提供了同等調試能力。
硬件/軟件劃分
系統中軟硬件劃分決策是最為重要的一個(gè)方面。之所以硬件/軟件劃分變得如此關(guān)鍵,是因為如下一些因素,如系統的實(shí)時(shí)處理需求,應用軟件的存儲限制以及其他因素。許多時(shí)候,設計開(kāi)發(fā)階段一些決策依賴(lài)于直覺(jué)判斷或者先前的經(jīng)驗。但當某些事情發(fā)生錯誤時(shí)這將蘊含一個(gè)風(fēng)險。隨著(zhù)系統復雜度以及流片成本的增加,這種決策方法可能會(huì )鑄成大錯。強調需要一種有助于實(shí)現更好軟硬件劃分決策的方法學(xué)具有許多原因。
在UWBMAC系統開(kāi)發(fā)范例中,具有很多必須很好遵守的時(shí)間約束,這是因為應用層完全依賴(lài)于空中——即來(lái)自射頻天線(xiàn)的全局廣播定時(shí)。實(shí)現決策的方案建立在我們從具體的系統級平臺的執行中所獲取的經(jīng)驗。我們能夠分析流水線(xiàn)數據通道中的數據流,能夠有效地發(fā)現它們是否將對系統構成任何瓶頸。通常,當系統中的數據流發(fā)送時(shí),數據幀必須從MAC發(fā)送到PHY,而對于接收,所產(chǎn)生的數據幀則從PHY到MAC,并存入到存儲器中由軟件進(jìn)行進(jìn)一步的分析。在仿真場(chǎng)景分析過(guò)程中,能夠識別出是否需要在硬件中進(jìn)行一些協(xié)議解析以采取及時(shí)的措施。
圖3:系統中著(zhù)重硬件支持需求的應用場(chǎng)景。
圖3中詳細給出了一個(gè)決策范例。根據協(xié)議的需求,接收數據中有一個(gè)控制包,它通知下次發(fā)送事件的通用定時(shí),即何時(shí)發(fā)送下一個(gè)數據包??紤]到MAC硬件是一個(gè)典型的數據通道,并將控制幀傳送到存儲器中,軟件對控制幀進(jìn)行處理并決定打開(kāi)發(fā)送窗口。在發(fā)送窗口打開(kāi)出現問(wèn)題時(shí),用這種方案就能發(fā)現瓶頸。系統平臺結果被用來(lái)確認這一理解,于是能夠做出更好決策來(lái)實(shí)現效率更高的系統。圖3中的另一個(gè)場(chǎng)景顯示了軟硬件劃分后的結果。
第一個(gè)范例中,當軟件處理控制幀時(shí),全局定時(shí)如下:
窗口編程時(shí)間=T+tRP+tPM+tintr+tsw_lat>T+texp,故在系統中,SW沒(méi)有對及時(shí)打開(kāi)發(fā)送窗口的指令進(jìn)行編程。
在第二個(gè)范例中,當MACHW處理控制幀時(shí),全局定時(shí)為:
窗口編程時(shí)間=T+tprg_winexp,故系統中,HW對及時(shí)打開(kāi)發(fā)送窗口的指令進(jìn)行編程。
與此同時(shí),現有的SPEAr板起到了很大的幫助作用,因為在板上測出了AES-CCM引擎的性能。因此能夠推斷出硬件中存在A(yíng)ES-CCM,因為AES-CCM軟件算法給不出所需要的性能。
評論