劉 靜
(青海水電技師學院,西寧 810007)
信號發(fā)生器是一種能提供各種頻率、波形和輸出電平電信號的設備。測試測量通常要求信號發(fā)生與信號采集同時進行,采集數據占用較高的網絡傳輸帶寬,若信號發(fā)生數據由上位機計算提供,數據傳輸上行下行并用,可能因為帶寬不足而導致系統性能受限,甚至測試失敗。若信號發(fā)生器具有足夠的計算能力,獨立實時產生波形數據,則上位機與信號發(fā)生器之間交換命令及參數即可,大大節(jié)約傳輸帶寬。
這種信號發(fā)生器使用基于DSP及其外圍電路組成的硬件系統,上位機通過RJ45網絡接口與硬件系統通信連接,可以根據測試要求實時改變信號類型和參數,DSP依據上位機指令,獨立運行程序,計算產生信號數據,并通過DA芯片轉換后輸出信號波形。
本文的研究選擇了McASP(Multichannel Audio Serial Port多通道音頻串口)。音頻接口多通道大數據處理能力滿足信號發(fā)生器高速實時傳輸數據的要求。
本系統采用TI公司推出的低功耗高性能定浮點兼容TMS320-C6748 DSP芯片為核心,獨立運行信號發(fā)生程序并產生信號數據。
以太網PHY(指物理層)部分采用TI公司的DP83640芯片。(DP83640是一款為基于IEEE 1588標準的實時工業(yè)互聯提供高級精確時鐘同步的以太網收發(fā)器芯片)。
數模轉換器DAC采用TI公司的PCM1795,分辨率32位,采樣頻率高達192kHz。
此系統中使用了I2S協議。它的優(yōu)點在于獨立時鐘與數據信號的導線傳輸的設計,并且通過將時鐘數據和信號進行分離,從而避免因時差而引起的信號失真,保證了信號的完整性。
此系統中我們選用了內部時鐘,DSP的時鐘為24M,在此基礎上由McASP對DSP進行時鐘分配。數據引腳類型是McASP,數據傳輸的類型為I2S并由EDMA控制的。
系統軟件主要由初始化、主控、信號波形數據生成、EDMA傳輸和網絡傳輸模塊組成,主控模塊負責根據不同的命令及參數調用不同的信號生成函數。
初始化模塊的功能主要包括系統初始化、存儲器分配、MCASP接口,網絡傳輸初始化等。
信號波形數據生成模塊主要負責生成各種信號波形。
網絡傳輸模塊負責與上位機通過以太網互傳數據。
EDMA傳輸模塊負責實時向MCASP左右通道發(fā)送信號數據。
本信號發(fā)生器通過程序算法實現信號生成,屬于虛擬信號發(fā)生裝置。根據常用信號的如正弦信號,三角信號,方波信號等的函數特征進行函數代碼的編寫,以此作為信號發(fā)生器的信號生成源代碼。DSP運行程序生成大量信號數據,經過采樣D/A數模轉換輸出波形。此類方式具有很好的可編程性,可以根據實際的需要及時修改程序,不斷提升性能,增加實用功能。
下面以正弦信號為例說明信號生成程序基本原理:
正弦信號的基本表達式為:

而實際上用到的是這樣的表達式

(其中Y為實際輸出幅值大小,A為給定幅值大小,φ為初始相位,b為偏移量,fout為信號輸出的頻率)
如果采樣周期為Ts,則采樣頻率為fs,Δt為每次采樣的間隔時間1/fs。那么,得到離散的實際信號幅值為:

同時,瞬時時刻的相位為
根據以上的公式,我們在編寫代碼時,將初相位,幅值,偏移,信號頻率,采樣頻率作為變量,它們都通過上位機來根據需要來賦值,然后就由DSP進行處理。
標準正弦信號及其失真度分析,可見其失真度僅為0.0077%。

圖1 標準正弦信號及其失真度測試
其他形式的波形不再贅述。
DSP具有高速運算能力,利用音頻接口McASP和EDMA技術傳輸信號數據,有效解決了大數據快速傳輸的難題。基于以上硬件和相關技術的數字信號發(fā)生器具備高精度,低失真等優(yōu)點,方便控制操作,實用性強等各項優(yōu)勢,DSP數字信號發(fā)生器的采用已成為一種趨勢。