《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 業界動態 > 利用FPGA實現的多通道同步數據采集卡

利用FPGA實現的多通道同步數據采集卡

2008-12-11
作者:田多華, 邱宏安, 陸宇鵬, 邵

  摘 要: 介紹了一種基于PC104總線的多通道高速同步采集卡" title="采集卡">采集卡" title="數據采集卡" title="數據采集卡">數據采集卡">數據采集卡的設計方法, 硬件上采用FPGA進行控制邏輯設置和數據緩存" title="數據緩存">數據緩存的實現, 簡化了硬件電路, 同時也提高了其使用的簡易性和配置的靈活性, 具有準確和快速的特點。
  關鍵詞: 數據采集; 現場可編程門陣列; 模數轉換

?

  PC104 作為一種國際標準的控制總線, 在測試和控制中得到了廣泛應用, 但目前市場上與之配套的同步數據采集卡還很少。基于PC104總線的高精度數據采集卡的主要功能是把外界模擬信號的電壓參量經過A/D" title="A/D">A/D轉換器轉換成數字量,并把轉換結果存儲以便分析處理。本文所述采集卡采用了AD公司推出的高速、低功耗、四通道同步采樣12位并行接口的A/D轉換器AD7864,用FPGA進行邏輯功能控制和數據緩存,使得該數據采集卡硬件電路極為簡單。
1 數據采集卡的原理及組成
  采集卡包括模擬輸入、A/D 采集、數據緩存及基于PC104 接口的數據傳輸四部分,其核心設計是A/D采集、數據緩存部分。數據采集卡系統結構框圖如圖1所示。

?


  該采集卡采用LM324對模擬輸入信號進行隔離,它的功能實現是在濾波器MAX274的每個輸入端前設計一個跟隨器,使輸入信號在被濾波之前先經過隔離,A/D采集模塊主要采用三片AD7864-1來實現12通道的同步采樣。邏輯控制及數據緩存模塊是在FPGA內部編程實現的。在數據送入PC104總線時,74LS245在PC104總線與FPGA之間也起驅動的作用。在PC104總線與FPGA不進行數據傳輸時,74LS245呈高阻狀態,這樣可以防止主機與采集卡間的數據相互干擾。
2 硬件電路設計
  整個系統硬件是把12通路的A/D同步采集設計在一塊電路板上,包括濾波、A/D轉換、數據緩存、FPGA邏輯控制以及總線接口,本文主要介紹A/D采集電路和FPGA內部電路的設計與實現。
2.1 A/D采集模塊
  AD7864是AD公司推出的高速、低功耗、四通道同步采樣12位并行接口的A/D轉換器,它可以用于馬達控制、非中斷電源控制、數據采集和通訊等。
  該器件內部具有一個轉換時間1.65μs的逐次逼近式A/D轉換器,4路跟蹤/保持放大器,2.5V參考電源,片內時鐘震蕩器,信號調整電路及一個高速并行接口。AD7864可對四個通道的模擬輸入信號同步采樣,并將四個通道之間的相對相位和大小信息保存下來,這使得它特別適合于交流電機控制、三相電網電壓檢測等場合。
  A/D采集模塊采用三片AD7864-1同時采樣,以滿足12位同步采樣的要求。在A/D轉換電路中,三片AD7864-1使用同一個啟動信號/convst,在/convst的上升沿" title="上升沿">上升沿轉換開始。無需外部設置采樣保持電路、參考基準和極性轉換電路。在信號/convst的上升沿,BUSY信號被觸發高電平并一直保持到四個通道都轉換結束,同時所有跟蹤保持器開始工作,將濾波電路輸入的12路模擬信號相位信息保持一致,達到同步的要求。為了提高整個系統的采樣速率,AD7864-1的采集模式是在轉換過程中,每通道轉換結束時(/EOC變為地電平)開始讀出數據,轉換由/convst的上升沿啟動,轉換結束由/EOC的下降沿來表示。此時片選信號/CS端接地,由讀信號/RD讀出數據。當讀信號/RD和片選信號/CS同時保持低電平時才可讀數據,讀操作在工作時要確保寫信號/WR處于高電平。每次讀數據操作增加輸出數據寄存器指針,讀完最后一個轉換數據時,將輸出數據寄存器指針復位。寫操作主要完成工作模式的設置,一般只在初始化或轉換通道切換時進行。而進行數據采集的操作只要給出啟動命令,啟動設置的通道進行同步采集,待所有的數據轉換結束后自動發出中斷請求信號,然后進行相應通道的數據讀取即可。
2.2? FPGA內部電路設計
  隨著現場可編程門陣列(FPGA)技術的飛速發展,FPGA的應用日益廣泛,它具有更高的密度、更快的工作速度和更大的編程靈活性,被廣泛應用于各種電子類產品中。系統通過FPGA來實現高速數據緩存及邏輯控制。采用的器件是FLEX1K 系列的EP1K30TC144-1器件,其最大工作頻率為40MHz,消耗1 533 個LC,平均編碼時間為20個時鐘周期。FPGA 除了要滿足相應的時序要求外, 還要求控制數據的位數和A/D轉換器的位數相匹配。數據緩存區要求既要有與A/D芯片的接口,又要有與系統主機的接口以提高數據吞吐率,因此通過EP1K30TC144-1芯片內置的先進先出(FIFO)緩沖存儲器實現數據高速傳輸。為此設計了地址譯碼、讀/寫數據寄存器、控制通道寄存器、啟動觸發器和中斷響應寄存器,所有的操作都是通過讀寫相應的寄存器實現。下面將介紹FPGA內部的各個設計模塊。
2.2.1 向FIFO寫數據的電路
  首先是六片FIFO,分為三組,即每片A/D對應兩個FIFO,本文只以第一片AD7864-1為例來說明FIFO對數據的存儲過程,在FPGA內部電路圖中截取一組FIFO來進行描述,如圖2所示。

?


  圖中in1[11..0]表示第一片A/D轉換后的12位數據線,分別與兩片FIFO的data[]連接,因為是把A/D轉換的數據寫入FIFO,A/D的轉換模式是轉換完一路就向FIFO寫數據,所以將FIFO 的寫時鐘wrclock與A/D的/eoc連接,當/eoc為低時,表明有一路轉換結束,開始向FIFO寫入數據。每片AD7864-1對應兩片FIFO A和B,wrfull1a、wrreq1a、rdeq1a、rdemptyla、wrfulllb、wrreq1b、rdreq1b、rdempty1b分別是a和b的寫滿標志位、寫請求信號、讀請求信號、讀空標志位。通過74139譯碼器,使wrfull1a、wrfull1b、rdempty1a、rdempty1b聯合作用控制FIFO的讀寫操作。譯碼器作用的結果是只要A的wrfull1a為低,數據就一直寫入A中,當wrfull1a為高時,切換數據流向,開始向B寫數據。當wrfull標志為高電平時,表明FIFO達到半滿,向系統申請中斷,總線響應中斷,立即啟動讀FIFO中的數據,當讀到空時,Empty標志有效,停止讀入操作。
2.2.2 中斷請求發生電路
  在寫數據的過程中,當三個FIFO都出現半滿標志時,就需要對主機發送讀請求信號,在FPGA內部通過一組或門、與門組合來產生該請求信號irq9,圖3所示為中斷請求的產生電路。

?

  圖3中wrfull1a和 wrfull1b相或, wrfull2a和wrfull2b相或, wrfull3a和wrfull3b相或,這三組相或的結果通過一個與門之后產生讀請求信號irq9。設計思想是:只要三組FIFO中每組有一個FIFO的寫滿標志為高,發送讀請求信號,一旦主機響應了該請求,則需要將三片已達到半滿狀態的FIFO依次讀數。這里使用一個中斷請求而不是三個中斷請求的原因是由于三個中斷請求會由于優先級問題發生沖突等待,使讀數據混亂,不利于數據的讀取存儲,還有可能因為等待時間過長而影響了采集速率。
2.2.3 主機讀取數據電路
  當主機響應了讀中斷請求之后,就會開始從FIFO中取數,但是六個FIFO的工作基本保持一致,所以存在主機先從哪一個FIFO中讀取數據的問題,因此需要設計一個數據選擇讀取電路,如圖4所示。

?


  圖中數據選擇電路通過三位地址a0、a1、a2來對六個FIFO的六路數據選擇輸出。
2.2.4 A/D轉換啟動信號發生電路
  在本電路中還有一個A/D轉換啟動信號/convst的產生電路,三片AD7864-1使用同一個啟動信號/convst,在/convst的上升沿轉換開始。在第一次啟動A/D芯片時,需要分配一個地址來啟動A/D芯片,一旦啟動成功,下一次的/convst主要由三片AD7864-1的BUSY信號來產生,因為在A/D轉換過程中,busy信號都為高電平,當轉換結束后,busy變低電平。所以只要三片AD7864-1的busy信號都為低電平時,表明12路轉換結束,需要再次啟動轉換。該局部電路如圖5所示。

?


  本設計的大量工作都是在FPGA內部實現的,簡化了硬件電路, 同時也提高了其使用的簡易性和配置的靈活性, 具有準確和快速的特點。
3 仿真結果
  FPGA內部電路的設計采用VHDL 硬件描述語言實現,并在ALTERA 公司的MAX+plusⅡ軟件上編譯仿真。采用全局同步時鐘,避免了毛剌的產生,保證了信號的穩定性, 本文介紹的兩個FIFO工作原理為乒乓式存儲的原理,采用這種存儲方式,主要是考慮到由于轉換通路比較多,若每片A/D只對應一片FIFO,當主機不能及時讀走FIFO中的數據時,A/D轉換就不能正常進行,這就會影響數據的傳輸速度,也很容易使數據丟失。而采用兩片FIFO的乒乓式存儲之后,寫滿一片FIFO,在主機來不及讀走數據時,可以將數據打入第二片FIFO,這樣可以起到一個緩沖作用,不會由于數據的讀取而影響整個系統的正常工作。該電路的設計是利用寫滿標志、讀空標志通過74193譯碼進行兩片FIFO的讀寫切換的,其仿真結果分別如圖6、圖7、圖8所示。

?

?


  通過時序仿真證明,采用74193譯碼來控制兩片FIFO的切換是可行的。設計中采用六片相同規格的FIFO,它們對數據的緩存是同步進行的。所以本設計中FIFO的讀請求都是由半滿標志產生的,從FIFO向外讀數據時,只要rdempty1a不為高就一直保持從FIFO A中讀數,當rdempty1a為高且rdempty1b為低時,開始讀FIFO B中的數據。當FIFO的寫滿標志為高時,開始向主機發送請求。其他兩組的工作原理和第一組相似,這里就不再敘述。
  根據上述原理設計的12通道數據采集卡,其結構完全遵循PC104 總線標準,它可對多達12通道的模擬量進行A/D轉換,并對轉換的數據進行存儲 ,可直接作為PC104 的標準板卡使用。


參考文獻
[1]?張載鴻. 微型機(PC系列)接口控制教程. 北京:清華大學出版社, 1992.
[2]?孫肖子,張企民. 模擬電子技術基礎. 西安:西安電子科技大學出版社,2001.
[3]?丁玉美,高西全. 數字信號處理(第二版). 西安:西安電子科技大學出版社, 2001.
[4]?高鵬,安濤,寇懷成. Protel 99入門與提高.北京:人民郵電出版社,2000.
[5]?朱明程,董爾令. 可編程邏輯器件原理及應用. 西安:西安電子科技大學出版社,2004.
[6]?楮振勇,翁木云. FPGA設計及應用.西安:西安電子科技大學出版社, 2002.

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美黄色aaaa| 一区二区在线免费观看| 麻豆九一精品爱看视频在线观看免费| 亚洲在线免费视频| 日韩视频免费大全中文字幕| 亚洲大胆女人| 亚洲第一福利社区| 久久激情中文| 久久av二区| 欧美一区二区三区另类| 亚洲欧美伊人| 午夜精品久久久久久久| 亚洲女人天堂成人av在线| 亚洲一区二区三区乱码aⅴ蜜桃女| 日韩一级片网址| 亚洲精品欧美| 亚洲精选成人| 日韩香蕉视频| 一个人看的www久久| 一区二区免费看| 亚洲无线视频| 亚洲综合电影一区二区三区| 亚洲欧美日韩精品久久久| 亚洲欧美激情精品一区二区| 欧美一区二区三区四区夜夜大片| 欧美在线视频观看| 亚洲黄色毛片| 日韩亚洲欧美综合| 在线中文字幕一区| 亚洲免费视频一区二区| 欧美一区二区三区免费视频| 久久九九国产精品怡红院| 久久精品91| 久久综合九色综合欧美就去吻| 美女露胸一区二区三区| 欧美激情亚洲自拍| 欧美视频观看一区| 国产农村妇女精品一二区| 国产亚洲综合精品| 在线看视频不卡| 999亚洲国产精| 亚洲一区美女视频在线观看免费| 性欧美长视频| 亚洲精品欧美日韩| 亚洲午夜激情| 欧美在线网站| 女人香蕉久久**毛片精品| 欧美日韩免费高清一区色橹橹| 欧美性大战久久久久久久| 国产日韩欧美三级| 亚洲国产高潮在线观看| 一区二区三区|亚洲午夜| 西西人体一区二区| 亚洲精品中文字幕在线| 欧美日韩国产页| 欧美亚洲免费| 亚洲欧洲视频在线| 亚洲午夜在线观看| 久久久久国产成人精品亚洲午夜| 另类av导航| 国产精品久久久久久久免费软件 | 亚洲欧洲av一区二区| 久久精品国产96久久久香蕉| 欧美激情精品久久久六区热门| 国产精品资源在线观看| 亚洲电影在线免费观看| 亚洲影院在线观看| 亚洲精品乱码久久久久久蜜桃91| 亚洲综合大片69999| 免费h精品视频在线播放| 欧美午夜免费电影| 激情文学一区| 亚洲视频中文| 99视频一区二区| 久久先锋影音av| 国产精品久久久久久久久久ktv| 在线观看免费视频综合| 亚洲欧美日韩精品久久久| 亚洲精品系列| 久久久久网站| 国产精品影音先锋| 亚洲蜜桃精久久久久久久| 亚洲第一久久影院| 先锋影音国产精品| 欧美日韩色一区| 亚洲二区免费| 欧美一区二区三区免费在线看 | 国产欧美一区二区三区国产幕精品| 91久久国产精品91久久性色| 欧美一激情一区二区三区| 欧美视频一区二区三区…| 一区二区不卡在线视频 午夜欧美不卡'| 欧美在线www| 国产精品地址| 亚洲免费不卡| 亚洲另类一区二区| 久久一区中文字幕| 国产区精品在线观看| 一区二区三区福利| 亚洲免费观看在线观看| 麻豆精品在线视频| 国产一区日韩二区欧美三区| 亚洲欧美久久| 亚洲欧美日本视频在线观看| 欧美日韩国产在线播放| 黄色小说综合网站| 欧美专区福利在线| 久久不射2019中文字幕| 国产精品乱码久久久久久| 亚洲最新视频在线播放| 一本久道久久综合狠狠爱| 欧美电影免费观看高清完整版| 在线观看国产日韩| 亚洲国产精品电影| 久久综合中文色婷婷| 国产一区二区高清不卡| 欧美一区二区三区久久精品| 欧美在线一级va免费观看| 国产精品―色哟哟| 亚洲宅男天堂在线观看无病毒| 亚洲欧美日韩一区二区| 国产精品久久久久7777婷婷| 亚洲午夜在线观看| 亚洲欧美日韩爽爽影院| 国产精品爽爽ⅴa在线观看| 亚洲午夜电影网| 午夜国产一区| 国产欧美一区二区三区久久人妖| 午夜精品视频在线| 久久av一区二区三区亚洲| 欧美影院视频| 亚洲欧洲精品一区二区精品久久久| 亚洲高清自拍| 欧美高清在线一区| 亚洲精品欧美日韩专区| 亚洲五月六月| 国产精品视频男人的天堂| 午夜久久tv| 久久蜜桃资源一区二区老牛 | 亚洲国产成人高清精品| 免费试看一区| 99精品视频免费观看视频| 亚洲一区二区三区在线看| 国产精品入口66mio| 久久国产婷婷国产香蕉| 欧美jizz19hd性欧美| 日韩视频久久| 亚洲欧美日韩在线不卡| 国产亚洲精品7777| 亚洲日本va午夜在线电影| 欧美日韩一视频区二区| 亚洲欧美成人精品| 老巨人导航500精品| 韩国v欧美v日本v亚洲v| 亚洲精品视频啊美女在线直播| 欧美日韩综合在线免费观看| 亚洲免费在线视频| 久久精品国产96久久久香蕉| 亚洲国产欧美在线人成| 亚洲欧美国产精品va在线观看| 国产一区二区三区日韩| 亚洲日产国产精品| 国产精品久久99| 久久精品国产免费看久久精品| 欧美日韩成人一区| 午夜精品一区二区三区四区 | 午夜国产精品视频免费体验区| 美女视频黄 久久| 一区二区冒白浆视频| 久久久久久婷| 夜夜嗨一区二区三区| 久久亚洲高清| 亚洲天堂av图片| 另类综合日韩欧美亚洲| 一区二区三区四区国产精品| 老司机免费视频一区二区三区| 一区二区三区四区在线| 久久中文字幕一区| 亚洲视频在线观看视频| 欧美成年人网| 欧美在线免费观看视频| 欧美日韩在线免费| 亚洲电影免费| 国产精品午夜国产小视频| 日韩亚洲视频在线| 国模私拍视频一区| 亚洲一区三区视频在线观看| 一区视频在线播放| 香蕉成人伊视频在线观看| 亚洲欧洲日产国产综合网| 久久九九免费视频| 亚洲伊人一本大道中文字幕| 午夜久久99| 亚洲看片网站| 美女视频黄 久久| 欧美一区二区观看视频| 国产精品海角社区在线观看| 99re这里只有精品6| 狠狠色狠狠色综合| 欧美一级欧美一级在线播放|