亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于FPGA和NAND Flash的嵌入式存儲(chǔ)系統(tǒng)設(shè)計(jì)

        2016-04-14 06:56:46
        電子科技 2016年3期
        關(guān)鍵詞:存儲(chǔ)系統(tǒng)

        吳 凡

        (成都蓉威電子技術(shù)開發(fā)公司 開發(fā)部,四川 成都 610091)

        ?

        基于FPGA和NAND Flash的嵌入式存儲(chǔ)系統(tǒng)設(shè)計(jì)

        吳凡

        (成都蓉威電子技術(shù)開發(fā)公司 開發(fā)部,四川 成都610091)

        摘要為了有效解決惡劣工作環(huán)境下對(duì)體積有特殊要求的數(shù)據(jù)存儲(chǔ)問題,設(shè)計(jì)了基于FPGA和NAND Flash的小尺寸嵌入式存儲(chǔ)系統(tǒng)。系統(tǒng)選用FPGA為控制核心,以NAND Flash作為存儲(chǔ)介質(zhì),采用LVDS接口存儲(chǔ)和回放數(shù)據(jù),通過以千兆網(wǎng)與計(jì)算機(jī)通信,以文件方式管理數(shù)據(jù),并采用壞塊管理和ECC技術(shù)保證數(shù)據(jù)完整性。實(shí)測(cè)表明,該系統(tǒng)具有高帶寬、體積小等特點(diǎn),同時(shí)具有實(shí)時(shí)存儲(chǔ)、回放、加載、卸載和管理功能,并可在惡劣環(huán)境下穩(wěn)定工作。

        關(guān)鍵詞存儲(chǔ)系統(tǒng);FPGA;NAND Flash;文件管理;千兆網(wǎng)

        Design of Embedded Storage Device Based on FPGA and NAND Flash

        WU Fan

        (Development Department,Chengdu Electronic Technology Development Company,Chengdu 610091,China)

        AbstractA small size embedded storage system based on FPGA and NAND Flash is designed for special data storage requirements in size under harsh working conditions.The system selects FPGA as the control core,NAND flash as the storage medium,and LVDS interface for data storages and replay.Communicates with computers are performed via gigabit network,and data are managed as files with data integrity guaranteed by bad-block management and ECC technology.The experimental results show that the system has the characteristics of high bandwidth and small size,is capable of real-time storage,replay,loading,unloading and management,and can work steadily in the harsh environment.

        Keywordsstorage system;FPGA;NAND Flash;file management;gigabit network

        數(shù)據(jù)采集系統(tǒng)在進(jìn)行數(shù)據(jù)采集和信號(hào)處理的同時(shí),通常需要將關(guān)鍵數(shù)據(jù)存儲(chǔ)下來用于監(jiān)控設(shè)備的工作狀態(tài),遇到問題后能通過這些數(shù)據(jù)復(fù)原當(dāng)時(shí)的工作場(chǎng)景,為分析問題和解決問題提供依據(jù)。通常需要存儲(chǔ)系統(tǒng)具有容量大、速度快、以文件形式管理數(shù)據(jù)、體積小等特點(diǎn)。根據(jù)這一需求,本文提供了一套完整的數(shù)據(jù)存儲(chǔ)、加載、卸載和回放軟硬件方案;本方案具有體積小、存儲(chǔ)速度快、自動(dòng)化程度高和工作溫度廣等優(yōu)點(diǎn)。系統(tǒng)以Xilinx公司Virtex-5系列FPGA為主控芯片,Micron公司的NAND Flash芯片MT29F64G08作為文件存儲(chǔ)介質(zhì),Marvell公司的千兆網(wǎng)物理層控制器芯片88E1111作為網(wǎng)絡(luò)橋接芯片與計(jì)算機(jī)進(jìn)行通信。

        1系統(tǒng)設(shè)計(jì)思路

        系統(tǒng)采用FPGA夾層卡(FPGA Mezzanine Card,FMC)結(jié)構(gòu),長(zhǎng)不超過80 mm,寬不超過70 mm,高不超過15 mm,采用8片NAND Flash,總存儲(chǔ)容量為64 GB,采用TSOP封裝,方便利用FMC插座背面的空間,存儲(chǔ)數(shù)據(jù)接口和回放數(shù)據(jù)接口均采用LVDS接口。

        系統(tǒng)以1片F(xiàn)PGA作為控制核心,LVDS接口控制、千兆網(wǎng)接口控制、NAND Flash控制(壞塊管理、ECC和損耗平衡)和文件管理都在FPGA中完成。系統(tǒng)的設(shè)計(jì)功能為:(1)存儲(chǔ)。接收前端信號(hào)采集設(shè)備的輸入數(shù)據(jù),自動(dòng)或在主控軟件控制下按照文件方式將數(shù)據(jù)寫入NAND Flash;(2)卸載。通過千兆網(wǎng)和PC機(jī)連接,接收主控命令,卸載指定文件;(3)加載。通過千兆網(wǎng)和PC機(jī)連接,從PC機(jī)加載文件;(4)回放。將主控指定的文件從NAND Flash中讀出,回放到信號(hào)處理設(shè)備,模擬數(shù)據(jù)存儲(chǔ)場(chǎng)景,用來分析定位系統(tǒng)問題。

        2硬件設(shè)計(jì)

        系統(tǒng)硬件原理框圖,如圖1所示。

        圖1 硬件原理框圖

        其中LVDS是存儲(chǔ)數(shù)據(jù)和回放數(shù)據(jù)的接口,千兆網(wǎng)是和計(jì)算機(jī)連接的接口,接收主控指令,加卸載文件。FPGA芯片選用Xilinx公司的XC5VLX50T,含有28 800個(gè)觸發(fā)器,28 800個(gè)6輸入查找表,60個(gè)36 kB塊存儲(chǔ)器,4個(gè)千兆網(wǎng)介質(zhì)訪問控制(Media Access Control,MAC)硬核,360個(gè)IO管腳[1]。

        千兆以太網(wǎng)的MAC層由FPGA內(nèi)部的MAC硬核實(shí)現(xiàn)[2],不占用邏輯資源,PHY芯片選用Marvell公司的88E1111,可支持1000BASE-T、100BASE-TX、

        10BASE-T,支持GMII、RGMII、SGMII、TBI、RTBI等接口,通過MDIO接口由FPGA進(jìn)行配置。

        NAND Flash選用Micron公司的MT29F64G08AJABA,單片容量為8 GB。方案使用的Flash芯片內(nèi)部分為兩片,每一片通過芯片的片選信號(hào)使能,每一片為一個(gè)target,每個(gè)target有兩個(gè)邏輯單元(Logical Unit,LUN),每個(gè)LUN有兩個(gè)PLANE,每個(gè)PLANE有2 048個(gè)塊,每一塊中有128頁,每一頁可以存儲(chǔ)4 096 Byte數(shù)據(jù)[3]。8片NAND Flash組成陣列,同時(shí)進(jìn)行讀、寫或擦除操作。

        選用Cypress公司的非易失性隨機(jī)訪問存儲(chǔ)器(Non-Volatile Random Access Memory,NVRAM)芯片CY14B104M存儲(chǔ)文件信息表,具有掉電保存功能。系統(tǒng)加電工作時(shí),NVRAM的讀寫速度與普通SRAM相當(dāng),NVRAM檢測(cè)到系統(tǒng)電壓低于門限電壓時(shí),通過板上電容供電將信息存入內(nèi)部非易失性存儲(chǔ)單元。

        3FPGA設(shè)計(jì)

        系統(tǒng)FPGA包含LVDS接口控制、千兆網(wǎng)接口控制、文件處理和NAND Flash控制4個(gè)模塊,文件處理是FPGA的控制中心,如圖2所示。

        圖2 FPGA原理框圖

        3.1LVDS接口控制

        存儲(chǔ)數(shù)據(jù)和回放數(shù)據(jù)通過LVDS接口進(jìn)入FPGA,分別使用8路數(shù)據(jù)、1路使能和1路時(shí)鐘,時(shí)鐘頻率125 MHz,雙沿傳輸方式,接口數(shù)據(jù)速率為250 MB·s-1。LVDS接口控制通過IBUFDS和OBUFDS原語完成LVDS差分信號(hào)和單端信號(hào)的轉(zhuǎn)換,通過IDDR和ODDR原語完成DDR信號(hào)和SDR信號(hào)的轉(zhuǎn)換。接收存儲(chǔ)數(shù)據(jù)時(shí)通過IDELAY原語調(diào)整數(shù)據(jù)線和時(shí)鐘線的延時(shí)值以進(jìn)行穩(wěn)定采樣[4-5],通過存儲(chǔ)FIFO送給文件管理模塊,回放數(shù)據(jù)從回放FIFO讀出,轉(zhuǎn)換為DDR信號(hào)后通過LVDS接口輸出。

        3.2千兆網(wǎng)接口控制

        千兆網(wǎng)接口控制模塊在系統(tǒng)復(fù)位后配置FPGA內(nèi)部MAC硬核和外部PHY芯片的寄存器,采用UDP協(xié)議和計(jì)算機(jī)主控軟件通信。接收時(shí)解析UDP包,將主控計(jì)算機(jī)命令封裝成為帶包頭和包尾標(biāo)識(shí)的數(shù)據(jù)包通過接收FIFO發(fā)送到文件管理模塊。當(dāng)判斷發(fā)送FIFO非空時(shí),從發(fā)送FIFO中讀出數(shù)據(jù)包,填入MAC地址、網(wǎng)絡(luò)類型等數(shù)據(jù),構(gòu)造UDP包,寫入MAC硬核,發(fā)送到計(jì)算機(jī)。

        3.3文件管理

        文件管理模塊有兩個(gè)主要功能:命令解析和文件管理。

        (1)命令解析。命令解析采用主狀態(tài)機(jī)加多個(gè)從狀態(tài)機(jī)方式,完成命令解析、命令執(zhí)行和命令回應(yīng)等過程。主要命令有上報(bào)狀態(tài)、查詢文件列表、文件加載、文件卸載和文件回放等,其命令流程如圖3所示。

        圖3 命令解析流程圖

        (2)文件管理。文件管理主要通過在NVRAM中維護(hù)文件信息表來管理NAND Flash中的數(shù)據(jù)。文件信息表分為系統(tǒng)信息區(qū)和文件信息區(qū)兩部分,如圖4所示。

        圖4 文件信息表

        系統(tǒng)信息區(qū)存放存儲(chǔ)系統(tǒng)的系統(tǒng)信息,包括存儲(chǔ)總?cè)萘?、已用容量、已有文件?shù)和已用地址等。在文件信息區(qū)中按照文件序號(hào)存放各個(gè)文件的詳細(xì)信息,包括文件有效標(biāo)志、文件名、文件創(chuàng)建時(shí)間、文件起始地址、文件大小、文件關(guān)閉時(shí)間和文件結(jié)束地址等。系統(tǒng)信息區(qū)占用64 Byte,每個(gè)文件占用64 Byte,NVRAM大小為512 kB,可以存放8 000個(gè)以上文件。文件地址是邏輯地址,單位為64 kB,需通過Flash控制模塊映射為物理地址。

        3.4NAND Flash控制

        NAND Flash控制模塊主要功能有控制調(diào)度、壞塊管理[6]、地址映射[7]、數(shù)據(jù)緩存、錯(cuò)誤檢查和糾正(Error Correcting Code,ECC)校驗(yàn)[8-9]以及接口時(shí)序控制,功能框圖如圖5所示。

        圖5 NAND Flash控制模塊原理框圖

        單片NAND Flash一頁大小為4 kB,一頁的平均編程時(shí)間為230 μs,由此計(jì)算單片NAND Flash的寫入速度只能達(dá)到17.8 MB·s-1,為提高速度,系統(tǒng)采用以下3種技術(shù):

        (1)多Plane同時(shí)寫。因?yàn)镹AND Flash每個(gè)LUN含有2個(gè)Plane,每個(gè)Plane有獨(dú)立的數(shù)據(jù)寄存器,所以可一次傳輸2頁數(shù)據(jù)(Plane0和Plane1),然后下發(fā)命令同時(shí)編程,相當(dāng)于寫Flash速度提升為單Plane寫的兩倍,如圖6所示;

        圖6 NAND flash結(jié)構(gòu)

        (2)Target流水技術(shù),由于一片NAND Flash含有兩個(gè)Target,共用一路數(shù)據(jù)通道,但每個(gè)Target均有獨(dú)立的片選信號(hào)CS#和準(zhǔn)備好信號(hào)R/B#,因此可先傳輸Target1的2頁數(shù)據(jù),Target1開始編程,然后傳輸Target2的兩頁數(shù)據(jù),Target2開始編程,再切換回Target1,如此流水操作。傳輸Target1數(shù)據(jù)耗時(shí)約為224 μs,與Target2的編程時(shí)間230 μs相當(dāng),相當(dāng)于通過Target流水技術(shù)基本消除了數(shù)據(jù)傳輸時(shí)間,如圖7所示;

        圖7 Target流水技術(shù)

        (3)并行總線處理技術(shù)[10],同時(shí)對(duì)8片F(xiàn)lash進(jìn)行讀寫,相當(dāng)于寫速度提升為單片F(xiàn)lash寫速度的8倍。

        4系統(tǒng)測(cè)試和數(shù)據(jù)分析

        4.1文件加卸載測(cè)試

        從計(jì)算機(jī)選擇一個(gè)文件test.ld加載到存儲(chǔ)系統(tǒng),加載速度超過80 MB·s-1,加載完成后,選擇該文件卸載到計(jì)算機(jī),卸載速度超過40 MB·s-1,通過Beyond Compare軟件比較卸載后的文件和原始文件,兩者完全一致,說明文件加載和卸載功能正確,如圖8所示。

        圖8 文件加卸載測(cè)試

        4.2文件存儲(chǔ)回放測(cè)試

        存儲(chǔ)設(shè)備進(jìn)入存儲(chǔ)模式后,測(cè)試設(shè)備的FPGA邏輯產(chǎn)生存儲(chǔ)測(cè)試數(shù)據(jù),通過ChipScope監(jiān)控測(cè)試設(shè)備,存儲(chǔ)測(cè)試數(shù)據(jù)以18 Byte為1個(gè)數(shù)據(jù)包,最后4 Byte為從零開始逐一遞增的計(jì)數(shù)器,每個(gè)數(shù)據(jù)包加一,停止存儲(chǔ)后,從文件列表中觀測(cè)可知:存儲(chǔ)文件名為“store002”,存儲(chǔ)起始時(shí)間為“2013年5月3日7點(diǎn)59分57秒”,存儲(chǔ)結(jié)束時(shí)間為“2013年5月3日8點(diǎn)0分11秒”,存儲(chǔ)文件長(zhǎng)度為3 591 492 kB,計(jì)算后可得存儲(chǔ)速度為233.8 MB·s-1,如圖9所示。

        圖9 文件存儲(chǔ)測(cè)試

        選擇文件“store002”進(jìn)行回放,存儲(chǔ)系統(tǒng)讀取該文件數(shù)據(jù),通過回放接口輸出到測(cè)試設(shè)備。測(cè)試設(shè)備的FPGA邏輯根據(jù)測(cè)試樣式產(chǎn)生本地標(biāo)準(zhǔn)數(shù)據(jù),與回放數(shù)據(jù)進(jìn)行比對(duì),并將比對(duì)結(jié)果上報(bào)主控軟件?;胤磐瓿珊笥^測(cè)輸出狀態(tài)窗口,回放錯(cuò)誤計(jì)數(shù)為0,說明文件存儲(chǔ)和回放功能正確,如圖10所示。

        圖10 文件回放測(cè)試

        5結(jié)束語

        本文介紹了嵌入式存儲(chǔ)系統(tǒng)基于FPGA技術(shù)和NAND Flash芯片構(gòu)建,采用文件方式管理數(shù)據(jù)。通過在某型系統(tǒng)中實(shí)用表明,該系統(tǒng)體積小巧、使用方便、存儲(chǔ)速度快,可在-40~+70 ℃溫度下長(zhǎng)時(shí)間穩(wěn)定工作,能有效解決惡劣工作環(huán)境下對(duì)體積有苛刻要求的數(shù)據(jù)存儲(chǔ)問題,并可用于車載和機(jī)載數(shù)據(jù)存儲(chǔ)場(chǎng)合,且具備較高的實(shí)用價(jià)值。

        參考文獻(xiàn)

        [1]Xilinx Corporation.Virtex-5 FPGA user guide[M].USA:Xilinx Corporation,2012.

        [2]Xilinx Corporation.Virtex-5 FPGA embedded tri-Mode ethernet MAC user guide[M].USA:Xilinx Corporation,2011.

        [3]Micron Corporation.NAND flash memory MT29F64G08AJABA[M].USA:Micron Corporation,2009.

        [4]李大鵬,李雯,王曉華.基于FPGA的高速LVDS接口的實(shí)現(xiàn)[J].航空計(jì)算技術(shù),2012,42(5):115-118.

        [5]張小軍,廖風(fēng)強(qiáng),王錄濤,等.多通道高速串行LVDS信號(hào)解串器設(shè)計(jì)[J].電子測(cè)量技術(shù),2013,36(4):63-67.

        [6]張勝勇,高世杰,吳志勇,等.基于FPGA的NAND Flash壞塊處理方法[J].計(jì)算機(jī)工程,2010,36(6):239-243.

        [7]陸林燕,王魯靜,鄭正奇.NAND Flash編程實(shí)現(xiàn)研究分析[J].計(jì)算機(jī)技術(shù)與發(fā)展,2008,18(3):118-124.

        [8]邢開宇,曹曉曼,方火能.基于FPGA和NAND Flash的存儲(chǔ)器ECC設(shè)計(jì)與實(shí)現(xiàn)[J].電子科技,2012,25(10):70-73.

        [9]呂小微.基于FPGA的NAND Flash ECC校驗(yàn)[J].電子科技,2010,24(6):34-37.

        [10]朱知博.基于NAND Flash的高速大容量存儲(chǔ)系統(tǒng)設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2011,34(8):170-173.

        中圖分類號(hào)TP316.85

        文獻(xiàn)標(biāo)識(shí)碼A

        文章編號(hào)1007-7820(2016)03-097-06

        doi:10.16180/j.cnki.issn1007-7820.2016.03.025

        作者簡(jiǎn)介:吳凡(1981—),男,碩士,工程師。研究方向:嵌入式存儲(chǔ)系統(tǒng)。

        收稿日期:2015- 07- 27

        猜你喜歡
        存儲(chǔ)系統(tǒng)
        分布式存儲(chǔ)系統(tǒng)在企業(yè)檔案管理中的應(yīng)用
        哈爾濱軸承(2020年2期)2020-11-06 09:22:36
        天河超算存儲(chǔ)系統(tǒng)在美創(chuàng)佳績(jī)
        華為震撼發(fā)布新一代OceanStor 18000 V3系列高端存儲(chǔ)系統(tǒng)
        一種基于STM32的具有斷電保護(hù)機(jī)制的采集存儲(chǔ)系統(tǒng)設(shè)計(jì)
        国产激情综合五月久久| 亚洲黄色电影| 国产 中文 制服丝袜 另类| 无码av专区丝袜专区| 精品国产日韩亚洲一区在线| 久久婷婷五月综合色高清| 边啃奶头边躁狠狠躁| 综合五月网| 日本久久一级二级三级| 国产自拍精品视频免费| 久久国产精品99精品国产| 日韩视频第二页| 中文字幕精品人妻av在线| 精品在线视频在线视频在线视频 | 亚洲av成人片在线观看| 国产亚洲精久久久久久无码| 亚洲一区二区情侣| 久久综合另类激情人妖| 国产精品久线在线观看| 黄色毛片在线看| 极品少妇被后入内射视| 日产一区二区三区免费看| 欧美性猛交xxxx乱大交3| 中文 国产 无码免费| 久久综合九色综合久久久| 久久精品国产99国产精品澳门| 亚洲国产av导航第一福利网| 国内成人精品亚洲日本语音| 亚洲综合国产精品一区二区| 国产精品国产精品国产专区不卡| 国产精品麻花传媒二三区别| 日韩一区二区三区中文字幕| av中国av一区二区三区av| 国产激情电影综合在线看| 亚洲av美女在线播放啊| 白色月光免费观看完整版| 亚洲午夜成人精品无码色欲| 国产乱子伦精品无码码专区| 午夜男女视频一区二区三区| 国精产品一区一区三区有限在线| 午夜三级a三级三点|