本文將嵌入式技術應用于數字監(jiān)測接收機系統(tǒng)設計中,采用TI公司的TMS320DM6437為核心處理器,以DSP/BIOS操作系統(tǒng)為軟件平臺,通過芯片支持庫和應用程序構建成一個完整的數字監(jiān)測接收機系統(tǒng)。監(jiān)測接收機通過周期地掃描給定頻段,利用頻譜分析測量頻譜占用度、頻率發(fā)射類型、帶寬和載干比等參數,并實現自動測量。
1 DSP/BIOS
針對TI公司的TMS320系列數字信號處理器,DSP/BIOS為開發(fā)者提供一種實時操作系統(tǒng)解決方案。DSP/BIOS是一個功能豐富、可擴展的內核服務集,開發(fā)人員可以用來管理系統(tǒng)級的資源和構建DSP應用的基礎架構。在DSP/BIOS的協(xié)助下,開發(fā)人員可以拋開底層開發(fā)的困擾,從而專注于算法實現和系統(tǒng)集成。
DSP/BIOS是一個可剪裁的實時操作系統(tǒng),主要由3部分組成:多線程實時內核、實時分析工具和芯片支持庫。多線程實時內核維護調度多線程的運行,負責任務的調度及時間輪詢算法的實現;實時分析工具提供線程算法實時運行的情況,方便用戶驗證系統(tǒng)設計的正確性和可靠性;芯片支持庫負責管理外設資源,利用圖形工具便可完成復雜的外設寄存器初始化配置。
1.1 多線程實時內核
DSP/BIOS設計的主要目的是降低存儲器需求的空間和CPU響應時間。這種設計有利于縮減程序代碼量,提高系統(tǒng)模塊化程度,降低指令的執(zhí)行周期以及實現后臺任務間的通信和管理。
1.2 實時分析工具
DSP/BIOS的實時分析工具能實時捕獲和顯示數據,這對于軟件開發(fā)階段診斷系統(tǒng)和查找系統(tǒng)缺陷非常有幫助。實時分析工具主要包含兩方面的內容:實時數據交換(RTDX)功能和面板工具插件。實時分析工具是在DSP空閑周期內完成與目標應用程序間的通信,因此不會影響應用程序的實時性。
1.3 芯片支持庫
在DSP系統(tǒng)軟件設計中,一般會涉及大量對片上外設的操作,往往要消耗過多的時間和精力。TI公司為5000系列和6000系列的DSP提供了各自的芯片支持庫CSL(Chip Support Library)。CSL庫函數主要用于配置和控制DSP片上外設,使片上外設更容易使用,縮短開發(fā)時間,增強可移植性。用CSL來配置和管理DSP的硬件外設模塊,可以使固件程序的開發(fā)變得更加方便和快捷。
2 數字監(jiān)測接收機系統(tǒng)
2.1 數字監(jiān)測接收機系統(tǒng)分析
數字監(jiān)測接收機工作原理如圖1所示。數字監(jiān)測接收機由標準源、調諧器、中頻數字信號處理器和電源等模塊組成。接收機通過網絡與遠程計算機工作站相連,計算機工作站完成信號顯示、對接收機輸出信號的進一步處理,以及對接收機的配置及控制。

?
?
中頻數字信號處理器是系統(tǒng)的核心部件,負責對寬帶信號進行中頻數字化處理。其中包括FPGA實現中頻信號高速采樣、數字DDC(Direct Digital Control,直接數字控制)和DSP完成中頻/視頻PSD處理,以及信號解調、ITU測試等工作。
DSP需要利用DSP/BIOS操作系統(tǒng)實現以下功能:接收FPGA數字下變頻后的中頻數據,配置FPGA數字下變頻參數,測量射頻參數和信號頻譜,解調數字/模擬調制信號,打包處理數據,解析網絡命令等。其基本框架如圖2所示。

?
針對以上分析,系統(tǒng)需要創(chuàng)建10個任務。其中,DDC數據接收為硬中斷任務,系統(tǒng)狀態(tài)切換和打包處理數據啟用軟中斷任務,其余皆為可搶占任務。由于DSP/BIOS采用多任務優(yōu)先級搶占式調度,在RTOS中當前處理的任務設置為優(yōu)先級最高,處理完成后將其優(yōu)先級降低使得其他任務能夠工作。網絡命令接收和解析網絡命令享有最高優(yōu)先級;DDC參數配置優(yōu)先級次之;測量射頻參數、測量信號頻譜和解調信號采用相同的優(yōu)先級,網絡數據發(fā)送優(yōu)先級最低。任務之間通過消息機制實現共用數據互斥訪問。
2. 2 DSP/BIOS設置
根據系統(tǒng)需求,利用DSP/BIOS配置工具配置中斷和任務。在系統(tǒng)中對參數的設定直接影響到系統(tǒng)的執(zhí)行情況,特別是對各個對象的堆棧設置,如果分配不合理,將會造成在程序執(zhí)行過程中數據丟失,嚴重時將給系統(tǒng)帶來災難性破壞。
由于系統(tǒng)需要通過時間片輪詢的方式滿足RTOS多任務調度的需求,需要通過配置工具配置一個周期函數管理(PRD)。其作用是在指定的時間內執(zhí)行某一個任務,若超出此時間,則將當前任務的執(zhí)行掛起轉而執(zhí)行同等優(yōu)先級的其他任務。該任務通過DSP/BIOS提供的TSK_yield來實現。
系統(tǒng)還需配置時間標志管理(Event Log Manager)來將當前調試信息實時打印輸出,方便系統(tǒng)調試和維護。每個任務都有自己的緩沖空間,任務間通過信號量和消息郵箱進行互斥訪問公共資源,達到系統(tǒng)協(xié)同合作的目的。
DSP/BIOS配置如圖3所示。

?
?
需要指出的是,測量射頻參數任務、測量信號頻譜任務和解調信號任務采用相同的優(yōu)先級,其任務配置并未在配置工具中設置,而是在代碼中通過TaskCreate()函數動態(tài)建立的,提高了系統(tǒng)配置的靈活性和實用性。
3 結果分析
3.1 任務調度
在DSP/BIOS中,可以通過線程執(zhí)行圖分析各個線程的執(zhí)行情況。本系統(tǒng)的線程執(zhí)行圖如圖4所示。

?
?
從圖中可以看出數據處理任務(Other Threads,通過TaskCreate函數建立)和網絡處理任務(prdNdk)的執(zhí)行順序。系統(tǒng)先啟動網絡處理任務接收原始數據,完成數據處理任務后,通過任務調度切換至網絡任務,從而完成了數據處理任務和網絡處理任務的正常切換。
3.2 日志分析
在系統(tǒng)設計時,數據處理任務在代碼中動態(tài)創(chuàng)建,不能通過線程執(zhí)行圖分析,只能通過日志分析標注當前任務運行狀態(tài)。日志記錄圖如圖5所示。4個數據處理任務具有相同的優(yōu)先級,不能搶占其他任務的資源,只能按照一定的順序輪詢執(zhí)行。從圖中可以看出,系統(tǒng)能正常地完成數據處理任務。

?
?
結語
本文利用DSP/BIOS操作系統(tǒng)對數字監(jiān)測接收機系統(tǒng)進行設計,采用時間片輪詢方式在任務間實施調度。該方案已應用在實際的工程中,通過DSP/BIOS分析工具可知該數字監(jiān)測接收機系統(tǒng)能夠在滿足實時性的情況下正常穩(wěn)定地工作,且設計和資源分配得到了正確的應用。
評論