雙通道邏輯控制高速實時數據采集系統(tǒng)的設計
在現代工業(yè)生產控制系統(tǒng)中,需要實現大量數據的實時采集和處理,以使生產過程得到及時控制。參考文獻[1]介紹了基于一個模擬開關CD4052和A/D轉換器AD574設計的數據采集卡,可以實現8路信號采集,該數據采集卡只適用于小系統(tǒng)的數據采集;參考文獻[2]介紹了基于AD1674實現的雙通道并行高速數據采集卡,可實現16路信號采集,采用ISA總線計算機接口。而對于更多路信號的采集處理,在實時性方面對數據采集系統(tǒng)提出了更高的要求,傳統(tǒng)的ISA總線接口的低速數據采集系統(tǒng)已經不能適應現行的要求。
本文設計了一種全新構架的高速實時數據采集系統(tǒng)。該系統(tǒng)采用現行的高速微機PCI數據通信接口[3-4];運用了高速高精度的A/D器件[5]、片上緩沖存儲技術[6]、靈活的多通道數據轉換和CPLD[7-8]技術,使系統(tǒng)的硬件得到簡化,可同時采集32路不同的信號,對信號進行實時、快速處理。
1 系統(tǒng)組成及工作原理
系統(tǒng)硬件組成如圖1所示。32路采樣的模擬信號分為互相獨立的兩個通道輸入,每個通道接收16路信號,由兩個互相獨立的8路模擬開關控制。這樣給系統(tǒng)數據的獲取提供了比較大的自由度,可根據實際需要實現不同的控制組合。
每個通道輸入的模擬信號送入一個A/D轉換器,進行獨立數據處理,并將數據緩存入不同的FIFO SRAM地址空間。4組8路數據的存儲和傳輸互相獨立,這樣使得數據采集速度得到提高。
系統(tǒng)使用了CPLD技術。在CPLD中央控制邏輯的協(xié)調下,重新組織數據包,通過PCI數據總線將數據傳送到計算機,實現高速實時的數據采集和處理。
2 系統(tǒng)硬件設計
整個系統(tǒng)的硬件分為數據輸入模塊、A/D轉換模塊、數據緩沖存儲模塊、PCI接口模塊及CPLD控制模塊五大部分。
2.1 數據輸入模塊
數據輸入模塊主要功能是在CPLD控制下進行采集輸入通道的實時切換,實現不同模擬信號的采集。主要是由MAX4781和MAX4783組成的組合開關[9]。MAX4781為八選一高速模擬開關,MAX4783為單刀雙擲開關。開關典型工作電壓為+3V,導通電阻0.7Ω,接通時間11ns,關斷時間4ns,輸出漏電流0.002nA。每一通道由兩片并聯(lián)的MAX4781和MAX4783級聯(lián)組成,可同時采集16路模擬信號。
2.2 A/D轉換模塊
由數據輸入模塊輸出的模擬信號送入A/D轉換模塊進行模數轉換,得到精確的數字信號。該設計中A/D轉換器選用MAX1200[5],如圖2所示。MAX1200具有單通道全差分輸入,16位精度,1Ms/s轉換速率,流水線結構,帶有數字誤差校正和自校正功能。其轉換速率由2.048MHz的外接精準時鐘信號以及時鐘產生電路MAX961決定,如圖3所示。
MAX1200通過外接MAX4108轉換電路,將單端輸入信號轉換成差分輸入信號,使得輸入信號電平擴大一倍,信號處理能力與抗干擾能力得到增強,如圖4所示。
MAX1200的基準電壓由4.096V基準電壓模塊MAX6341及MAX410構成的高精度低漂移的差分電路參考電壓驅動模塊供給,提供了較高的模數轉換精確度和穩(wěn)定性。
2.3 數據緩沖存儲模塊
系統(tǒng)設計中采用片上緩沖存儲技術,用存儲器存放A/D轉換輸出的大量數據。緩存芯片選用65536×16bit容量的FIFO SRAM IDT72V19160。該雙口存儲器受CPLD控制,一方面獲取A/D轉換輸出的數字信號;另一方面,其存儲數據又可以按計算機的要求被讀出。該緩存芯片的存儲狀態(tài)可以由外部命令通過標志位改變,可以將存儲空間劃分成高、低不同的區(qū)域,分別存、取不同數據,這樣可有效地利用硬件資源,實現數據組無干擾采集緩存。同時,系統(tǒng)借鑒蟲孔尋徑和位移寄存器的基本思路,采用支持優(yōu)先級FIFO排隊的優(yōu)先級先進先出隊列PFQ(Priority FIFO Queue)[6],充分利用高速本地總線,可以有效解決信號傳輸堵塞問題,實現高速數據傳輸,降低了延時,提高了帶寬利用率。
2.4 PCI接口模塊
鑒于本數據采集系統(tǒng)采集的數據量大,在把獲取的數據傳輸給計算機進行分析處理時,應用了先進的高速PCI接口技術[3-4],以32位133MB/s的速率運行。將PCI9054 MODE0與MODE1的工作模式設置為C 模式,即數據和地址分別都為32位;采集系統(tǒng)的本地數據與本地地址操作采用非分時復用組態(tài),LA0~LA31為本地地址,LD0~LD31為本地數據;系統(tǒng)與計算機接口的數據和地址采用分時復用模式,32位寬AD0~AD31。存儲PCI9054 配置信息的EEPROM采用93CS56芯片。PCI接口的邏輯信號流如圖5 所示。
2.5 CPLD控制模塊
CPLD是現代電子技術領域中的一門全新技術,它提供了基于計算機和電子技術的大規(guī)模數字電路設計方法。CPLD具有強大的邏輯功能,可以提高系統(tǒng)集成度,簡化系統(tǒng)設計。新一代的CPLD不僅在速度上能滿足高速數字信號處理的要求,而且可編程資源也大大增加,具有在線可編程功能,使系統(tǒng)設計的靈活性和系統(tǒng)適用性得到很大的提升。因此,本數據采集系統(tǒng)采用了Altera公司的EPM3256ATC144-7芯片。該芯片具有256個宏單元,最多可提供158個I/O口。
本設計邏輯控制[7]主要分為四個部分:(1)對輸入通道開關的使能與通道選通控制以及切換;(2)對A/D轉換芯片的使能、數據轉化及自校正的控制;(3)對緩沖存儲芯片SRAM的讀寫狀態(tài)及其存儲標志位的控制;(4)對PCI本地對話的控制,包括本地地址的選擇、數據包的組裝、通信握手信號、突發(fā)傳送與DMA傳送控制。
CPLD的應用簡化了系統(tǒng)的硬件邏輯控制電路設計,應用VHDL編程實現了系統(tǒng)的控制與數據的初步處理,縮短了系統(tǒng)的開發(fā)周期。CPLD端口還提供了更多的擴展功能。可見,無論是硬件結構還是軟件程序,該系統(tǒng)都具有可升級的特點。
本高速實時數據采集系統(tǒng)按照工業(yè)要求設計,采用了高速的A/D轉換器MAX1200和雙通道并行結構,實現了高速、大容量、高精度的數據采集和處理。該設計還利用了片上大容量優(yōu)先級FIFO SRAM緩存技術,解決了數據采集量與短時傳輸速率之間可能出現的矛盾;不同數據存儲于不同存儲空間,大大提高了快速數據采集能力和系統(tǒng)的數據吞吐量。運用了CPLD和PCI接口技術,極大地簡化了硬件電路,通過設置不同的軟件程序參數可以形成不同的工業(yè)解決方案。因此,在開發(fā)周期較短或對系統(tǒng)靈活性要求較高的工業(yè)現場,本設計是一種比較理想的數據采集系統(tǒng)。
評論