利用基于SystemC/TLM的方法學進行IP開發和FPGA建模
硬件/軟件劃分本文引用地址:http://www.104case.com/article/191821.htm
系統中軟硬件劃分決策是最為重要的一個方面。之所以硬件/軟件劃分變得如此關鍵,是因為如下一些因素,如系統的實時處理需求,應用軟件的存儲限制以及其他因素。許多時候,設計開發階段一些決策依賴于直覺判斷或者先前的經驗。但當某些事情發生錯誤時這將蘊含一個風險。隨著系統復雜度以及流片成本的增加,這種決策方法可能會鑄成大錯。強調需要一種有助于實現更好軟硬件劃分決策的方法學具有許多原因。
在UWB MAC系統開發范例中,具有很多必須很好遵守的時間約束,這是因為應用層完全依賴于空中――即來自射頻天線的全局廣播定時。實現決策的方案建立在我們從具體的系統級平臺的執行中所獲取的經驗。我們能夠分析流水線數據通道中的數據流,能夠有效地發現它們是否將對系統構成任何瓶頸。通常,當系統中的數據流發送時,數據幀必須從MAC發送到PHY,而對于接收,所產生的數據幀則從PHY到MAC,并存入到存儲器中由軟件進行進一步的分析。在仿真場景分析過程中,能夠識別出是否需要在硬件中進行一些協議解析以采取及時的措施。
圖3:系統中著重硬件支持需求的應用場景。
圖3中詳細給出了一個決策范例。根據協議的需求,接收數據中有一個控制包,它通知下次發送事件的通用定時,即何時發送下一個數據包。考慮到MAC硬件是一個典型的數據通道,并將控制幀傳送到存儲器中,軟件對控制幀進行處理并決定打開發送窗口。在發送窗口打開出現問題時,用這種方案就能發現瓶頸。系統平臺結果被用來確認這一理解,于是能夠做出更好決策來實現效率更高的系統。圖3中的另一個場景顯示了軟硬件劃分后的結果。
第一個范例中,當軟件處理控制幀時,全局定時如下:
窗口編程時間=T+t RP +tPM+tintr+tsw_lat>T+texp,故在系統中,SW沒有對及時打開發送窗口的指令進行編程。
評論