基于ADSP-BF533的數字通信信號發生器設計與實現
3系統軟件設計
系統中的微型計算機采用Windows 2000/XP操作系統,其USB驅動程序由DDK開發,控制應用程序可通過VS2005進行開發。計算機可根據用戶的輸入參數產生2ASK、2FSK、8FSK、2PSK、2DPSK、QPSK、QDPSK等通信信號或者它們幾種混合的通信環境信號,窄帶高斯白噪聲和噪聲干擾、局部頻帶干擾、梳狀干擾、相關干擾信號.并可將數據打包后通過USB接口發送到信號發生板卡。隨后由計算機通過發送控制命令字的方式來處理數據,主要是開始輸出波形、停止輸出波形,更新波形數據,更新通信信號環境波形數據,更新干擾/噪聲數據,更新信噪比或干信比。
系統的軟件設計主要是針對BF533進行編程。Blackfin系列DSP在軟件方面支持C語言和匯編語言,同時支持二者的混合編程。C語言程序結構好、可讀性強、易移植,但對于中斷的處理速度慢。匯編語言處理速度快但可讀性差,不易調試。C和匯編混合編程結合了各自的優勢,能構造出結構好且執行速度快的程序。本系統的軟件程序流程圖如圖3所示。另外,在編程過程中主要注意以下事項:
(1)無論用C還是匯編,系統中只有一組相同的寄存器可供使用,因此要使用這些寄存器,子函數必須先保存,返回之前恢復。
(2)要嚴格按照寄存器的類型來使用,不同類型的寄存器不可混用。
(3)盡量節省寄存器資源。
(4)為了提高代碼運行的速度,要善于使用并行指令。
在本系統中,中斷與DMA方式運用較多,主要用到了PF中斷、MDMA中斷、SPI DMA中斷和PPI DMA中斷,系統中斷控制器可控制所有的系統中斷,并且管理他們的優先級。DMA不需要內核參入,在DMA運行中內核可以用于計算也可以響應中斷。
系統上電后,DSP1先從Flash中讀取自身的加載代碼,然后再從Flash中讀取DSP2的加載代碼通過SPI接口傳送到DSP2加載DSP2,最后再初始化系統時鐘、SDRAM、NET2272USB控制芯片,進入等待微機用戶指令狀態。4
4 結束語
該數字通信信號發生器只需要在通用微機或者PC機上安裝軟件即可實現,其成本低,效率高,實時性好,特別是在通信對抗信號源模擬方面,更是顯示了無可比擬的優越性。
數字通信相關文章:數字通信原理
評論