西北工業(yè)大學(xué)自動(dòng)化學(xué)院(西安 710072) 蘇 坡 楊建華
西北工業(yè)大學(xué) 航海學(xué)院(西安 710072) 侯 宏
在現(xiàn)代測(cè)控領(lǐng)域,任意波形信號(hào)發(fā)生器已經(jīng)成為系統(tǒng)研發(fā)和調(diào)試必不可少的工具。而目前市場(chǎng)上的信號(hào)發(fā)生器價(jià)格昂貴,體積比較大,而且波形可編程靈活度小,不能滿足實(shí)際的需要。
隨著電子技術(shù)和數(shù)字技術(shù)的飛速發(fā)展,DSP系統(tǒng)已經(jīng)在眾多高科技領(lǐng)域獲得廣泛的應(yīng)用,它具有速度快、編程方便、精度高、穩(wěn)定性好、接口方便、集成度高等特點(diǎn)。本文借助DSP系統(tǒng)的這些優(yōu)點(diǎn),設(shè)計(jì)了一種基于DSP的任意波形的信號(hào)發(fā)生器AWG(Arbitrary Waveform Generator),具有成本低,穩(wěn)定性好,結(jié)構(gòu)簡(jiǎn)單的特點(diǎn)。
運(yùn)用Matlab仿真[1]產(chǎn)生待生成信號(hào)的數(shù)據(jù)文件,通常該數(shù)據(jù)文件都是浮點(diǎn)形式的,根據(jù)數(shù)/模芯片轉(zhuǎn)換的真值表,將浮點(diǎn)形式的數(shù)據(jù)文件轉(zhuǎn)化成對(duì)應(yīng)的十六進(jìn)制INTEL格式數(shù)據(jù)文件,然后將該數(shù)據(jù)文件Load載入到DSP的數(shù)據(jù)存儲(chǔ)空間,接著通過DSP控制DA轉(zhuǎn)換芯片產(chǎn)生所需的信號(hào)。
根據(jù)任意波形信號(hào)的生成原理,本文選用DSP和CPLD聯(lián)合控制的方式,系統(tǒng)主要分為4大功能模塊:1)DSP及其外圍;2)DA模塊;3)存儲(chǔ)擴(kuò)展;4)CPLD。
考慮到成本和易開發(fā)性,主控芯片選用TMS320VC33。VC33是TI推出的一款32位浮點(diǎn)DSP,它的運(yùn)算速度達(dá)150MFLOPS[2],單周期完成32位整數(shù)、40位浮點(diǎn)乘法運(yùn)算;它的地址總線為24位,尋址空間為16M×32bit,為了方便外部存儲(chǔ)器存取,把16M×32bit空間分為PAGE0,PAGE1,PAGE2,PAGE3,當(dāng)STRB和其中一個(gè)PAGE同時(shí)有效時(shí),存儲(chǔ)器接口選通;片內(nèi)34K×32bit SRAM,片上集成一個(gè)同步串口,兩個(gè)32bit的定時(shí)器,一個(gè)DMA通道;支持IEEE Std.1149.1(標(biāo)準(zhǔn)),0.18-us工藝,1.8V 核心電壓,3.3V I/O電壓,低功耗。
電源芯片選用TI公司的TPS767D318芯片,它把5伏的輸入電壓轉(zhuǎn)化成+3.3V和+1.8V分別供給DSP的外圍和內(nèi)核。
選用AD公司生產(chǎn)的AD7840單通道DA轉(zhuǎn)換芯片,該芯片轉(zhuǎn)換速度可達(dá)到400kHz,轉(zhuǎn)換精度14bit,轉(zhuǎn)換范圍為-3V至+3V[3],能夠滿足任意波形信號(hào)產(chǎn)生的要求。該芯片的數(shù)據(jù)線與DSP芯片數(shù)據(jù)線的低14位相連,它的電壓轉(zhuǎn)換公式為其中Vou+為輸出的模擬電壓,PEFIN為參考電壓(+3伏),N值為數(shù)據(jù)總線上提供的數(shù)字信號(hào),其范圍是:-8192#N#8191。其數(shù)字信號(hào)轉(zhuǎn)換成模擬電壓信號(hào)對(duì)應(yīng)的真值表如表1所示。
?
在DA模塊的前端設(shè)置濾波調(diào)理放大電路。
包括外擴(kuò)RAM和外擴(kuò)FLASH。由于VC33內(nèi)部的存儲(chǔ)空間有限,所以要對(duì)VC33進(jìn)行存儲(chǔ)擴(kuò)展。外擴(kuò)RAM選擇CY7C1041,它是一款256K×16bit的靜態(tài)RAM。VC33沒有內(nèi)部Flash,為了完成脫機(jī)運(yùn)行和保存數(shù)據(jù),本設(shè)計(jì)選擇DA28F320作為外擴(kuò)FLASH,它是一款2M×16位的NOR FLASH。
CPLD控制模塊是本設(shè)計(jì)的關(guān)鍵模塊。使用CPLD器件可以提高系統(tǒng)設(shè)計(jì)的靈活性,并且可以簡(jiǎn)化電路設(shè)計(jì),節(jié)省很多常規(guī)電路中的接口器件和I/O口線。由于VC33的內(nèi)部資源有限,有較少的I/O口,而本設(shè)計(jì)外圍設(shè)備比較多,因此采用DSP和CPLD聯(lián)合控制的方式。CPLD控制模塊主要實(shí)現(xiàn)對(duì)外圍設(shè)備的選址,使能和邏輯協(xié)調(diào)控制。
本設(shè)計(jì)CPLD選用的是ALTERA公司MAX7000系列的EPM7128STC100芯片,它具有高阻抗、電可擦等特點(diǎn),可用門單元為2500個(gè),管腳間最大延遲為5ns,工作電壓為+5V。在本設(shè)計(jì)中,將DSP地址總線的高八位A16至A23、讀寫、片選及分頁管腳PAGE0至PAGE3、外部存取選通信號(hào)STRB等控制信號(hào)接入CPLD,實(shí)現(xiàn)對(duì)外圍設(shè)備的選址、使能、中斷控制和有關(guān)邏輯控制[4]。
當(dāng)STRB和PAGE0有效,地址線的高8位A16-A23等于0x20時(shí),選通AD7840芯片(=0);外擴(kuò)RAM CY7C1041的地址線與VC33的低18位相連,當(dāng)STRB和PAGE0有效,地址線的高6位等于001011時(shí),選通外擴(kuò) RAM(=0);當(dāng) PAGE1有效時(shí),選通 FLASH DA28F320(=0),通過 CPLD的 I/O口輸出高電平給使FLASH工作在普通模式。
圖2 生成的幅度為3V頻率為10KHz的方波信號(hào)
圖3 生成的幅度為3V頻率為1KHz的正弦波波信號(hào)
圖4 生成的幅度為3V長度為3ms的巴特沃斯脈沖信號(hào)
系統(tǒng)軟件包括兩個(gè)部分:數(shù)據(jù)格式轉(zhuǎn)換程序和DSP控制程序設(shè)計(jì)。
該部分程序采用Matlab編程。先用Matlab仿真產(chǎn)生待生成信號(hào)的數(shù)據(jù)文件,根據(jù)DA芯片數(shù)模轉(zhuǎn)換的真值表,對(duì)信號(hào)的數(shù)據(jù)文件進(jìn)行逐點(diǎn)轉(zhuǎn)換,將數(shù)據(jù)文件轉(zhuǎn)換成十六進(jìn)制的INTEL格式。VC33的數(shù)據(jù)總線為32位,而AD7840的數(shù)據(jù)位數(shù)為14位,因此,轉(zhuǎn)換后的十六進(jìn)制INTEL格式低4位有效,高4位均為0,例如0x00001FFF表示+2.999634 V。轉(zhuǎn)換的方法如下:
根據(jù)轉(zhuǎn)換公式 N=round(Vou+×8192/3),將浮點(diǎn)形式的數(shù)據(jù)轉(zhuǎn)換成十進(jìn)制的整型形式。N為轉(zhuǎn)換后的十進(jìn)制整型形式,round()表示按四舍五入的方法取整。
如果 N為正,直接將其存儲(chǔ)為十六進(jìn)制的INTEL格式。
如果 N為負(fù),首先將轉(zhuǎn)換成14位的補(bǔ)碼形式,然后存儲(chǔ)為十六進(jìn)制的INTEL格式。將 N轉(zhuǎn)換成補(bǔ)碼形式的方法為 N=214-abs(N),其中 abs()表示取模。
系統(tǒng)用定時(shí)器0控制模數(shù)轉(zhuǎn)換芯片AD7840產(chǎn)生所設(shè)計(jì)的信號(hào),轉(zhuǎn)換速率要與Matlab仿真產(chǎn)生的信號(hào)的采樣率一致。系統(tǒng)的軟件流程圖如圖1所示
利用本系統(tǒng)生成了三種波形的信號(hào);分別為幅度為3V頻率為10KHz的方波信號(hào);幅度為3V頻率為1KHz的正弦波信號(hào);幅度為3V長度為3ms的巴特沃斯脈沖信號(hào)。通過示波器觀察到的波形分別如圖2,圖3,圖4所示。
從圖2,3,4可以看出,該系統(tǒng)產(chǎn)生的波形與設(shè)想產(chǎn)生的波形一致。實(shí)驗(yàn)證明該系統(tǒng)可以產(chǎn)生所需要的波形。
本設(shè)計(jì)利用DSP+CPLD作為硬件平臺(tái),成功實(shí)現(xiàn)了任意波形發(fā)生器,該系統(tǒng)具有成本低、體積小、硬件電路簡(jiǎn)單、使用方便的特點(diǎn),能夠滿足工程實(shí)際的需要,具有良好的應(yīng)用價(jià)值。
[1] 任緒科,趙俊渭,周明.基于CPLD和單片機(jī)的任意波形發(fā)生器設(shè)計(jì)[J].電子產(chǎn)品世界,2005(1)
[2] 黨瑞榮,謝燕,李利品.TMS320CX DSP原理及應(yīng)用[M].西安:陜西科學(xué)技術(shù)出版社,2006,3
[3] 唐健,雷軼鳴,鄒健.14位串/并行D/A轉(zhuǎn)換器AD7840及在程控電流源中的作用[J].四川文理學(xué)院學(xué)報(bào),2007,17(5)
[4] 周 健,閆建國,周志久.CPLD在在慣性測(cè)量單元數(shù)據(jù)采集系統(tǒng)中的應(yīng)用[J].電子測(cè)量技術(shù),2008,11(31)