0 引言 高速數(shù)字化采集技術(shù)和FPGA技術(shù)的發(fā)展已經(jīng)對(duì)傳統(tǒng)測試儀器產(chǎn)生了深刻的影響。數(shù)字存儲(chǔ)示波器(DS0)是模擬示波器技術(shù)、數(shù)字化測量技術(shù)、計(jì)算機(jī)技術(shù)的綜合產(chǎn)物,他主要以微處理器、數(shù)字存儲(chǔ)器、A/D轉(zhuǎn)換器和D/A轉(zhuǎn)換器為核心,輸入信號(hào)首先經(jīng)A/D轉(zhuǎn)換器轉(zhuǎn)換成數(shù)字信號(hào),然后存儲(chǔ)在RAM中,需要時(shí)再將RAM中的內(nèi)容讀出,經(jīng)D/A轉(zhuǎn)換器恢復(fù)為模擬信號(hào)顯示在示波器上,或者通過接口與計(jì)算機(jī)相連對(duì)存儲(chǔ)的信號(hào)作進(jìn)一步處理,這樣可大大改進(jìn)顯示特性,增強(qiáng)功能,便于控制和智能化。這種DSO中看到的波形是由采集到的數(shù)據(jù)經(jīng)過重構(gòu)后得到的波形,而不是加到輸入端上信號(hào)的波形。本文采用基于FPGA的方式進(jìn)行數(shù)據(jù)采集、數(shù)據(jù)處理等功能的設(shè)計(jì)。這種設(shè)計(jì)方案在高速數(shù)據(jù)采集上具有很多優(yōu)點(diǎn),如體積小、功耗低、時(shí)鐘頻率高、內(nèi)部延時(shí)小、全部控制邏輯由硬件完成等,另外編程配置靈活、開發(fā)周期短、利用硬件描述語言來編程,可實(shí)現(xiàn)程序的并行執(zhí)行,這將會(huì)大大提高系統(tǒng)的性能,有利于在系統(tǒng)設(shè)計(jì)和現(xiàn)場運(yùn)行后對(duì)系統(tǒng)進(jìn)行修改、調(diào)試、升級(jí)等。 1 系統(tǒng)實(shí)現(xiàn)方案 根據(jù)設(shè)計(jì)指標(biāo)要求,基于FPGA的系統(tǒng)結(jié)構(gòu)如圖1所示,主要由模數(shù)轉(zhuǎn)換、數(shù)模轉(zhuǎn)換、FPGA數(shù)據(jù)處理、數(shù)據(jù)存儲(chǔ)四部分組成。由垂直分辨率大于或等于32點(diǎn)/div可知A/D、D/A轉(zhuǎn)換器至少8位,系統(tǒng)選用AD976(16位A/D轉(zhuǎn)換器)和AD669(16位D/A轉(zhuǎn)換器),由于受PLC I/0口數(shù)量的影響,AD976和DA669使用其中13位,RAM選HM6264(64k),時(shí)鐘采用125kHz,PLC選用 EPFl0K10LC84一3。模擬信號(hào)通過A/D轉(zhuǎn)換器將信號(hào)輸入給FPGA,F(xiàn)PGA根據(jù)相關(guān)指令進(jìn)行數(shù)據(jù)存儲(chǔ)至RAM或?qū)?shù)據(jù)從RAM讀出送給 D/A轉(zhuǎn)換器轉(zhuǎn)換成模擬信號(hào)輸出。 ![]() 2 系統(tǒng)主要電路 系統(tǒng)中FPGA數(shù)據(jù)處理模塊將A/D輸入、RAM數(shù)據(jù)存儲(chǔ)和D/A輸出連接在一起,實(shí)現(xiàn)信號(hào)的傳遞、存儲(chǔ)等控制。輸入電路中A/D轉(zhuǎn)換芯片選用AD公司的 AD976,它是16位高速,高精度A/D轉(zhuǎn)換器,最大采集率為100kSPS,輸入信號(hào)范圍為一10~+10V,R/C為讀數(shù)/轉(zhuǎn)換控制端,CS為片選端,電路連接如圖2所示。 ![]() 數(shù)據(jù)存儲(chǔ)器HM6264是64k的靜態(tài)SRAM,8位I/0公共輸入/出線,13位地址線,三態(tài)輸出。地址有效條件是/CSl=0,CS2=ln/WE=0,/OE=1執(zhí)行寫操作;/WE=1,/OE=O執(zhí)行讀操作。電路連接如圖3所示。 ![]() 輸出電路中D/A轉(zhuǎn)換芯片AD669也是AD公司推出的16位高速,高精度D/A轉(zhuǎn)換器,具有高性價(jià)比,電路連接如圖4所示。 ![]() 3 FPGA程序設(shè)計(jì) 此部分實(shí)現(xiàn)的主要的功能是將A/D轉(zhuǎn)換后的數(shù)據(jù)經(jīng)FPGA控制寫入RAM及將數(shù)據(jù)從RAM讀出經(jīng)FPGA輸出給D/A轉(zhuǎn)換器,頂層原理圖如圖5所示。外圍主要接口端功能為:A[15..3]為數(shù)據(jù)輸入端,CLK4M為時(shí)鐘信號(hào)端,TONGIN為觸發(fā)端口,CS、RC、WE、OE為片選、轉(zhuǎn)換、讀寫控制端,RAMI、RAMO、AA為存儲(chǔ)器I/O端、地址端,QQ為數(shù)據(jù)輸出端。 ![]() 其中模塊CHANA實(shí)現(xiàn)的功能是對(duì)數(shù)據(jù)的最高位取反,因?yàn)锳D976最高位“l(fā)”表示負(fù)電平,而AD669最高位“1”表示高電平;模塊INTRD在EN 為“1”,信號(hào)上升沿過零點(diǎn)時(shí),Q輸出為“l(fā)”,直到完成對(duì)存儲(chǔ)器的寫操作為止;模塊SIGND是整個(gè)程序的核心部分,主要功能是為存儲(chǔ)器和lAD976 提供控制信號(hào),啟動(dòng)A/D轉(zhuǎn)換,對(duì)存儲(chǔ)器進(jìn)行寫操作和讀操作;模塊SAN在對(duì)存儲(chǔ)器由寫操作轉(zhuǎn)變?yōu)樽x操作后,將存儲(chǔ)器的數(shù)據(jù)輸出變?yōu)楦咦钁B(tài),不妨礙存儲(chǔ)器數(shù)據(jù)的正常讀入;模塊TONG端口A外接開關(guān),按下時(shí)低電平,起同步作用。仿真結(jié)果如圖6,(a)為寫操作時(shí)的仿真波形;(b)為讀操作時(shí)的仿真波形。當(dāng)運(yùn)行在寫操作時(shí),QQ無輸出,如圖6(a)所示,實(shí)現(xiàn)存儲(chǔ)功能,讀操作時(shí),QQ輸出,由于模塊CHANA的存在,QQ輸出的數(shù)據(jù)要對(duì)A輸入的數(shù)據(jù)首位取反,即A輸入是0101,QQ輸出是1101,如圖6(b)所示,仿真結(jié)果正確。 ![]() 4 結(jié)語 本文以PLC器件為控制核心,通過附加一定的外電路及普通示波器構(gòu)成簡易數(shù)字存儲(chǔ)器,使普通示波器具有波形數(shù)字存儲(chǔ)的功能。其中以FPGA為主部件的控制部分采用VHDL語言,按模塊化方式進(jìn)行設(shè)計(jì),并將各模塊集成于芯片中,最后通過MAXPLUS II軟件對(duì)設(shè)計(jì)進(jìn)行邏輯仿真,對(duì)FPGA芯片進(jìn)行編程,實(shí)現(xiàn)系統(tǒng)的設(shè)計(jì)要求。隨著科學(xué)技術(shù)的不斷發(fā)展,這種以FPGA為基礎(chǔ)的軟件硬件化,其發(fā)展前景十分看好。 參考文獻(xiàn) 1. 楊剛.龍海燕 現(xiàn)代電子技術(shù)-VHDL與數(shù)字系統(tǒng)設(shè)計(jì) 2004 2. 侯伯亨.顧新 VHDL 硬件描述語言與數(shù)字邏輯電路設(shè)計(jì) 1999 3. 潘松.王國棟 VHDL 實(shí)用教程 2000 4. 求是科技 VHDL 應(yīng)用開發(fā)技術(shù)與工程實(shí)踐 2003 作者:淮海工學(xué)院 宗榮芳 來源:電子科技 2009 (10) |