FPGA數據採集電子電路設計攻略

2021-01-11 電子產品世界

測控系統常常需要處理所採集到的各種數字量信號。通常測控系統採用通用MCU完成系統任務。但當系統中採集信號量較多時,僅依靠MCU則難以完成系統任務。針對這一問題,提出一種基於FPGA技術的多路數字量採集模塊。利用FPGA的I/O埠數多且可編程設置的特點,配以VHDL編寫的 FPGA內部邏輯,實現採集多路數字量信號。

本文引用地址:http://www.eepw.com.cn/article/201808/387830.htm

該數字量採集模塊主要功能是採集輸入的36路數字及脈衝信號,並將編幀後的信號數據上傳給上位機,上位機經解包處理後顯示信號相應的狀態進行判斷。根據設計要求,所測量的36路數位訊號中,有15路正脈衝信號。它們均由一個同步脈衝信號觸發,因此需要測量這些正脈衝的寬度和相對於同步信號脈衝的延時。要求採集步長不能大於10 ns,即採集頻率高於100 MHz。而其他數位訊號需要顯示高低電平狀態,其中一路信號是固定頻率信號,需測量其頻率值。上位機要求顯示所採集信號的狀態。

模塊原理框圖

FPGA內部邏輯功能強大,外圍電路設計基於簡單、可靠的原則。該模塊由FIFO、USB2.0單片機、光電隔離器等部分組成。36路數位訊號經光電隔離器進入FPGA主控單元,以供採集;FPGA處理採集到的信號,轉換成數據進行編幀,然後寫入FIFO。USB單片機提取FIFO中的數據,通過USB電纜傳送給上位機,上位機將傳送來的數據解幀,然後顯示所有信號狀態。模塊通過電源接口向各個部分供電。其原理框圖如圖1所示。

FPGA配置電路

FPGA是採用XILINX公司的Spantan-II系列XC2S100E,該系列器件的內核採用2.5 V供電,工作頻率高達200 MHz;I/O埠供電電壓為3.3 V,可承受5 V的輸入高電平。Spartan-II系列的FPGA具有豐富的I/O埠資源。其I/O埠輸出緩衝器接收高達24 mA源出電流和48 mA灌入電流。

由於FPGA基於RAM工藝技術,掉電後不能保存信息,因此需要一個外置存儲器來保存信息。採用一次可編程的PROM(高有效或低有效)XCF01SV020,其復位引腳的極性可編程設置,供電電壓為3.3 V。XCF01SVO20($3.1255)的DONE、INIT、CCLK信號來自於FPGA XC2S100E。系統上電後,首先FPGA初始化,INIT、DONE置低。INIT置低後復位PROM,此時由於PROM的CE為低,因此選取 PROM,從而可將數據流從DATA引腳輸入到FPGA的DIN引腳。配置完成後,FPGA將DONE接高,PROM處於低功耗的待機模式,並將DATA 引腳置為高阻態。圖2為FPGA配置電路圖。

光電隔離電路

採用高速光電耦合器HCPL-2631,其開關頻率高達10 MHz,而輸人數位訊號頻率為120 kHz,完全滿足要求。由於光電耦合器件以光為媒介傳輸信息,可使輸入輸出隔離,由於光電耦合器的輸入迴路為發光二極體,其輸入阻抗很小,而幹擾源的內阻較大,根據分壓原理可知,饋送到光電耦合器輸入端的噪聲幹擾電壓變得很小,從而能有效抑制尖峰脈衝及各種噪聲幹擾,具有較強的抗幹擾性能;另外由於光電隔離器的兩端採用不同的接地方式,因此數位訊號地和模塊地被完全隔離。圖3為光電隔離電路圖。

FIFO電路

FIFO電路採用IDT公司的IDT72V17190器件,該器件採用3.3 V電壓供電,16位64 KB容量的FIFO,工作時鐘高達100 MHz。如圖4所示,FIFO的數據輸入D0~D15及PAF、WCLK、WEN均與FPGA相連。數據輸出Q0~Q15及REN、RCLK、OE、 EF、MRS、HF、FF均與USB2.0單片機相連。讀FIFO狀態時,USB2.0單片機給出FIFO復位信號MRS和使能信號OE,然後判斷 FIFO的狀態信號EF(空)和HF(半滿)。當FIFO半滿且非空,即EF為高,HF為低時,給出FIFO讀使能信號REN和讀時鐘RCLK,從 FIFO中讀出數據;寫FIFO時,FPGA判斷FIFO的PAF(幾乎滿)信號,如果該信號無效,則給出寫使能WEN和寫時鐘WCLK,將數據寫入 FIFO。

FPGA內部邏輯設計

FPGA內部邏輯主要分為數位訊號採集、數據緩存和數據讀取、FIFO控制。根據要求,信號採集又分為頻率信號採集、20路數位訊號採集和 15路脈衝信號採集。系統同時採集三組信號,再送入外部FIFO中緩存。由於脈衝信號的數據量較大,時序不匹配,因此在信號採集完後數據還應緩存,然後再經數據編幀送至外部FIFO。內部緩存利用VHDL編寫模塊,但是更簡易的方法是利用FPGA內部的雙口RAM。因此,FPGA選用Xilinx公司的 XCF2S-100E,其內部集成5 KB容量的RAM,足夠內部緩存使用。數據經信號採集後送人緩存,然後由讀取模塊讀出再送入外部FIFO,整個模塊採用120 MHz的時鐘,可以滿足要求大於100 MHz的時鐘頻率。採集20路數位訊號的方法是當信號變化時,就將當前所有數位訊號的電平狀態都送入緩存,而對於頻率信號和脈衝信號的採集則採用如下方法。

數據的編幀和解幀

在數據採集部分中,當同步信號的上升沿到來時,將3個幀標誌分別寫入3個緩存,頻率信號數據的幀標誌為EB90;20路數位訊號的幀標誌為 2個EB91;15路脈衝信號數據的幀標誌為3個EB92。讀取數據模塊中,當同步信號的下降沿到來時,開始讀取緩存的數據送至外部FIFO,並判斷當讀取一個EB90後,開始讀取緩存的數據,並送入外部FIFO;當讀到兩個EB91後,讀取緩存的數據,並送入外部FIFO;當讀到3個EB92後表明一幀數據讀取完畢,等待下一個同步信號的下降沿後再開始讀取下一幀數據。由於外部FIFO是16位,所以數據中不滿16位的都用0將數據補充完整,完整的數據幀結構如圖5所示。

上位機收到一幀數據後進行解幀處理,對於頻率信號數據,將這些T值相加並求平均得出T』,再乘以2,由於系統時鐘是120 MHz,所以2T』/120為頻率信號周期(μs級),然後求倒數即可得出該信號的頻率值。20路數字量信號數據直接顯示其電平狀態。脈衝信號數據則先判斷哪一路(多路)脈衝信號發生變化,再判斷該信號(幾路信號)的電平狀態。若為高電平,則對應的時間應為TBa;若為低電平,則對應的時間應為TBb。TBa即為該脈衝信號相對於同步信號的延遲,而TBb-TBa的值即為該脈衝信號的正脈衝脈寬。


相關焦點

  • fpga應用領域_fpga應用三個主要方向
    fpga的優勢   1)通信高速接口設計。FPGA可以用來做高速信號處理,一般如果AD採樣率高,數據速率高,這時就需要FPGA對數據進行處理,比如對數據進行抽取濾波,降低數據速率,使信號容易處理,傳輸,存儲。   2)數位訊號處理。包括圖像處理,雷達信號處理,醫學信號處理等。優勢是實時性好,用面積換速度,比CPU快的多。
  • FPGA設計的高速FIFO電路技術
    本文主要介紹高速FIFO電路在數據採集系統中的應用,相關電路主要有高速A/D轉換器、FPGA、SDRAM存儲器等。圖1為本方案的結構框圖。在大容量高速採集系統項目的開發過程中,FPGA作為可編程邏輯器件,設計靈活、可操作性強,是高速數字電路設計的核心器件。
  • 基於FPGA的RS232行列式矩陣鍵盤接口設計
    能通過動態掃描來判有鍵按下、將鍵值轉換成對應的ASCII碼值,在時鐘脈衝的作用實現串行數據的接收與發送。二、設計方案1.晶片引腳定義 將串行數據接收計數器設置位一個6位計數器,高4位為sh_r,低2位為sl_r,利用該計數器的狀態實現串行數據的同步控制和記數控制。2.串並轉換電路單元從RXD端接收的串行數據進經過串並變換後,將其低三位經LED輸出端輸出,驅動發光二極體LED0,LED1,LED2發光,從而顯示接收端RXD的每個數據的低三位。
  • 基於FPGA的八通道超聲探傷系統設計
    摘要:文中提出了一種基於FPGA的八通道超聲探傷系統設計方案。該系統利用低功耗可變增益運放和八通道ADC構成高集成度的前端放大和數據採集模塊;採用FPGA和ARM作為數位訊號處理的核心和人機互動的通道。
  • 汽車溫度控制系統連接器電路設計攻略 —電路圖天天讀(96)
    打開APP 汽車溫度控制系統連接器電路設計攻略 —電路圖天天讀(96) Dick 發表於 2015-01-26 11:43:18
  • fpga開發流程攻略與fpga器件選型七大原則分享
    fpga開發流程攻略與fpga器件選型七大原則分享 童鵬、胡以華 發表於 2020-11-19 15:39:56 (部分內容整合自以下作者,在此特別鳴謝
  • 一種基於FPGA的視頻圖像畫面分割器設計
    本文引用地址:http://www.eepw.com.cn/article/236794.htm隨著計算機、DSP、超大規模集成電路等技術的發展,畫面分割器開始採用硬體設計。首先,將各路視頻信號轉換成數字視頻信號;然後,在數字領域對各路視頻信號進行處理。使電路的設計、調試得到了很大的改善。但是,設計中所使用的獨立的邏輯電路較多,有的甚至使用專用的DSP晶片去處理視頻畫面的分割。
  • 6n137典型應用電路(光耦開關電路/數據採集系統)
    打開APP 6n137典型應用電路(光耦開關電路/數據採集系統) 發表於 2018-03-29 16:25:56 6n137
  • 基於FPGA技術的全方位移動機器人運動控制系統的方案設計
    本文研究了一種用FPGA技術實現三輪全方位移動機器人運動控制系統的方法,與雙DSP結構,DSP+CPLD結構,以及DSP+專用集成電路結構等相比,該方法具有簡單可靠,擴展性強等特點。且FPGA設計簡單,使用方便,開發周期短,能夠實現真正的SOPC系統。
  • 基於FPGA的慣導系統溫控電路接口設計
    摘要:本文介紹了一種基於FPGA的光纖陀螺慣導系統溫控電路接口設計。主要說明了溫控電路整體結構,溫控電路工作流程,FPGA與外圍電路的通信接口和FPGA的邏輯設計等幾個方面。
  • 基於FPGA/USB的CMOS圖像採集及數據傳輸系統設計
    CCD圖像傳感器具有良好的性能,但其外部電路複雜,不適合於低成本系統;而隨著CMOS集成電路工藝技術的發展,CMOS圖像傳感器得到了快速的發展,與CCD相比,它具有製造工藝成熟、易集成、低成本、低功耗、體積小以及使用簡單等優點。隨著集成電路工藝技術的提高,CMOS圖像傳感器在解析度、噪聲等方面都有顯著的改善,使得它在越來越多的領域上得到應用,它適用於低功耗的小型圖像採集系統。
  • 基於ADS1298 與FPGA的高性能腦電信號採集系統
    模數轉換的精度和速率也決定了腦電信號採集系統的性能,採用10位的模數轉換晶片,或者採用ADI公司最高採樣率1.25 MBPS的12位AD1671晶片,或者採用16位模/數轉換晶片。採用單片機、ARM和DSP作為控制器件的系統中,一般只能完成數據採集和處理較為單一的功能,其中以DSP的數據處理能力最強。
  • 基於FPGA的虛擬邏輯分析儀的設計
    隨著電子技術和計算機技術的發展,邏輯分析儀與 PC機相結合,研發的虛擬邏輯分析儀是近年的一個新的發展方向,兩者的結合擴展了邏輯分析儀的分析和計算能力,提高了性價比,且增強了儀器的通用性。現場可編程邏輯器件FPGA,是一種可由用戶根據所設計的數字系統的要求,在現場由自己配置、定義的高密度專用數字集成電路。它具有設計方便、靈活、校驗快和設計可重複改變的特點。
  • 智慧家庭設計攻略:你不可不知的電路圖合集
    智能監控模塊及其外圍電路可實現對周圍數據的採集和監控,如果監控對象正常的話就繼續循環監測,如果出現問題,微控制器即採用AT命令通過GSM簡訊模塊發送簡訊息給監控者,監控者也可用簡訊息的命令形式去設置以微控制器為核心的智能模塊,以及發送簡訊消息查詢命令和監控情況,從而達到無線監控的目的。
  • 電子電路設計與仿真工具
    EDA技術是在電子CAD技術基礎上發展起來的計算機軟體系統,是指以計算機為工作平臺,融合了應用電子技術、計算機技術、信息處理及智能化技術的 最新成果,進行電子產品的自動設計。利用EDA工具,可以將電子產品從電路設計、性能分析到設計出IC版圖或PCB版圖的整個過程在計算機上自動處理完成。
  • 無線滑鼠系統電路設計方案大全(三款電路設計原理詳細)
    無線滑鼠系統電路設計方案(一) 設計的無線滑鼠,以CC2430為控制晶片構成發射電路和接收電路。發射電路負責採集與發送滑鼠按鍵的移動信息,接收電路負責信息接收、處理並與計算機通信。 1、發射部分的電路設計 發射部分的硬體電路由滑鼠移動光學傳感器ADNS5030、滑鼠按鍵、無線發射模塊CC2430(軟體設置為發送模式)構成。
  • FPGA系統設計的仿真驗證之: ModelSim的仿真流程
    7.3.2 使用ModelSim進行功能仿真  使用ModelSim對設計的HDL程序進行仿真分為功能仿真和時序仿真兩種。本節將以一個具體的實例講解如何使用ModelSim對HDL工程進行功能仿真。時序仿真的具體內容將在7.4節具體介紹。  這裡我們使用的例子是一個分頻電路的設計。所謂分頻電路是將較高頻率的時鐘分頻,得到較低頻率的時鐘。
  • FPGA quartus ii裡的靜態時序分析
    quartus ii裡的靜態時序分析(STA):是套用特定的時序模型,針對特定電路分析其是否違反設計者給定的時序限制。說白了就是檢查fpga內部所有寄存器的建立時間保持時間是否滿足spec給定的要求。
  • 基於ADS1299腦電信號採集硬體設計
    通常的腦電採集是由相對獨立的各通道單獨進行模擬放大、濾波、ADC運算,所以造成體積大、一致性差、功耗高等問題,且易引入大量幹擾。顧及到以上問題,本文基於前端採集模擬晶片ADS1299,並利用STM32F103VCT6進行數據處理,實現了高性能、低噪聲和低功耗的腦電採集硬體電路的設計。
  • 電子電路設計解惑篇,如何解決傳感器電子電路設計中的幹擾問題
    電子電路設計應用廣泛,對於電子電路設計,很多朋友都存在濃厚興趣。在進行電子電路設計過程中,設計人員總會遇到各種電子電路設計難點,如幹擾。為幫助大家提供解決電子電路設計中的抗幹擾設計問題,本文將對電子電路的抗幹擾問題予以解析。如果你對本文即將探討的內容存在一定興趣,不妨繼續往下閱讀哦。