基于AVR和CPLD的高速數(shù)據(jù)采集系統(tǒng)的設(shè)計
輸入系統(tǒng)的信息大多數(shù)是模擬量,為使計算機(jī)能夠處理這些模擬量,必須經(jīng)由數(shù)據(jù)采集系統(tǒng)將模擬量轉(zhuǎn)化為數(shù)字量。CPLD是在PAL、GAL等邏輯器件的基礎(chǔ)上發(fā)展起來的,CPLD的規(guī)模比較大,適合于時序、組合等邏輯電路的應(yīng)用場合,它的高集成度能力大大縮小電路板的尺寸,降低了系統(tǒng)的成本,而且能夠提高系統(tǒng)的性能和可靠性。對于一個成型的探測系統(tǒng)而言,通常都是有采集儲存部分的,無論是電信號、光信號、聲音信號、磁信號等在被探測器接收到后大部分都需要轉(zhuǎn)化為數(shù)字信號傳給處理器才能完成分析、判斷的過程。對于需要高速采集并存儲的系統(tǒng),常常需要購買昂貴的高速采集卡等設(shè)備,在基于CPLD、AVR等控制高速ADC、儲存等技術(shù)的基礎(chǔ)上,本文設(shè)計低成本、高速采集存儲的硬件實現(xiàn)。
1 系統(tǒng)總體設(shè)計方案
系統(tǒng)利用ATmegal62作為主控制器,CPLD用于產(chǎn)生控制時序,二者相結(jié)合協(xié)調(diào)進(jìn)行數(shù)據(jù)的采集與傳輸控制。圖1給出其系統(tǒng)總體設(shè)計方案框圖。
數(shù)據(jù)采集系統(tǒng)的工作原理是:模擬量信號經(jīng)過傳感器后轉(zhuǎn)化成電壓量,通過ADC將模擬量轉(zhuǎn)換為數(shù)字量,而后進(jìn)行傳輸存儲和處理。在本系統(tǒng)中,在CPLD和AVR的控制下,將采集到的模擬信號經(jīng)過A/D器件轉(zhuǎn)換之后,轉(zhuǎn)換結(jié)果先緩存到FIFO,再轉(zhuǎn)存到非易失性Flash陣列中,其中FIFO不但可以實現(xiàn)緩存功能,還可以解決A/D轉(zhuǎn)換之后數(shù)據(jù)位數(shù)跟Flash存儲器的數(shù)據(jù)線位數(shù)不匹配的矛盾。
1.1 采集部分
本系統(tǒng)應(yīng)用的A/D轉(zhuǎn)換器是MAXl308,它具有8通道可編程配置,可接收數(shù)字輸入分別激活每一路通道;100 ps通道間T/H匹配;轉(zhuǎn)換時間為0.72(單通道),0.9(2通道),1.26(4通道),1.98μs(8通道);吞吐率為1 075(單通道),90(2通道),680(4通道),456千次/秒(8通道)。其他特性包括20 MHz T/H輸入帶寬、并具有內(nèi)部時鐘、內(nèi)部(+2.5 V)或外部(+2.0~+3.O V)基準(zhǔn),以及低功耗省電模式。
1.2 控制與存儲部分
如圖2所示是4個Flash模塊組采用流水線(pipeline)操作,使用該方式可以克服Flash寫入速度較慢的缺點。Flash存儲器的寫入有2個階段:數(shù)據(jù)加載階段(通過I/0端口將數(shù)據(jù)寫入頁寄存器)和編程階段(在芯片內(nèi)部,將頁寄存器的數(shù)據(jù)傳輸?shù)酱鎯卧?。由于編程階段是自動進(jìn)行的,不需要外部系統(tǒng)的干預(yù),控制器可以進(jìn)行其他事務(wù)的處理,如有效塊地址的運(yùn)算等,從而節(jié)省系統(tǒng)開銷。NAND型Flash存儲器的寫操作以流水線方式進(jìn)行,首先加載第1個Flash模塊組,數(shù)據(jù)加載完后,第1個模塊組進(jìn)入自動編程階段:再加載第2個Flash模塊組,數(shù)據(jù)加載完后,第2個模塊組進(jìn)入自動編程階段;然后依次對第3個乃至第4個模塊組進(jìn)行操作,當(dāng)?shù)?個模塊組數(shù)據(jù)加載完后,第1個存儲模塊組已經(jīng)自動編程結(jié)束,接著再加載和自動編程形成流水線的工作方式。從整個系統(tǒng)總體效果來看,它一直在進(jìn)行存儲加載數(shù)據(jù)。
評論