《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA的高速多通道數據采集系統設計
基于FPGA的高速多通道數據采集系統設計
來源:電子技術應用2013年第4期
甘建偉, 秦付軍, 王 鵬
西華大學 機械工程與自動化學院, 四川 成都610039
摘要: 介紹一種基于FPGA的數據采集系統的設計,以Cyclone Ⅱ系列的EP2C35F484芯片為主控單元,配合模數轉換芯片ADS7825和USB傳輸控制芯片CY7C68013,并結合外圍電路實現了采集系統。基于Quartus Ⅱ9.0平臺,實現了對ADS7825芯片和CY7C68013芯片的控制與通信,并采用Verilog硬件描述語言,實現了系統的仿真,給出了系統核心模塊的時序仿真波形圖。經測試,系統實現了對多路模擬信號的采集,具有良好的穩定性、快速性。
中圖分類號: TN919
文獻標識碼: A
文章編號: 0258-7998(2013)04-0055-03
Design of multi-channel high-speed data acquisition system based on FPGA
Gan Jianwei, Qin Fujun,Wang Peng
School of Mechanical Engineering and Automation, Xihua University, Chengdu 610039, China
Abstract: Introduces a data acquisition system based on the FPGA design , by using Cyclone Ⅱ series of EP2C35F484 chip as the master control unit, with the A/D conversion chip ADS7825 and USB transmission control chip CY7C68013, and combined with peripheral circuit realized the acquisition system. Based on the Quartus Ⅱ 9.0 flat, to realize the ADS7825 chip and CY7C68013 chip control and communication, we use the Verilog hardware description language to realize the simulation of the system, and give the system core module timing simulation waveform diagram. By test, the multi-channel analog signal acquisition, has a good stability and rapidity.
Key words : data acquisition; FPGA; USB2.0; A/D

    隨著現代社會信息技術的高速發展,數據采集的快速性、穩定性、精確性成為數據采集的重要指標。傳統數據采集系統采用單片機與DSP作為控制器,控制模數轉換器(ADC)、存儲器及其各自的外圍電路,對數據進行采集并處理。然而,單片機本身的指令周期及其處理速度的限制使其很難達到多通道高速采集數據的要求,并且單片機控制各功能模塊需要軟件來支持,軟件運行時間在整個采樣時間中占有很大的比例,效率較低[1];以FPGA作為控制器的多通道采集系統,具有較高的時鐘頻率,較快的運行速度,具有開發周期短、功耗低、開發費用低等優點。因此,本設計采用FPGA作為控制器對數據進行采集。

1 系統總體架構
    多路模擬信號經過A/D模數轉換后,將輸入的模擬信號轉為數字信號,該數字信號通過FPGA核心單元,經過USB傳輸到計算機中并存儲。該數據適用于控制過程、存儲、處理,并顯示在計算機中。FPGA不僅控制A/D轉換器,還應完成對USB及內部FIFO的讀寫控制,實現了其邏輯控制功能。系統整體原理圖如圖1所示。

 

 

2 主要芯片選型
2.1 FPGA芯片

    FPGA設計數字系統電路時,設計靈活,集成度高,工作速度快,可以很大地降低成本。本設計采用Altera公司的Cyclone II 系列的EP2C35F484芯片,該芯片系統門數為35 000個,I/O端口為475個,1.20 V的電源電壓,能在-40℃~+100℃的溫度下工作,完全能達到設計的要求。
2.2 A/D轉換芯片
    通過對系統的采樣率、分辨率、通道數等要求的分析,本設計采用的是一片低功耗ADS7825芯片進行模數轉換。ADS7825是一片4通道、16位模數轉換器,其數據采樣及轉換時間不超過25 μs,可輸入-10.0 V~+10.0 V的模擬電壓。ADS7825的最大優點就是經過A/D轉換后的數據既可以并行輸出也可以串行輸出,它可以被配置在一個連續轉換模式,按順序數位化所有4個通道,使用非常方便。
2.3 USB傳輸芯片的選型
    使用USB2.0通用串行接口總線,USB接口特點是即插即用和支持熱插拔,并且傳輸速率高,USB2.0支持高達480 Mb/s的數據傳輸速率。系統采用了應用廣泛、性能穩定的Cypress公司CY7C68013芯片,實現了USB接口的擴展,能夠與計算機之間實現高速的數據傳遞。
3 系統硬件設計
3.1 A/D轉換電路

    在使用ADS7825時,將其片選引腳CS置低電平,讀數/啟動轉換引腳R/C給予一個下降沿,以啟動A/D轉換器。當BUSY保持低電平時, A/D進入到采樣保持和轉換的過程中;當BUSY為高電平,R/C為高電平時,A/D進入到開始讀取數據過程。在此過程中,必須先將R/C置高電平,再將BUSY置高電平,否則可能會引起數據還未讀完,就開始了新的轉換,導致數據的丟失[2]。
    ADS7825的輸出有兩種模式:一種為并行輸出,另一種為串行輸出,其工作原理不同。為了能實現多通道高速采集系統,設計采用并行輸出的方式。
    并行輸出的工作原理:將片選引腳CS置低電平,給予R/C下降沿,以啟動A/D轉換器。檢測BUSY引腳的狀態,當BUSY引腳為低電平時,表示A/D數據的轉換還在進行;當BUSY為高電平時,數據轉換完成,開始讀取數據。讀取數據時,要輸出16位數據,輸出只有8個引腳,需要BYTE引腳的功能,當BYTE引腳為高電平時,輸出的是低8位數據;當BYTE引腳為低電平時,輸出的是高8位數據[3]。ADS7825外圍電路圖如圖2所示。

3.2 USB通信接口
    CY7C68013有Ports、Slave FIFO和GPIF 3種接口方式。本設計采用Slave FIFO接口方式。Slave FIFO是從機方式,即FX的CPU不直接參與USB數據處理,而是簡單地把FX作為USB和外部數據處理邏輯(如ASIC、DSP和IDE(串行接口引擎)控制器)之間的通道,數據流并不經過CPU,而是通過FX的FIFO直接傳輸。FIFO通過外部主機控制,同時,FIFO提供所需的時序信號、握手信號(滿、空等)和輸出使能等[4]。
    圖3為FPGA與USB接口示意圖,采用Slave FIFO模式,外部時鐘使用的是FPGA提供的12.5 MHz的時鐘信號,FD[15:0]為16位雙向數據總線,因此最大傳輸速度可達200 Mb/s,FLAGA、FLAGB、FLAGC是CY7C68013FIFO的標志管腳,SLOE用于使能數據總線FD的輸出;FIFOADR[1:0]用于選擇和FD連接的端點緩沖區;SLRD和SLWR可分別作為FIFO的讀寫選通信號。
    FPGA控制進程如下[5]:
    (1)IDLE:當寫事件發生時,跳轉到狀態1;
    (2)狀態1:通過改變FIFOADR[1:0],指向FIFO,跳到狀態2;
    (3)狀態2:如果“FIFO滿”為假,則跳到狀態3,否則在狀態2循環等待;
    (4)狀態3:傳送總線驅動數據,每個IFCLK激活SLWR,跳到狀態4;
    (5)狀態4:是否還有數據要傳送,有數據則跳到狀態2,無數據則要傳送跳到IDLE。
    異步Slave FIFO 讀狀態如圖4所示。

4 FPGA控制程序設計及仿真
4.1 ADS7825仿真控制設計

    基于FPGA實現對ADS7825模數轉換器的控制,并讀出其轉換的數據。采用Verilog HDL硬件描述語言,實現對ADS7825的控制與數據的讀出,并在Quartus Ⅱ9.0開發工具中綜合編譯并映射到FPGA中運行,其仿真結果如圖5所示。

    仿真程序如下:
    case(ad_state)
    {......
    4′b0010:    begin                            //高字節讀取
    data_16bit[15:8]
    <= ads7825data_8bit[7:0];
    ad_state <= 4'b0110;
    end
    4&prime;b0101:    begin                          //低字節讀取
    data_16bit[7:0] <= ads7825data_8bit[7:0];
    ad_state <= 4&prime;b0111;
    data_valid <= 1&prime;b1;    
                      //數據開始完畢,外部允許讀取寄存器
    end    
    ......
    }
    波形結果顯示了該模塊在設置好時鐘頻率50 MHz和片選信號的情況下,通過ADS7825模數轉換器轉換的高8位和低8位的數據,FPGA邏輯控制單元能夠快速準確地接收,轉換成16位數據,并輸出對ADS7825的邏輯控制信號,從而實現了FPGA對ADS7825模數轉換器準確無誤的控制和數據的接收,充分體現了系統的快速性、準確性,穩定性。
4.2 USB傳輸控制仿真模塊
    CY7C68103為每個端口都提供了空滿標志位,設計利用FPGA對CY7C68013的空滿狀態的檢測,完成輸出對CY7C68013的控制信號,控制讀寫過程[6]。仿真波形如圖6所示。
    仿真程序如下[7-8]:
    always @(negedge CLK or negedge RESET)
    begin
    if(!RESET)
    begin
        SLWR_reg <= 1&prime;b0;
        SLCS <= 1'b0;
        SLOE <= 1'b1;
        SLRD <= 1'b1;
    end
    else
    begin
        SLOE <= 1'b1;
        SLRD <= 1'b1;
        SLCS <= 1'b0;
    if(full == 1&prime;b1)                // SLWR_reg is generated
    only when full is low.
    begin
        SLWR_reg <= ~SLWR_reg;    
    end
    else
    begin
        SLWR_reg <= 1&prime;b1;
    end
    end
    end    
    本設計介紹了以FPGA芯片EP2C35F484為主體,配合ADS7825和USB傳輸控制器CY7C68013構成的數據采集系統。利用FPGA的邏輯控制功能,實現對ADS7825與CY7C68013的邏輯控制,實現對數據快速、準確的采集。利用Altera公司的Quartus Ⅱ9.0開發工具,采用Verilog HDL硬件描述語言實現了對數據的傳輸,仿真結果表明本設計的可行性,從而實現了對4路模擬信號的采集與傳輸,具有良好的穩定性。
參考文獻
[1] 胡敦利,肖力,尤文艷. 基于FPGA的測試控制板卡的設計與實現[J]. 電子技術應用,2012,38(1):10-13.
[2] 王霞,李剛. 具有串行和并行輸出接口的模數轉換器&mdash;&mdash;ADS7825[J].國外電子元器件,1999(1):30-33.
[3] 張原峰,高彥,王彥文.ADS7825模數轉換芯片及其在高速數據采集系統中的應用[J].計算機測量與控制,2002,10(6):49-53.
[4] 夏宇聞. Verilog數字系統設計教程[M]. 北京:北京航空航天大學出版社,2008:44-46.
[5] 張思杰,趙泰,汪振興,等. 基于FPGA的USB接口數據采集系統設計[J]. 電子技術應用,2011,37(5):64-69.
[6] 張俊濤,王豫瑩.基于FPGA和USB2.0的高速數據采集系統[J].儀表技術與傳感器,2011(10):173-174.
[7] 吳繼華,王誠. Altera FPGA/CPLD設計(基礎篇)[M].北京:人民郵電出版社,2005:88-96.
[8] 吳繼華,王誠. Altera FPGA/CPLD設計(高級篇)[M]. 北京:人民郵電出版社,2005:91-100.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 色视频www在线播放国产人成 | 黄 色 免 费 网站在线观看 | 日日日操 | 国产a高清 | 久草6 | 久久久国产精品网站 | 国产 字幕 制服 中文 在线 | 欧美日韩一区二区在线视频 | 看免费黄色大片 | 欧美孕妇xxxxhd高清 | 99ri视频| 欧美乱人伦视频 | 久久天天躁夜夜躁狠狠躁2019 | 欧美日韩激情 | 特黄色一级毛片 | 日本在线黄| 337p日本大胆欧洲色噜噜高清 | 国产精品第五页 | 天天操婷婷 | 国产高清在线视频 | 欧美国产三级 | 国产精品亚洲欧美日韩一区在线 | 精品日韩欧美 | 欧美一级黄色片在线观看 | 欧美日韩在线第一页 | 国产精品日韩欧美在线第3页 | 亚洲欧美在线观看 | 日批视频免费播放 | 国产精品hd | 久久久久无码国产精品一区 | 深爱开心激情网 | 国产精品视频一区二区三区不卡 | 亚洲一区二区三区久久久久 | 亚洲精品天堂在线 | 成人黄色三级视频 | 正在播放一区 | 丝袜老师在办公室被狠狠 | a视频在线免费观看 | 成人午夜精品视频在线观看 | 免费高清特黄a 大片 | 一级特黄aaa大片免色 |