盡管軟件無線電(SDR)的指導原則是“開發一次,隨處運行”,但是每當硬件發生變化時,所有開發經常要重新開始。業界已經認識到,基于文本規范的傳統開發模式已無法滿足SDR硬件和軟件的可移植性要求。這種認識促使下一代通信無線電的一個新設計方法的產生。該方法基于更高層次抽象描述,采用“基于模型的設計”思想,其核心為基于“與實現無關的模型(IIM)”和“特定實現的模型(ISM)”的可操作性規范。聯合戰術無線電系統(JTRS)的聯合項目辦公室(JPO)已經提出這些可操作規范的使用指導方針,以便能充分發揮SDR的潛能。
SDR所提供的無線電可被動態地編程,以支持不同的波形標準、提供新特性、改善系統性能,以及支持新的業務。目前SDR發展的推動者主要是美國軍方,他們希望在SDR上實現基礎的JTRS(下一代通信系統)。SDR將讓士兵能在各種通信系統上進行通訊,并僅需通過增加軟件就可模仿任何無線電的功能。與此同時,一個開放和可互操作的框架,特別是由軟件通信架構(SCA)定義的框架,可顯著減少設計、部署和維護將來無線電的費用。從目前來看,由于SDR的低成本優勢,許多商用無線設備廠商也逐步開始采納SDR架構。
作為JTRS項目的一個重要分支,SCA提供了一個定義在各種軟、硬件之間如何實現互操作性的開放架構框架。SCA還提出一個被設計用來提供不同波形(與GSM和 802.11等標準類似)之間互操作性的核心框架(CF),這些波形作為軟件應用用在商業用途中,可被下載到任何支持SCA規范的無線電設備上。
開發復雜度增加
幾乎每次通信技術的重大進步都會給軟件和硬件設計工程師帶來巨大挑戰,SDR也不例外。領先的武器承包商、電子元件供應商以及系統集成商目前都在開發下一代SDR,并承諾新的SDR將使無線通信改頭換面,各種無線設備將可以相互操作,新功能的添加也將可通過軟件下載來實現。
通過運行在更靈活的硬件上的軟件程序來實現無線系統與任何波形之間的通信,將是一個很大的設計挑戰。在當今的軍用或商用無線平臺中,硬件都是針對波形進行優化,特別是射頻部分更是針對無線電所工作的狹窄頻段進行優化。從專用設計轉向通用設計必然會對系統的實時性能、電源消耗和尺寸大小等方面帶來不利影響。
傳統設計方法的缺點
到目前為止,大多數SDR設計工程師一直使用傳統的設計方法:將系統架構師定義的規范細化為文檔,用這些文檔指導專注于信號處理或射頻工程領域的項目團隊,然后由這些團隊定義硬件、設計電路、編寫軟件、運行仿真、測試并生成大量數據,這些數據被用來驗證最終實現結果是否滿足規范要求。
這種方法的一個重要問題是,許多錯誤常常要在原型階段上所有模塊可以一起測試的時候才能被檢測出來。如果產品原型不滿足規范,設計工程師必須確定問題是出自于系統需求、仿真模型、接口,還是目標處理器。因為解決問題的成本隨著設計規模的增大而不斷增加,所以目標處理器出現問題將快速增加開發成本。
波形可移植性的關鍵挑戰
雖然這些挑戰不易解決,但與多目標開發的要求相比,其難度則遜色多了。每一個主要的開發項目都必須考慮各種硬件選項,包括通用處理器(GPP)、DSP、FPGA,而且硬件的選擇常常要到開發過程進入到一定階段時才能確定下來。即使硬件已經選定,設計工程師也必須對硬件升級和外形因子改變有所準備,以便能完全改變開發方向,比如從DSP轉換到FPGA。傳統的開發方法與特定硬件架構相關聯,因此為了實現一種新的硬件平臺,必須從技術規范重新開始。
意識到傳統設計方法的局限性,JTRS聯合項目辦公室提出了一種新的設計方法。在該方法中,波形規范在一個可執行的IIM(與硬件規范無關)以及一個或多個可執行的ISM(與硬件規范有關)中定義。這種方法有三個優點:首先,IIM和ISM是單個、明確、可執行的波形規范,可以在團隊、部門和承包商之間共享;其次,它們提供了一個高層次的設計視角,以進行系統級的分析和折衷,并發現潛在的設計和實現錯誤;最后,它們可降低將波形從一個無線電裝置移植到另一個無線電裝置的成本,而同時還支持性能分析、需求分析跟蹤以及高性能波形設計。
IIM包含可用來定義、表征和驗證波形行為的信息,波形行為可以被驗證和跟蹤是否滿足波形需求文檔中的要求。波形的信號流、控制流和聯網方式可以利用波形子系統邊界、子系統抖動、延時和定時要求、子系統處理要求以及信號端口采樣次數等信息來定義。可執行的IIM提供一個測試臺來驗證波形功能模塊或者系統是否滿足系統要求,并驗證它們的性能。
另一方面,ISM反映了預期實現被移植到特定無線電裝置架構時的詳情。該模型包含更多將處理元件分配到各種處理器資源的信息,這可讓設計工程師詳細了解此實現。它還包括目標處理器的執行時間、延遲時間、存儲器和隊列大小的模型,這允許波形設計工程師以及后續移植工作能在系統級層次上理解資源變化帶來的影響,例如:吞吐量、抖動、延時、存儲器消耗、DC功率和實時性能。
基于模型的設計使IIM 和ISM成為現實
經過驗證的基于模型的設計技術包含了IIM 和ISM概念。不同于基于文本的方法(依賴于對不斷改變的設計規范文件的解釋),基于模型的設計以方框圖可執行規范的創建為基礎。可執行規范可以消除設計的不確定性,并實現整個組織和客戶、承包商、供應商之間的通訊。利用基于模型的設計,算法工程師、RF設計工程師、軟件和硬件設計工程師以及其它開發團隊都可以進行合作,做出設計折衷以及評估方案,從而提高系統性能并降低成本。
該波形的可執行規范最初在高層次上定義的,它利用預建的元素和先進的算法,并包含了其它一些可編程語言,如C、C++、Fortran、MATLAB或 HDL代碼。然后,執行這個規范以確定目前模型中的算法或元件所能提供的性能。通過在不同的狀態、參數值和輸入情況下執行系統行為級的仿真,設計工程師能很快識別、隔離并修復系統設計問題。通過增加、減少或者移動模塊,或者改變參數并立即評估這些變化帶來的影響,設計工程師可以很快地修改設計。
通過簡單地改變參數,設計工程師能夠評估從浮點模型(通常在設計的早期使用)到定點模型的影響。定點模型通常用在硬件實現階段以減小系統的體積、內存和電源消耗。
在基于文本的方法中,不同元件的實現(無論是硬件還是軟件)一般都是手工重新編碼,這個過程不但費時,而且容易出錯。基于模型的設計包含了IIM和ISM兩種模型,前者由與硬件無關的功能模塊組成,后者由針對特定硬件優化過的模塊組成。隨著開發流程從制定規范階段發展到設計、實現并進入整體系統的驗證和測試,模型的內容也越來越詳細,但它在整個過程中始終是系統單一而明確的代表。
在保護設計知識產權的同時,這種模型可被用來自動生成許多硬件平臺都能使用的代碼,包括用于GPP的C代碼、用于DSP的C代碼和匯編代碼,以及用于FPGA的HDL代碼。自動代碼的生成能為生成的代碼提供編碼標準,因為同樣的構造可用在每一個實現中。這種方法可消除手工編碼的錯誤,并限制仿真代碼和實際嵌入式代碼之間的潛在誤差。由于代碼可直接跟蹤仿真,所以錯誤必然出現在接口或實時約束條件下的執行當中。因為這些模型是獨立于嵌入式硬件而開發的,所以可以很方便將它移植到其它平臺上,并在以后系統中復用。
在整個開發過程中,將測試功能集成到模型中可確保設計質量。每一種模型都有一組測試向量,并對每個發行版本都有測試結果的基線。不斷驗證和確認有助于較早發現問題,這樣解決起來也更簡單且花費更少。可在以后設計過程中使用系統架構師開發的系統級模型,以便結合實際的仿真或測試數據,從系統的角度對設計進行驗證。
本文小結
在實現SDR所需的開發方法中,基于模型的設計是關鍵。它可以在不同的硬件、軟件以及SCA核框架平臺上支持自動代碼生成和代碼可移植性。通過建立可執行的規范、IIM和ISM模型,并維護原始波形規范的可跟蹤性、確保在整個開發過程中不斷驗證,基于模型的設計方法可以使SDR的開發過程簡化并更有效率。采用該方法設計和部署SDR比傳統的方法更加簡單、更加魯棒,從而提高SDR系統的性能和可靠性,并降低設計成本。
作者:Alex Rodriguez
MathWorks公司