《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA和DSPIC30F6014A的數據記錄器設計
基于FPGA和DSPIC30F6014A的數據記錄器設計
2014年電子技術應用第11期
丁 寧,秦 麗,馬游春
中北大學 儀器科學與動態測試教育部重點實驗室,山西 太原030051
摘要: 針對目前飛行數據記錄器對數據的大容量和高速存儲的需求,提出了一種以DSPIC30F6014A控制USB接口芯片CH378讀寫U盤數據,并添加FPGA控制讀寫大容量Flash數據作為高速數據緩沖以實現脫離計算機存儲高速大容量數據至U盤的設計方案。該方案能夠實現大容量數據存儲功能,并能夠極大地提高U盤讀寫數據的速度,具有設備體積小、成本低和便于攜帶等優點,很大程度緩解了數據存儲的壓力,具有很廣闊的應用前景。
中圖分類號: TN919.5
文獻標識碼: A
文章編號: 0258-7998(2014)11-0085-03
Design of data recorder based on FPGA and DSPIC30F6014A
Ding Ning,Qin Li,Ma Youchun
National Key Laboratory for Electronic Measurement Technology,Key Laboratory of instrumentation Science & Dynamic Measurement of Ministry of Education, North University of China, Taiyuan 030051,China
Abstract: In order to meet the demand for data of large capacity and high speed storage of the flight data recorder, this paper proposes a DSPIC30F6014A to control the USB interface chip CH378 to read and write U disk data, and add the FPGA to read and write a large capacity Flash data as high-speed data buffer in order to achieve the design scheme of the storage of high speed and large capacity data to U disk and does not rely on computer. This scheme can achieve the function of storing large capacity data, and can greatly improve the speed of reading and writing data of the U disk, which has the advantages of small size, low cost and easy to carry, etc, greatly easing the pressure on data storage and having a very broad application prospect.
Key words : CH378;DSPIC30F6014A;FPGA;data storage

0 引言

  近年來,隨著航天航空事業的不斷進步,新型的航天產品(如新一代航天器、運載火箭、衛星及航天飛機等)已逐漸問世并向著自動化、智能化的方向發展,其系統構成也變得多元化,對于研究和探索這些先進的技術所需要采集的參數不斷增加,因而對于數據存儲設備的存儲容量、速度、質量、便攜性及抗沖擊能力的要求也在不斷提高[1]。高速數據存儲設備不僅在航天產品中扮演重要的角色,在民用航空飛機上也是必不可少的一部分,如飛行數據記錄器等[2]。

  為了滿足飛行數據記錄器的高速數據存儲需求,本文采用FPGA與DSPIC30F6014A單片機相結合的方式對數據記錄器進行了設計。這種記錄器既充分發揮了FPGA并行讀寫大容量Flash數據的能力,也充分利用了DSP-IC30F6014A單片機的單指令周期和并口讀寫方式等優越性能,通過結合高速文件管理芯片CH378和大容量Flash芯片,從而實現飛行數據的高速U盤存儲功能。這種設計方法可以有效地提高U盤讀寫數據的速度,避免了數據丟失現象,并減小了設備的體積,對體積小、成本低、速度高的飛行數據記錄系統設計具有十分重要的意義。

1 記錄器總體設計方案


001.jpg

  高速數據記錄器的系統設計主要框圖如圖1所示,主要由現場可編程器件FPGA、DSPIC30F6014A單片機、USB接口控制芯片CH378、U盤、數據存儲芯片Flash和高速串行數據總線422等模塊組成。

  整個系統工作過程:首先高速串行數據經過422總線傳輸給FPGA,然后FPGA對高速數據進行串并轉換和編幀處理,通過控制Flash實現高速數據的大容量緩存功能,并將緩存的數據經過并口與DSPIC30F6014A進行通信,最后利用DSPIC30F6014A接收來自FPGA的數據并通過控制CH378將數據存儲到U盤中。

2 系統硬件電路設計

  2.1 FPGA控制模塊

  為了解決傳統的高速數據記錄系統直接由單片機作為主控制芯片造成的數據丟失問題,本設計選用FPGA作為高速數據的緩存控制芯片,以提高系統的可靠性。其中FPGA選用Xilinx公司Spartan-3E系列芯片XC3S500E,該芯片具有功耗低、資源豐富、高性能等特點,其I/O口兼容多種電平標準,有助于與單片機連接通信。內部多達360 Kbit的Block RAM,可配置為雙端口RAM,添加必要的控制模塊構成高速異步FIFO,為數據的寫入及讀取提供足夠的緩沖空間。同時,它具有4個時鐘管理單元,可方便對FPGA的主頻分頻或倍頻,產生不同模塊所需的時鐘信號,并能夠保證這些時鐘信號精確穩定。

  2.2 DSPIC30F6014A控制模塊

  系統選用了高性能的DSPIC30F6014A單片機作為U盤數據存儲部分的主控制芯片,該單片機為單指令周期,采用哈佛雙總線結構,功耗低,驅動能力強,并且I/O端口功能強大,其與外部接口交換數據的效率非常高[3]。內部有8 KB的片內RAM,能夠作為高速數據的緩存區,其與FPGA和CH378之間的通信都是通過8位并口的方式進行數據傳輸的,能夠很大程度地提高讀寫數據的速度。其中DSPIC30F6014A與FPGA的連接示意圖如圖2所示。

002.jpg

  2.3 CH378模塊

  CH378能夠成為U盤記錄器首選的U盤接口芯片,是因為該芯片具有比CH376更高的通信速度[4],其可實現12 Mb/s全速通信和480 Mb/s高速通信;且在硬件連接方面,提供了高速8位被動并行接口,可直接掛接在單片機等處理器的數據總線上。其中CH378與DSPIC30F6014A單片機及U盤的部分引腳連接圖如圖3所示。將TXD引腳接GND,其余引腳懸空,使得CH378被配置為8位并口通信接口。8位并行數據線與單片機的RD口連接,CH378的WR#引腳、RD#引腳、PCS#引腳和A0引腳分別與單片機的RC4~RC1引腳相連,實現8位并口通信接口連接。

  2.4 Flash模塊

  大容量Flash選取了三星公司的NAND Flash K9M-DG08U5M,其內部組織形式為16 G×8 bit,即容量為16 GB,與U盤的存儲容量相當,足以滿足海量數據緩沖所需的空間;供電電壓與FPGA的供電電壓相同,避免了為其單獨設計電源的麻煩;有8位數據引腳(D7~D0)、片選引腳(CS#)、命令鎖存引腳(CLE)、地址鎖存引腳(ALE)、寫控制引腳(WE)、讀控制引腳(RE)、Flash狀態引腳(R/B#)、電源及地引腳等,與FPGA的連接非常方便,只需FPGA分配相應的引腳與Flash連接即可。

3 記錄器軟件設計

  系統的軟件設計主要由FPGA和DSPIC30F6014A兩大主控部分組成,其中采用VHDL語言對FPGA的程序進行編寫,其主要實現串行數據的接收和處理、Flash數據讀寫控制以及與DSPIC30F6014A進行通信等功能;單片機的程序利用C語言進行描述,主要完成對CH378的控制、與FPGA的通信和數據傳輸的功能。

  3.1 FPGA模塊程序設計


008.jpg


  數據在存儲時是按照一定的幀格式進行存儲的,本系統設計的幀格式如表1所示,每一幀數據由4 089 B數據、4 B幀標志和3 B幀計數組成,其中幀標志分別為BEH、90H、數據流標識(第一路數據為11H,第二路數據為22H)和一個固定位00H。幀計數為3個字節表示,依次先為低位后為高位。

004.jpg

  FPGA的主要工作流程圖如圖4所示,FPGA接收來自422總線接口的串行數據,并對兩路數據進行串并轉換以及按照一定的數據格式進行編幀處理,之后將編幀處理的數據存入寫FIFO中,判斷寫FIFO半滿標志位WR_FIFO_HF是否為高電平。若為高電平則開始往Flash中寫入數據,等到寫完一頁數據后,開始檢測單片機的讀數據信號是否有效。若有效,將由Flash數據讀寫控制模塊讀取Flash中的數據,并暫存在讀FIFO,由單片機讀取讀FIFO中的數據。

  3.2 DSPIC30F6014A模塊程序設計


005.jpg

  DSPIC30F6014A程序流程圖如圖5所示。系統上電后,首先單片機復位。然后由單片機向CH378發送硬件連接測試命令CMD_CHECK_EXIST(06H),接著發送數據55H,若硬件連接正常,應由CH378返回數據AAH,否則說明硬件連接不正常或單片機不工作。測試到CH378連接正常后,初始化CH378,并設置工作模式為USB主機方式,然后檢測U盤是否連接,如果U盤成功連接并已檢測到,則對U盤進行初始化。初始化成功后,創建文件,檢測FIFO讀半滿標志位是否為1,若為1則將FPGA的讀FIFO中的數據通過DSPIC30F6014A的控制以字節方式寫入U盤文件,數據讀取完畢后結束操作。

4 系統調試結果及分析

009.jpg

  由于U盤的寫數據速度會受到U盤的質量、單片機的性能等一些因素的影響,因此為了最大程度地提高數據記錄器處理數據的速度,在具體應用之前,對一些性能進行了測試,通過分別往USB2.0和USB3.0的U盤中以字節方式一次性寫入100 MB的數據(其中分別選用單片機的RAM的2 KB、5 KB和7 KB作為數據的緩存區),得到了表2的U盤寫數據測試結果。結果表明,選用RAM為7 KB并結合USB3.0的U盤可以極大限度地提高數據記錄器處理數據的速度。

006.jpg

  實驗及調試過程中,采用以FPGA為控制核心,產生波特率均為460.8 kb/s的422總線串行數據作為模擬數據源。為了便于分析,數據采用遞減的鋸齒波。數據存儲完畢后,通過計算機讀取U盤中的數據,由上位機軟件對文件進行分析和繪圖顯示,圖6為數據波形整體圖,圖7為波形拉伸放大后的波形,從圖6和圖7中可以看出波形穩定,并無明顯丟數現象。

007.jpg

  將讀出的數據在UltraEdit中打開,如圖8所示,并沒有出現數據錯誤并且數據幀格式正確,說明本電路具有可靠的高速數據傳輸性能。

5 結論

  為了滿足目前飛行數據記錄器對數據的大容量和高速存儲的需求,文中提出了一種基于FPGA和DSPIC-30F6014A的數據記錄器設計方法,并對數據寫入U盤的速度進行了測試。結果表明,高速串行數據經過數據記錄器的一系列處理后,最后以并行數據寫入USB3.0 U盤的速度可達到314 KB/s,并且通過上位機分析得知數據存儲可靠,并無數據丟失現象。該設備還具有設備體積小、成本低和便于攜帶等優點,很大程度緩解了數據存儲的壓力,具有很廣闊的應用前景。

參考文獻

  [1] 王偉,費益.民用飛機飛行記錄系統研究[J].電光與控制,2013,20(3):73-74.

  [2] 盧艷軍,牛闖,張曉東.新型通用飛機機載數據記錄儀的研究[J].沈陽航空航天大學學報,2014,31(1):82-83.

  [3] 王中華,郭改枝,王筱凱.基于DSPIC30F處理器的多路數據采集系統的設計[J].內蒙古師范大學學報,2012,41(6):620-621.

  [4] 蔡雪佳,周征翰,伍郁韓.基于USB-Host的大容量數據采集方案研究[J].電子設計工程.2011,19(16):1-3.


此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 精品毛片免费看| 国产大片91精品免费观看男同| 国产麻豆videoxxxx实拍| 国产精选91热在线观看| 国产福利小视频| 国产一区二区精品久久| 免费香蕉依人在线视频久| 亚洲欧美成人一区二区三区 | 在线免费观看韩国a视频| 国产精品欧美一区二区在线看| 国产欧美综合在线| 国产一区二区三区手机在线观看| 免费看男阳茎进女阳道动态图 | 日本二区在线观看| 性xxxxx大片免费视频| 在线中文字幕网| 国产成人精品无码专区| 国产SM主人调教女M视频| 免费v片在线观看品善网| 亚洲日本一区二区三区在线| 久热这里有精品| 久久久久噜噜噜亚洲熟女综合| 一个人看的www在线观看免费| 8888四色奇米在线观看免费看| 香港三日本8A三级少妇三级99 | 2022久久国产精品免费热麻豆| 成人羞羞视频国产| 精品国产国产综合精品| 欧美激情另类自拍| 日本19禁啪啪无遮挡大尺度| 天天av天天翘天天综合网| 国产片91人成在线观看| 全部免费毛片免费播放| 久久综合精品国产二区无码| a级成人毛片久久| 试看60边摸边吃奶边做| 欧美日韩视频免费播放| 性xxxx18免费观看视频| 国产女人18毛片水真多18精品| 亚洲精品电影天堂网| 中文字幕av无码不卡|