0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

采用ATmegal62處理器與CPLD設(shè)計(jì)高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)

電子設(shè)計(jì) ? 來源:郭婷 ? 作者:電子設(shè)計(jì) ? 2019-01-11 09:36 ? 次閱讀

輸入系統(tǒng)的信息大多數(shù)是模擬量,為使計(jì)算機(jī)能夠處理這些模擬量,必須經(jīng)由數(shù)據(jù)采集系統(tǒng)將模擬量轉(zhuǎn)化為數(shù)字量。CPLD是在PAL、GAL等邏輯器件的基礎(chǔ)上發(fā)展起來的,CPLD的規(guī)模比較大,適合于時(shí)序、組合等邏輯電路的應(yīng)用場合,它的高集成度能力大大縮小電路板的尺寸,降低了系統(tǒng)的成本,而且能夠提高系統(tǒng)的性能和可靠性。 對于一個(gè)成型的探測系統(tǒng)而言,通常都是有采集儲存部分的,無論是電信號、光信號、聲音信號、磁信號等在被探測器接收到后大部分都需要轉(zhuǎn)化為數(shù)字信號傳給處理器才能完成分析、判斷的過程。對于需要高速采集并存儲的系統(tǒng),常常需要購買昂貴的高速采集卡等設(shè)備,在基于CPLD、AVR等控制高速ADC、儲存等技術(shù)的基礎(chǔ)上,本文設(shè)計(jì)低成本、高速采集存儲的硬件實(shí)現(xiàn)。

1 系統(tǒng)總體設(shè)計(jì)方案

系統(tǒng)利用ATmegal62作為主控制器,CPLD用于產(chǎn)生控制時(shí)序,二者相結(jié)合協(xié)調(diào)進(jìn)行數(shù)據(jù)的采集與傳輸控制。圖1給出其系統(tǒng)總體設(shè)計(jì)方案框圖。

采用ATmegal62處理器與CPLD設(shè)計(jì)高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)

數(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不但可以實(shí)現(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)換時(shí)間為0.72(單通道),0.9(2通道),1.2*通道),1.98μs(8通道);吞吐率為1 075(單通道),90(2通道),680(4通道),456千次/秒(8通道)。其他特性包括20 MHz T/H輸入帶寬、并具有內(nèi)部時(shí)鐘、內(nèi)部(+2.5 V)或外部(+2.0~+3.O V)基準(zhǔn),以及低功耗省電模式。

1.2 控制與存儲部分

如圖2所示是4個(gè)Flash模塊組采用流水線(pipeline)操作,使用該方式可以克服Flash寫入速度較慢的缺點(diǎn)。Flash存儲器的寫入有2個(gè)階段:數(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個(gè)Flash模塊組,數(shù)據(jù)加載完后,第1個(gè)模塊組進(jìn)入自動編程階段:再加載第2個(gè)Flash模塊組,數(shù)據(jù)加載完后,第2個(gè)模塊組進(jìn)入自動編程階段;然后依次對第3個(gè)乃至第4個(gè)模塊組進(jìn)行操作,當(dāng)?shù)?個(gè)模塊組數(shù)據(jù)加載完后,第1個(gè)存儲模塊組已經(jīng)自動編程結(jié)束,接著再加載和自動編程形成流水線的工作方式。從整個(gè)系統(tǒng)總體效果來看,它一直在進(jìn)行存儲加載數(shù)據(jù)。

采用ATmegal62處理器與CPLD設(shè)計(jì)高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)

2 程序設(shè)計(jì)與實(shí)現(xiàn)

編程實(shí)現(xiàn)采集部分的功能,采集部分時(shí)序圖如圖3所示。任意選擇兩條通道進(jìn)行內(nèi)部時(shí)鐘分析,圖中為第3通道和第7通道,當(dāng)控制信號產(chǎn)生低電平時(shí),控制引腳起作用,觸發(fā)采集功能,同時(shí)EOC引腳電平至低。在tCTR段時(shí)間后讀信號被啟動經(jīng)過tACC的時(shí)間后,12位數(shù)據(jù)將出現(xiàn)在DO-D11引腳上。在整個(gè)采集、存儲過程中其他通道和通道3、通道7一樣,隨后將數(shù)據(jù)存入數(shù)據(jù)緩存器中。

采用ATmegal62處理器與CPLD設(shè)計(jì)高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)

2.1 控制A/D轉(zhuǎn)換程序設(shè)計(jì)

根據(jù)控制存儲的要求,首先要設(shè)計(jì)控制A/D轉(zhuǎn)換的狀態(tài)機(jī),用來確定A/D轉(zhuǎn)換的狀態(tài),根據(jù)MAXl308工作時(shí)序特點(diǎn)而設(shè)計(jì)的控制A/D轉(zhuǎn)換的狀態(tài)機(jī)轉(zhuǎn)換圖如圖4所示。實(shí)現(xiàn)控制A/D轉(zhuǎn)換的狀態(tài)機(jī)部分主要VHDL程序源代碼如下:

采用ATmegal62處理器與CPLD設(shè)計(jì)高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)

采用ATmegal62處理器與CPLD設(shè)計(jì)高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)

將程序下載至CPLD中運(yùn)行調(diào)試,經(jīng)過對電路的調(diào)試和測量,控制8通道A/D同時(shí)轉(zhuǎn)換的狀態(tài)機(jī)產(chǎn)生的示波器時(shí)序波形如圖5所示,其中,0、1、2、3、4分別對應(yīng)的是圖3中的CONVST、EOC、EOLC、CS、RD,而第5通道是對FIF0的寫信號。從示波器顯示的波形圖可以看出產(chǎn)生的8個(gè)連續(xù)的脈沖對應(yīng)位置完全滿足圖3所要求的時(shí)序要求,也就是說在控制器同時(shí)控制8路信號的采集時(shí)不會出現(xiàn)時(shí)序混亂的情況。由此可知,采用本系統(tǒng)中設(shè)計(jì)的采集程序可以實(shí)現(xiàn)同時(shí)采集的要求,并且根據(jù)采集的脈沖寬度分析可知該系統(tǒng)能滿足采集速度為10 Mb/s的設(shè)計(jì)要求。

采用ATmegal62處理器與CPLD設(shè)計(jì)高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)

2.2 控制Flash存儲程序設(shè)計(jì)

4個(gè)Flash存儲器的流水線工作原理如圖2所示,對單獨(dú)的每一片F(xiàn)lash來說每一次存儲都是在上一次存儲過程中加載完成后進(jìn)行,而對于由4片F(xiàn)lash存儲器組成的整個(gè)系統(tǒng),它一直在加載存儲數(shù)據(jù),這樣可以保證存儲速度大于采集速度,從而保證存儲過程中不會因單片F(xiàn)lash存儲速度慢而造成丟失數(shù)據(jù)。實(shí)現(xiàn)Flash存儲的主要程序:

采用ATmegal62處理器與CPLD設(shè)計(jì)高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)

在數(shù)據(jù)加載期間本系統(tǒng)應(yīng)采用DMA傳輸控制方式,即:每當(dāng)FIF0的半滿標(biāo)志信號HF產(chǎn)生一次有效電平時(shí),ATmegal62就啟動一次中斷,在中斷程序中,ATmegal62將產(chǎn)生NAND Flash命令和有效地址,以及啟動DMA控制器。一旦DMA控制器啟動,ATmegal62就將轉(zhuǎn)入后臺進(jìn)行有效地址的運(yùn)算等,從而參與數(shù)據(jù)傳輸過程,整個(gè)數(shù)據(jù)從FIFO到Flash存儲器的傳輸過程是由CPLD內(nèi)部編寫的DMA控制器控制完成。啟動一次DMA控制器傳輸一頁2048個(gè)字節(jié)的數(shù)據(jù),一次中斷完成16 K字節(jié)的傳輸。其示波器時(shí)序如圖6所示:第0,1,2,3通道是FIF0的讀數(shù)據(jù)時(shí)序波形,第4通道是Flash的寫通道時(shí)序波形。

3 結(jié)論

通過使用AVR和CPLD編程,設(shè)計(jì)實(shí)現(xiàn)了一種成本低且可實(shí)現(xiàn)10 Mb/s以上并行采集數(shù)據(jù)率的高速數(shù)據(jù)采集存儲系統(tǒng)。在分析MAXl308特性及轉(zhuǎn)換時(shí)序的基礎(chǔ)上,設(shè)計(jì)完成了A/D轉(zhuǎn)換器及其外圍電路,并通過調(diào)試可知時(shí)序穩(wěn)定。通過VHDL語言實(shí)現(xiàn)了采集模塊、控制與存儲模塊和Flash存儲功能。在完成硬件連接后調(diào)試,試驗(yàn)結(jié)果顯示,該設(shè)計(jì)能夠?qū)崿F(xiàn)低成本高速采集,多路同時(shí)采集速度大于10 Mb/s采集系統(tǒng),具有一定的實(shí)用價(jià)值。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19404

    瀏覽量

    230959
  • cpld
    +關(guān)注

    關(guān)注

    32

    文章

    1257

    瀏覽量

    169584
  • 數(shù)據(jù)采集
    +關(guān)注

    關(guān)注

    39

    文章

    6245

    瀏覽量

    113963
收藏 人收藏

    評論

    相關(guān)推薦

    串口數(shù)據(jù)采集處理虛擬儀器系統(tǒng)設(shè)計(jì)

    為解決TI公司提供的數(shù)據(jù)采集卡的成本過高問題,設(shè)計(jì)一套代替NI采集卡的數(shù)據(jù)采集系統(tǒng)。前端采集下位機(jī)硬件部分為基于LPC2378
    發(fā)表于 07-29 10:30 ?1222次閱讀
    串口<b class='flag-5'>數(shù)據(jù)采集</b>與<b class='flag-5'>處理</b>虛擬儀器<b class='flag-5'>系統(tǒng)</b>設(shè)計(jì)

    采用PCI總線流水式高速數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)

    采用PCI總線流水式高速數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)摘要:目前基于PCI總線的高速數(shù)據(jù)采集
    發(fā)表于 10-30 15:09

    高速數(shù)據(jù)采集系統(tǒng)的硬件結(jié)構(gòu),CPLD高速數(shù)據(jù)采集系統(tǒng)中的應(yīng)用

    高速數(shù)據(jù)采集系統(tǒng)的硬件結(jié)構(gòu)MAX7000系列CPLD及其開發(fā)平臺介紹CPLD高速
    發(fā)表于 04-08 06:11

    如何采用CPLD與單片機(jī)實(shí)現(xiàn)的高速數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)?

    設(shè)計(jì)的基于CPLD與單片機(jī)的高速數(shù)據(jù)采集系統(tǒng)在QUARTUS II軟件中進(jìn)行了仿真并達(dá)到了預(yù)期的控制邏輯。
    發(fā)表于 04-13 06:07

    Sitara AM62處理器的資料分享

    分析。AM62處理器還支持雙屏全高清顯示和多種操作系統(tǒng),包括主線Linux?和 Android 操作系統(tǒng)。此外,AM62
    發(fā)表于 11-03 06:11

    基于ARM與線性CCD的高速數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)

    接口,它使電路工作在更加平穩(wěn)、簡潔而易丁控制,同時(shí)也提高了ARM的工作效率。為了提高通信速度,這里采用通用申行總線(USB)技術(shù)米與PC進(jìn)行通信。ARM是用來控制主處理器數(shù)據(jù)采集,數(shù)據(jù)
    發(fā)表于 09-26 07:41

    CPLD在多路高速同步數(shù)據(jù)采集系統(tǒng)中的應(yīng)用

    CPLD在多路高速同步數(shù)據(jù)采集系統(tǒng)中的應(yīng)用 CPLD(Complex Programmable Logic Device,復(fù)雜可編程邏輯器
    發(fā)表于 03-28 16:49 ?1019次閱讀
    <b class='flag-5'>CPLD</b>在多路<b class='flag-5'>高速</b>同步<b class='flag-5'>數(shù)據(jù)采集</b><b class='flag-5'>系統(tǒng)</b>中的應(yīng)用

    基于CPLD和嵌入式系統(tǒng)高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

    基于CPLD和嵌入式系統(tǒng)高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 介紹一種基于CPLD和嵌入式
    發(fā)表于 10-15 23:46 ?761次閱讀
    基于<b class='flag-5'>CPLD</b>和嵌入式<b class='flag-5'>系統(tǒng)</b>的<b class='flag-5'>高速</b><b class='flag-5'>數(shù)據(jù)采集</b><b class='flag-5'>系統(tǒng)</b>的設(shè)計(jì)與實(shí)現(xiàn)

    基于CPLD/FPGA高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)

    基于CPLD/FPGA高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì) 0 引 言    傳統(tǒng)的數(shù)據(jù)采集
    發(fā)表于 01-27 09:35 ?618次閱讀
    基于<b class='flag-5'>CPLD</b>/FPGA<b class='flag-5'>高速</b><b class='flag-5'>數(shù)據(jù)采集</b><b class='flag-5'>系統(tǒng)</b>的設(shè)計(jì)

    高速數(shù)據(jù)采集系統(tǒng)CPLD的應(yīng)用

    CPLD高速數(shù)據(jù)采集系統(tǒng)中的應(yīng)用! 介紹了高速數(shù)據(jù)采集系統(tǒng)
    發(fā)表于 12-17 00:12 ?26次下載
    <b class='flag-5'>高速</b><b class='flag-5'>數(shù)據(jù)采集</b><b class='flag-5'>系統(tǒng)</b>中<b class='flag-5'>CPLD</b>的應(yīng)用

    基于CPLD高速數(shù)據(jù)采集系統(tǒng)的實(shí)現(xiàn)

    本文設(shè)計(jì)了一種基于CPLD(復(fù)雜可編程邏輯器件)+FX2(單片機(jī)CY7C68013)的便攜式高速數(shù)據(jù)采集系統(tǒng),采用
    發(fā)表于 05-25 09:53 ?1690次閱讀
    基于<b class='flag-5'>CPLD</b>的<b class='flag-5'>高速</b><b class='flag-5'>數(shù)據(jù)采集</b><b class='flag-5'>系統(tǒng)</b>的實(shí)現(xiàn)

    基于CPLD高速數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)_鮮果

    基于CPLD高速數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)_鮮果
    發(fā)表于 03-19 11:45 ?3次下載

    基于Cortex_M3處理器的輸線路狀態(tài)監(jiān)測數(shù)據(jù)采集器系統(tǒng)設(shè)計(jì)

    基于Cortex_M3處理器的輸線路狀態(tài)監(jiān)測數(shù)據(jù)采集器系統(tǒng)設(shè)計(jì)
    發(fā)表于 09-29 08:49 ?10次下載
    基于Cortex_M3<b class='flag-5'>處理器</b>的輸線路狀態(tài)監(jiān)測<b class='flag-5'>數(shù)據(jù)采集器</b>的<b class='flag-5'>系統(tǒng)</b>設(shè)計(jì)

    如何使用AVR和CPLD實(shí)現(xiàn)高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)

    為了提高數(shù)據(jù)采集卡的速度,同時(shí)降低成本,設(shè)計(jì)一種并行數(shù)據(jù)采集系統(tǒng),要求并行采集速度大于10 Mb/s。整個(gè)系統(tǒng)由AVR與
    發(fā)表于 07-20 17:17 ?11次下載
    如何使用AVR和<b class='flag-5'>CPLD</b>實(shí)現(xiàn)<b class='flag-5'>高速</b><b class='flag-5'>數(shù)據(jù)采集</b><b class='flag-5'>系統(tǒng)</b>的設(shè)計(jì)

    基于FPGA+STM32雙處理器高速數(shù)據(jù)采集系統(tǒng)

    基于FPGA+STM32雙處理器高速數(shù)據(jù)采集系統(tǒng)
    發(fā)表于 06-25 10:38 ?78次下載