《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA的傳感器信號的采集與存儲模塊設計
基于FPGA的傳感器信號的采集與存儲模塊設計
來源:電子技術應用2014年第5期
劉占峰,任勇峰,李輝景,彭巧君
(中北大學 儀器科學與動態測試教育部重點實驗室 電子測試技術國家重點實驗室, 山西 太原030051
摘要: 為了實現飛行器在飛行試驗狀態下對空間噪聲信號的記錄,設計了一個基于FPGA的超聲數據采集與存儲模塊。該模塊以FPGA芯片XC3S400作為主控制器,使用THS1408芯片作為模/數轉換器,將采集到的模擬信號轉換為數字信號并進行存儲。在超聲數據采集模塊FPGA軟件方案中,對軟件的功能、實現框圖以及軟件流程做了相應的介紹。Flash芯片采用交替雙平面頁編程方式,提高了數據的寫入速度。通過試驗驗證了該采集與存儲模塊功能的有效性。
中圖分類號: TP274.2
文獻標識碼: A
文章編號: 0258-7998(2014)05-0039-03
中文引用格式:劉占峰,任勇峰,李輝景,彭巧君.基于FPGA的傳感器信號的采集與存儲模塊設計[J].電子技術應用,2014,40(05):39-41+48.
Design of a sensor signal acquisition and storage module based on FPGA
Liu Zhanfeng,Ren Yongfeng,Li Huijing,Peng Qiaojun
The Key Laboratory of Education Ministry of China for Instrument Science and Dynamic Test,National Key Laboratory for Electronic Measurement Technology,North University of China,Taiyuan 030051,China
Abstract: In order to achieve the records of spatial noise signal during aircraft flying condition,a ultrasonic data acquisition and storage module is designed based on FPGA. In the module, FPGA chip XC3S400 is the main controller, THS1408 chip is used as the A/D converter, the collected analog signals are converted to digital signals and for storage. In the FPGA software scheme of ultrasonic data acquisition module, the function of the software, implementation block diagram and software flow chart are presented.Flash chips use alternating double plane page programming method, improving the data writing speed. The test has verified the effectiveness of the acquisition and storage module function.
Key words : FPGA;signal acquisition;THS1408;Flash

    隨著高速采集和大容量存儲技術的發展,傳統的低速采樣和單一Flash存儲結構的應用已經難以滿足工業化和軍事化應用。在航空、工業等領域中,數據采集和存儲設備占據著很重要的地位,對多通道高速數據采集技術的應用需求也越來越廣泛,對數據存儲容量的要求也越來越高,特別是在需要對數據進行記錄和回放分析的場合。在飛行器的飛行研制、驗證和完善階段,對飛行過程中各項參數的變化和分析具有重要作用和意義[1]。傳統的數據采集和存儲設備由于存在低采樣率和存儲量小的缺點,已難以勝任長時間數據采集與存儲的任務,因此采用新的采集和存儲陣列技術解決高速數據采集和大容量存儲的問題顯得日益重要。由于FPGA具有可靈活配置、低成本以及Flash可組成陣列的特點,對解決飛行試驗中數據采集和存儲的問題提供了可能。
    本文提出了一種基于FPGA高采樣率深存儲的設計方案,并可實現飛行器在飛行過程中的各項原始數據的記錄、分析和回放。而且可以通過上位機軟件在計算機中讀取出飛行的原始數據并將數據拆分以及繪圖,供試驗后進行分析。
1 總體設計方案
    本設計采用型號為XC3S400E的FPGA芯片作為邏輯控制單元,該芯片擁有400 K邏輯門,288 KB Block RAM,I/O數量達到了141個,其低成本、低功耗和可靈活配置的特性能夠滿足設計要求[2-3]。引腳支持高速數據通信,能夠完成高速采集和存儲接口的設計,設計總體框圖如圖1所示,其中信號調理電路完成模擬信號的放大和濾波,模/數轉換器完成模擬信號到數字信號的轉換功能。為了提高電源的抗噪聲性能,在給系統模擬電路和數字電路供電之前需要經過濾波處理。存儲模塊由4個深存儲的三星Flash組合成一個16 GB的Flash陣列,實現數據的大容量存儲功能??偩€接口完成與計算機之間控制指令、數據、地址等信號的通信。
    系統工作原理:計算機通過USB總線接口給系統下發控制指令,指令在FPGA邏輯控制單元進行譯碼,之后完成相對應的采集、存儲等操作。參數信號經過信號輸入接口后進行調理和模/數轉換,將采集到的數字信號存儲到Flash陣列中,以備計算機對數據進行回放和分析。

2 硬件電路設計
    采集模塊主要由信號調理電路、單端轉差分電路和模數轉換電路三部分組成,采集模塊的電路原理圖如圖2所示。信號調理電路的作用是把傳感器輸入的相對較小的電壓信號進行放大,使其適合于模/數轉換芯片的輸入要求[4]。單端轉差分電路將傳感器輸入的單端模擬信號轉換成差分信號,以滿足模/數轉換芯片THS1408轉換的輸入信號要求[5]。FPGA控制模/數轉換芯片把模擬信號轉換成數字量,并將符合條件的數據進行編幀,寫入16 GB Flash陣列。其中運放采用AD8028,當輸入信號頻率不大于1.5 MHz時,運放跟隨后的波形效果仍然很好,滿足設計要求。最初設計階段,電阻R12選用10 kΩ阻值,在實際電路調試過程中發現A/D運放的容性負載隨著輸入信號頻率的增大不斷減小,當輸入信號頻率達到1 MHz以上時,AD8028的輸入電容值C和容性負載由下式得出:

    由式(1)可知,AD8028的容性輸入阻抗與R12在同一數量級,電阻R12阻值過大,會對輸入信號進行分壓,使得輸入信號的幅值衰減。把電阻R12更換成1 kΩ以后,輸入信號幅值的衰減幾乎可以忽略不計,保證了信號的采集精度。THS1408采用具有三態緩沖的并行數據接口,可以直接連接到數據總線接口,通過驅動OE為低可以將數據輸出使能,使得電路設計更加簡單。
3 軟件設計
3.1 FPGA邏輯設計

      邏輯控制中心FPGA主要完成THS1408內部寄存器的初始化和數/模轉換控制、數據采集的控制、數據有效性判斷以及Flash陣列芯片的讀寫控制功能。內部程序框圖如圖3所示。

    FPGA作為高速采集和深存儲模塊的中心控制器,主要負責控制A/D轉換器、外部FIFO、Flash陣列以及內部總線間的相互通信,各個模塊的作用如下:
    (1)A/D控制以及FIFO寫控制模塊:系統上電后,該模塊主動實現A/D轉換器的初始化、FIFO的初始化,在采集狀態下,控制A/D轉換器的采樣,并將數據寫入FIFO中。
    (2)接口控制以及FIFO讀控制模塊:系統上電后,將內部總線發送過來的命令轉發給各個子模塊,在采集狀態下,讀取FIFO中的數據,并對數值進行判斷,滿足條件時,將數據傳輸給Flash陣列控制模塊。在讀數狀態下,接收Flash陣列控制模塊傳遞過來的數據,并通過內部總線將數據通過接口模塊上傳給上位機,進行數據的分析、判斷。
    (3)Flash陣列控制模塊:系統上電后,該模塊對Flash無效塊進行掃描,并生成列表。在擦除狀態下,該模塊控制Flash陣列的擦除流程;在采集狀態下,該模塊將前一級送過來的數據進行存儲;在讀數狀態下,該模塊讀取Flash陣列中的數據,并傳遞給前一級模塊。其FPGA具體的控制流程圖如圖4所示。

3.2 Flash讀寫
    本設計中,存儲芯片選用三星公司的K9WBG08U1M。Flash的寫入過程需要進行頁編程,頁編程的最大時間為700 ?滋s,典型時間為200 ?滋s,經實際測試頁編程時間為150 ?滋s~250 ?滋s。在頁編程時間內,不能對Flash進行操作。K9WBG08U1M擁有兩個片選信號,在chip1進入編程后,對chip2進行寫入操作,從而錯過編程時間。K9WBG08U1M可以將內部存儲空間分為4個存儲平面,每個平面由2 048個塊和4 KB的頁寄存器組成,每個平面可以進行單獨的擦除和編程操作[6]。設計中,Flash采用交替雙平面編程方式,可以大大提高存儲芯片的寫入速度。在進行雙平面操作時,必須選擇plane0和plane1或者plane2和plane3同時進行操作。如令chip1中plane0和plane1為第1組,chip1中plane2和plane3為第2組,chip2中plane0和plane1為第3組,chip2中plane0和plane1為第4組,交替雙平面編程方式流程圖如圖5所示。當寫完第1組頁寄存器以后,將進入200 μs的編程時間,此時再對第2、3和4組加載數據。當第4組加載完數據以后,第1組已經完成了編程,可以繼續對第1組加載數據[7]。

    為了方便對塊地址的統一管理,每次上電后先掃描Flash內部無效塊,并生成無效塊列表,存放于FPGA內部ROM中。只要不斷電,Flash的擦除、讀、寫操作都按照列表操作,不再進行無效塊檢測[8]。若對應的塊地址為有效塊,則將數據寫入該塊中。
3.3 模/數轉換

 


    根據THS1408的采樣時序和采樣率確定A/D采集時序,如圖6所示。系統時鐘clk為60 MHz,通過計數器對系統時鐘進行十分頻,產生A/D采樣時鐘ad_clk為6 MHz,在時鐘上升沿對輸入的模擬信號進行采樣并進行模/數轉換,在時鐘下降沿輸出數字量,數據輸出延時25 ns。通過控制數據輸出使能out_oe完成轉換后的14 bit數字量的輸出,并將其緩存入外部FIFO中。當符合觸發條件時,將數據存入對應的16 GB Flash陣列中。
4 實驗結果與驗證
    為驗證系統的功能,將采集與存儲系統接入地面測試系統,如圖7所示。
    在地面檢測模式下,地面測試臺向系統提供模擬信號供其采集(這里提供頻率為3.8 Hz的正弦模擬信號)。采集與存儲系統對此正弦模擬信號進行采集、A/D轉換、編幀和存儲。當采集存儲結束之后,地面測試臺向采集和存儲系統下發讀數命令將系統轉換存儲后的數據讀回測試臺,并通過USB將數據上傳給上位機。上位機軟件對數據采集模塊采回的數據進行數據處理和分析,在數據的幀校驗準確無誤后,對分解后的數據進行繪圖分析,繪圖結果如圖8所示,可以清楚地看到正弦波形。通過10次連續的采集和Flash讀取測試,驗證了系統的可靠性和準確性。

    本文介紹了一種基于FPGA的高速采集和深存儲的模塊設計,整個設計在實現高速數據采集的同時也實現了大容量的數據存儲。物理層上采用高速的模/數轉換器,同時增加了放大、濾波等調理電路,在硬件電路上降低了信號的噪聲,并且采用了構造Flash陣列的方法,提高了數據的存儲深度。該設計已可實現采樣率為6 MHz的數據采集以及高達16 GB的存儲容量,并具有實現簡單以及功耗低的特點,在高速數據傳輸應用中具有很高的應用和參考價值。
參考文獻
[1] 姚永興.多通道數據存儲系統關鍵技術研究[D].太原:中北大學,2012.
[2] 王杰,王誠,謝龍漢.Xiinx FPGA/CPLD設計手冊[M].北京:人民郵電出版社,2011.
[3] 白佳俊,孟祥勇,張德平,等.基于W5300和FPGA的實時數據采集系統設計[J].電子技術應用,2013,39(4):19-21.
[4] 郭建平,王亮,郭正剛,等.單通道信號處理的前端信號調理模塊的設計[J].儀表技術與傳感器,2008(9):99-101.
[5] TI.THS1408-EP data sheet[Z].2011.
[6] Samsung Electronics K9XXGO8XXM data sheet[Z].2006.
[7] 李鑫旺,張丕狀.基于非易失存儲器的數據存儲與管理方法[J].探測與控制學報,2010,32(2):3-4.
[8] 文豐,趙艷利,甄國涌.基于FPGA的高速數據采集存儲系統的設計[J].電子技術,2009,46(1):18-19.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: www.久久 | 在线亚洲日产一区二区 | 久久国内免费视频 | 国产美女作爱全过程免费视频 | 99精彩视频 | 欧美日韩一区二区在线观看 | 欧美成人乱弄视频 | 久久99热久久精品91 | 精品视频在线观看一区二区三区 | 亚洲成a人片在线看 | 久草手机在线视频 | 日本加勒比在线视频 | 久久99国产一区二区三区 | 国产女主播在线 | 亚洲综合国产 | 久久九九国产精品怡红院 | 性感美女香蕉视频 | 萌白酱福利视频 | 一级做a爰全过程免费视频毛片 | 一级女性生活片 | 久久香蕉国产线看免费 | 韩国毛片一级 | 国产成人在线视频观看 | 高清性色生活片欧美在线 | 国产成人精品视频在放 | 亚洲日本在线观看网址 | 亚洲欧洲日韩在线 | 国产高清视频在线观看 | 中文字幕最新中文字幕中文字幕 | a级片免费观看视频 | 一区二区三区在线看 | 波多野结衣一区二区三区高清在线 | 午夜精| 欧美a在线| 日韩欧美一区二区中文字幕 | 女人夜色黄网在线观看 | 国产专区一va亚洲v天堂 | 国内精品久久影视 | 黑色丝袜美美女被躁视频 | 成网站在线观看人免费 | 免费一区二区三区视频狠狠 |