摘 要:隨著數(shù)字化生活的到來(lái),數(shù)據(jù)采集系統(tǒng)在日常生活中的應(yīng)用越來(lái)越顯著。模擬信號(hào)和數(shù)字信號(hào)之間的轉(zhuǎn)換已成為計(jì)算機(jī)控制系統(tǒng)中不可缺少的環(huán)節(jié)。較傳統(tǒng)數(shù)據(jù)采集系統(tǒng),以可編程邏輯器件實(shí)現(xiàn)的數(shù)據(jù)采集系統(tǒng)具有時(shí)鐘頻率高,內(nèi)部延時(shí)小,速度快,效率高,組成形式靈活等特點(diǎn)。
關(guān)鍵詞:CPLD; 數(shù)據(jù)采集; VHDL; 狀態(tài)機(jī)
中圖分類(lèi)號(hào):TN919-34文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1004-373X(2010)21-0145-02
Multi-channel Data Acquisition System Based on CPLD
WANG Guo-qiang, DUAN Xin-wen
(Qinghai Normal University, Xi’ning 810008, China)
Abstract: The application of data acquisition system is important in the daily life with the advent of digital life. The analog and digital signal conversion between the computer control system has become an indispensable component. Compared with traditional data acquisition system, a data acquisition system implemented with a programmable logic device has features of high frequency clock, small internal delay, fast speed, high efficient, and flexible composition form.
Keywords: CPLD; data acquisition; VHDL; state machine
收稿日期:2010-06-15
數(shù)據(jù)采集系統(tǒng)具有極強(qiáng)的通用性,可廣泛應(yīng)用于軍事、工業(yè)生產(chǎn)、科學(xué)研究和日常生活中。隨著計(jì)算機(jī)的普及,數(shù)據(jù)采集系統(tǒng)在日常生活中的應(yīng)用越來(lái)越顯著。由于基于DSP芯片的高速電子器件成本和制作工藝,以及高密集的技術(shù)含量,使得高速數(shù)據(jù)采集卡的價(jià)格昂貴。而復(fù)雜可編程邏輯器件(CPLD)能夠?qū)⒋罅康倪壿嫻δ芗捎谝粋€(gè)單片集成電路中,以其時(shí)鐘頻率高,內(nèi)部延時(shí)小,速度快,效率高,組成形式靈活等特點(diǎn)在高速數(shù)據(jù)采集方面有著單片機(jī)和DSP無(wú)法比擬的優(yōu)勢(shì)。
1 設(shè)計(jì)思路
該系統(tǒng)由數(shù)據(jù)輸入單元、數(shù)據(jù)處理單元、數(shù)據(jù)輸出單元三大部分組成。其中數(shù)據(jù)輸入單元是由狀態(tài)機(jī)控制ADC0809實(shí)現(xiàn)。輸人信號(hào)可以是各種形式,它可以是語(yǔ)音信號(hào)、調(diào)制后的電話(huà)信號(hào)、編碼的數(shù)字信號(hào)、壓縮的圖像信號(hào),也可以是各種傳感器輸出的信號(hào)。A/D能將模擬信號(hào)變換成數(shù)字信號(hào),但必須滿(mǎn)足香農(nóng)采樣定理,也就是為了保證不丟失信息的所有信息,采樣頻率必須高于輸入信號(hào)最高頻率的2倍。A/D變換后得到的數(shù)字信號(hào)輸人到CPLD芯片;再由CPLD芯片對(duì)該數(shù)字信號(hào)進(jìn)行各種數(shù)字信號(hào)算法的處理。經(jīng)過(guò)處理后的數(shù)字信號(hào)再經(jīng)過(guò)數(shù)/模轉(zhuǎn)換器ADC0832將其輸出。
2 系統(tǒng)各部分的功能及實(shí)現(xiàn)
2.1 數(shù)據(jù)輸入電路
數(shù)據(jù)輸入電路主要是由狀態(tài)機(jī)控制ADC0809實(shí)現(xiàn)[1-6]。其中START為轉(zhuǎn)換控制信號(hào),高電平有效;ALE是3位通道選擇地址(ADDC,ADDB,ADDA)信號(hào)的鎖存信號(hào),高電平有效;EOC是轉(zhuǎn)換情況狀態(tài)信號(hào)(類(lèi)似于AD574的STATUS),當(dāng)啟動(dòng)轉(zhuǎn)換約100 μs后,EOC產(chǎn)生一個(gè)高電平,以示轉(zhuǎn)換結(jié)束,轉(zhuǎn)換期間一直處于低電平。一旦START有效后,狀態(tài)信號(hào)EOC即變?yōu)榈碗娖?,表示進(jìn)入轉(zhuǎn)化狀態(tài)。轉(zhuǎn)換結(jié)束后,EOC將變?yōu)楦唠娖?。OE為數(shù)據(jù)輸出允許信號(hào),當(dāng)OE為高電平時(shí),則控制打開(kāi)三態(tài)緩沖器,把轉(zhuǎn)換好的8位數(shù)據(jù)結(jié)果輸至數(shù)據(jù)總線。其工作時(shí)序如圖1所示
圖1 ADC0809工作時(shí)序圖
對(duì)ADC0809的工作過(guò)程分析可知:其工作處于6個(gè)狀態(tài)。在狀態(tài)St1中,ALE高電平將ADC0809的8路采樣輸入通道地址存入ADC0809地址鎖存器中。在狀態(tài)St3中需要對(duì)ADC0809工作狀態(tài)信號(hào)EOC進(jìn)行循環(huán)檢測(cè),如果為低電平,表示轉(zhuǎn)換沒(méi)有結(jié)束,仍需要停留在St3 狀態(tài)中等待,直到EOC變成高電平后才說(shuō)明轉(zhuǎn)換結(jié)束,在下一時(shí)鐘脈沖到來(lái)時(shí)轉(zhuǎn)向狀態(tài)St4。在狀態(tài)St4,由狀態(tài)機(jī)向ADC0809發(fā)出轉(zhuǎn)換好的8位數(shù)據(jù)輸出命令,這一狀態(tài)周期同時(shí)可作為數(shù)據(jù)輸出穩(wěn)定周期,以便能在下一狀態(tài)中向鎖存器中鎖入可靠的數(shù)據(jù)。在狀態(tài)St5,由狀態(tài)機(jī)向CPLD中的鎖存信號(hào)(LOCK的上升沿),將ADC0809輸出的數(shù)據(jù)進(jìn)行鎖存。其采樣控制狀態(tài)圖如圖2所示。
圖2 ADC0809采樣控制狀態(tài)圖
2.2 數(shù)據(jù)處理電路
數(shù)據(jù)處理電路通過(guò)VHDL程序?qū)崿F(xiàn)[7-8],該電路的主要功能是對(duì)外部輸入信號(hào)進(jìn)行循環(huán)檢測(cè),當(dāng)k1為1時(shí),該器件處于數(shù)據(jù)采集和處理模式。這里的數(shù)據(jù)處理就是對(duì)其輸入的數(shù)字信號(hào)進(jìn)行擴(kuò)大2倍或縮小到原來(lái)的1/2,其中fun用來(lái)選擇輸入方式。在采集數(shù)據(jù)的時(shí)候還可以選擇所采數(shù)據(jù)是ADC0809中的哪一路,并完成在七段數(shù)碼器上顯示。其原理如圖3所示。
圖3 數(shù)據(jù)處理原理圖
2.3 數(shù)據(jù)輸出電路
數(shù)據(jù)輸出電路由數(shù)/模轉(zhuǎn)換器DAC0832實(shí)現(xiàn),ADC0832 為8位分辨率A/D轉(zhuǎn)換芯片,其內(nèi)部電源輸入與參考電壓的復(fù)用,使得芯片的模擬電壓輸入在0~5 V之間。D/A轉(zhuǎn)換結(jié)果采用電流形式輸出。應(yīng)得到相應(yīng)的模擬電壓信號(hào),所以通過(guò)一個(gè)高輸入阻抗的線性運(yùn)算放大器實(shí)現(xiàn)[9-10]。其連線如圖4所示。
3 電路的VHDL描述
數(shù)據(jù)采集控制電路、數(shù)據(jù)處理電路均是使用硬件描述語(yǔ)言VHDL(Very High Speed Integrated Circuit Hardware Description Language)設(shè)計(jì)而成。例如:數(shù)據(jù)采集控制模塊設(shè)計(jì)如下:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY AD0809 IS
PORT (D: IN STD_LOGIC_VECTOR(7 DOWNTO 0);
CLK,EOC:IN STD_LOGIC;
LOCK1,ALE,START,OE,ADDA:OUT STD_LOGIC;
Q : OUT STD_LOGIC_VECTOR(7 DOWNTO 0));
END AD0809;
… …
PROCESS (LOCK)
BEGIN
IF LOCK=′1′ AND LOCK′EVENT THEN REG<=D;
END IF;
END PROCESS ;
Q<=REG;
END behav;
圖4 DAC0832連線圖
VHDL語(yǔ)言具有多層次的電路設(shè)計(jì)描述功能,既可描述系統(tǒng)級(jí)電路,也可以描述門(mén)級(jí)電路;描述方式既可以采用行為描述、寄存器傳輸描述或者結(jié)構(gòu)描述,也可以采用三者的混合描述方式。VHDL語(yǔ)言的強(qiáng)大描述能力還體現(xiàn)在它具有豐富的數(shù)據(jù)類(lèi)型,采用VHDL語(yǔ)言描述硬件電路時(shí),設(shè)計(jì)人員并不需要首先考慮選擇進(jìn)行設(shè)計(jì)的器件。這樣做的好處是可以使設(shè)計(jì)人員集中精力進(jìn)行電路設(shè)計(jì)的優(yōu)化,而不需要考慮其他的問(wèn)題。當(dāng)硬件電路的設(shè)計(jì)描述完成以后,VHDL語(yǔ)言允許采用多種不同的器件結(jié)構(gòu)來(lái)實(shí)現(xiàn)[1-3]。
4 系統(tǒng)的波形仿真
在數(shù)據(jù)處理電路中,當(dāng)gate=‘1’,整個(gè)器件處于數(shù)據(jù)采集及處理模式,選擇不同的工作方式,即fun值,可實(shí)現(xiàn)不同的數(shù)據(jù)處理,當(dāng)do為0時(shí),其波形仿真如圖5所示。從仿真波形中可以看出輸入數(shù)據(jù)等于輸出數(shù)據(jù),在通過(guò)輸出運(yùn)放,使輸出值增大2倍,從而使輸出數(shù)據(jù)為輸入數(shù)據(jù)的2倍。
圖5 數(shù)據(jù)處理的仿真波形在數(shù)據(jù)處理電路中,當(dāng)gate=‘0’,整個(gè)器件處于循環(huán)檢測(cè)的模式,當(dāng)輸入數(shù)據(jù)超出預(yù)設(shè)值時(shí)就進(jìn)行報(bào)警,即alm=‘1’,當(dāng)無(wú)輸入值大于預(yù)設(shè)值時(shí),就進(jìn)行循環(huán)檢測(cè)。其波形仿真如圖6所示。
圖6 循環(huán)檢測(cè)模式仿真波形
5 結(jié) 語(yǔ)
設(shè)計(jì)了基于CPLD的多路異步數(shù)據(jù)采集系統(tǒng),系統(tǒng)中使用狀態(tài)機(jī)控制數(shù)據(jù)的采集,使用ADC0832進(jìn)行數(shù)/模轉(zhuǎn)換。同時(shí)利用CPLD強(qiáng)大的數(shù)字處理功能和高密集成的特點(diǎn),降低了硬件的成本,簡(jiǎn)化了電路設(shè)計(jì),并配合軟件增加了系統(tǒng)的靈活性和可擴(kuò)充性,具有很好的經(jīng)濟(jì)效益和社會(huì)效益。
參考文獻(xiàn)
[1]宋嘉玉,孫麗霞.EDA實(shí)用技術(shù)[M].北京:人民郵電出版社,2006.
[2]王鎖萍.電子設(shè)計(jì)自動(dòng)化(EDA教程)[M].西安:西安電子科技大學(xué)出版社,2000.
[3]朱正偉.EDA技術(shù)及應(yīng)用[M].北京:清華大學(xué)出版社,2005.
[4]侯伯亨,顧新.VHDL硬件描述語(yǔ)言與數(shù)字邏輯電路的設(shè)計(jì)[M].西安:西安電子科技大學(xué)出版社,2006.
[5]趙紅梅,米啟超.基于DSP和CPLD的信號(hào)采集與編碼系統(tǒng)設(shè)計(jì)[J].礦山機(jī)械,2007(6):54-55.
[6]張剛.常用A/D,D/A器件手冊(cè)[M].北京:電子工業(yè)出版社,2008.
[7]孫炎輝,紀(jì)峰.基于FPGA的高速實(shí)時(shí)數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2009,32(22):189-191.
[8]皮代軍,張海勇.基于FPGA的高速實(shí)時(shí)數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2009,32(6):12-14.
[9]HUISING J H.運(yùn)算放大器:理論與設(shè)計(jì)[M].北京:清華大學(xué)出版社,2006.
[10]許小菊.運(yùn)算放大器速查速用[M].北京:機(jī)械工業(yè)出版社,2005.