• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      高性能海量數(shù)據(jù)存儲(chǔ)模擬器設(shè)計(jì)

      2016-02-23 03:40:46張志永
      關(guān)鍵詞:系統(tǒng)結(jié)構(gòu)譯碼海量

      趙 微,張志永,宗 宇

      (北京時(shí)代民芯科技有限公司,北京 100076)

      高性能海量數(shù)據(jù)存儲(chǔ)模擬器設(shè)計(jì)

      趙 微,張志永,宗 宇

      (北京時(shí)代民芯科技有限公司,北京 100076)

      介紹了一種高速海量數(shù)據(jù)存儲(chǔ)系統(tǒng)的模擬器,即基于NANDFlash陣列的數(shù)據(jù)存儲(chǔ)器模型,該模型采用多通道和多Interleave管理模式,形成以數(shù)據(jù)存儲(chǔ)、傳輸為核心的數(shù)據(jù)存儲(chǔ)SoC平臺(tái)。主要完成對(duì)FTL算法和系統(tǒng)結(jié)構(gòu)的有效性能測(cè)試,目前該模型具有一定的有效性,速度快,穩(wěn)定性高。

      數(shù)據(jù)存儲(chǔ);高性能;多通道;海量

      0 引言

      在社會(huì)高度信息化和大數(shù)據(jù)廣泛應(yīng)用的今天,如何實(shí)現(xiàn)高速采集和海量存儲(chǔ)已經(jīng)成為數(shù)據(jù)存儲(chǔ)管理的研究熱點(diǎn),傳統(tǒng)數(shù)據(jù)存儲(chǔ)器已經(jīng)不能夠滿足高速存儲(chǔ)的需求。Flash作為一種半導(dǎo)體存儲(chǔ)器,具有體積小、功耗低、重量輕、堅(jiān)固耐用等特點(diǎn),因此被廣泛應(yīng)用于大數(shù)據(jù)存儲(chǔ)中。Flash分為NOR和NAND兩種類型[1],NAND相比NOR具有存儲(chǔ)密度大、寫入和擦除速度快、功耗更低、芯片引腳兼容性更好等優(yōu)點(diǎn),缺點(diǎn)是存儲(chǔ)容量小、無(wú)效塊、管理復(fù)雜,使控制管理SoC電路的系統(tǒng)結(jié)構(gòu)復(fù)雜。

      在軍事和航空航天領(lǐng)域,F(xiàn)lash經(jīng)常被用作衛(wèi)星數(shù)據(jù)存儲(chǔ)器、遙感數(shù)據(jù)記錄儀、衛(wèi)星機(jī)載微存儲(chǔ)器等。面對(duì)星載高性能數(shù)據(jù)存儲(chǔ)器對(duì)大容量、高速度的要求,以及Flash芯片型號(hào)的差異、硬件資源和成本等不同因素的存在,使系統(tǒng)資源分配和系統(tǒng)結(jié)構(gòu)評(píng)估困難,因此本文重點(diǎn)研究突破高性能海量數(shù)據(jù)存儲(chǔ)系統(tǒng)中涉及的關(guān)鍵管理算法和技術(shù),并基于此用C++語(yǔ)言編寫完成Flash存儲(chǔ)管理軟件模擬器,該模擬器對(duì)各個(gè)模塊以及相關(guān)參數(shù)建立有效模型,對(duì)數(shù)據(jù)存儲(chǔ)系統(tǒng)的復(fù)雜性、可行性以及系統(tǒng)性能進(jìn)行有效評(píng)估,為真正的高性能海量存儲(chǔ)系統(tǒng)提供可靠技術(shù)基礎(chǔ)。

      1 模擬器涉及的關(guān)鍵技術(shù)

      1.1 多通道技術(shù)

      本模型采用多通道技術(shù),即同時(shí)支持多個(gè)通道并行傳輸,通過(guò)拓寬FlashI/O的位數(shù)實(shí)現(xiàn)數(shù)據(jù)宏觀上的并行操作,由4片8位Flash芯片組成32位寬的Flash子模塊,使Flash芯片在邏輯上是連續(xù)的,共用相同的控制信號(hào),包括片選信號(hào)、讀寫信號(hào)、芯片內(nèi)部地址等。該技術(shù)使數(shù)據(jù)吞吐量提高4倍、8倍甚至16倍。

      1.2 多級(jí)Interleave級(jí)技術(shù)

      多級(jí)Interleave技術(shù)讓多個(gè)Flash芯片流水線式交替工作。在Flash芯片加載命令、地址和數(shù)據(jù)之后,芯片開始自動(dòng)編程,將載入到頁(yè)寄存器的數(shù)據(jù)寫入內(nèi)部存儲(chǔ)單元,最后進(jìn)行數(shù)據(jù)檢測(cè),如果正確,繼續(xù)加載數(shù)據(jù),如果不正確,則重新編程。本模型采用多級(jí)Interleave設(shè)計(jì),在時(shí)間上實(shí)現(xiàn)了復(fù)用,以避免Flash芯片由于自動(dòng)加載時(shí)間過(guò)長(zhǎng)而導(dǎo)致系統(tǒng)性能下降,有效提高存儲(chǔ)速率和存儲(chǔ)容量。

      1.3 編碼與解碼

      為了保證數(shù)據(jù)的完整性和可靠性,同時(shí)降低電路面積,本模型采用了一種伴隨式-錢搜索混合結(jié)構(gòu)的ECC算法[2]。經(jīng)過(guò)測(cè)試表明,該ECC編碼電路通過(guò)104個(gè)校驗(yàn)比特可以糾正碼組中任意8位隨機(jī)錯(cuò)誤并且運(yùn)行可靠,ECC編碼是保證MLCFlash數(shù)據(jù)可靠性的關(guān)鍵,對(duì)于2KB/Page的MLCFlash,該算法可以滿足32位隨機(jī)錯(cuò)誤的糾正。

      圖2 Flash陣列結(jié)構(gòu)圖

      1.4FTL管理算法

      閃存轉(zhuǎn)換層(FTL)使Flash被上層文件系統(tǒng)訪問(wèn)時(shí)就像一個(gè)普通的磁盤存儲(chǔ)器,將其模擬成標(biāo)準(zhǔn)的塊設(shè)備以屏蔽其寫前擦除的特點(diǎn),實(shí)現(xiàn)文件系統(tǒng)對(duì)Flash的讀、寫、擦除操作。目前經(jīng)典FTL算法的映射策略有很多,本文采用的是改進(jìn)的S-FTL算法[3],基于分組映射技術(shù)的FTL算法,充分減小系統(tǒng)的RAM系統(tǒng)消耗,均衡實(shí)現(xiàn)對(duì)各擦除單元(塊)的擦除操作,從而延長(zhǎng)Flash的使用壽命。

      2 模擬器涉及的關(guān)鍵技術(shù)

      基于多通道技術(shù)和多級(jí)Interleave技術(shù)對(duì)系統(tǒng)模型進(jìn)行設(shè)計(jì),使用C++軟件語(yǔ)言完成系統(tǒng)模型的編寫。

      2.1 模型的整體框架

      模擬器的運(yùn)行是按照事件驅(qū)動(dòng)來(lái)推動(dòng)各個(gè)子模塊的運(yùn)行,相對(duì)于時(shí)間驅(qū)動(dòng),事件驅(qū)動(dòng)使存儲(chǔ)模型的仿真時(shí)間大大縮短并且流程更清晰明確。整體結(jié)構(gòu)如圖1所示。該模型由MCU、Buffer、Interleave、Trace、Encoder、Decoder、Dnlink、Uplink8個(gè)獨(dú)立子模塊組成,其中Trace為輸入激勵(lì)模塊,Buffer為緩沖區(qū)模塊,Interleave為Flash芯片模塊,Encoder和Decoder分別為編碼和譯碼模塊,各個(gè)模塊之間相互獨(dú)立并且相互關(guān)聯(lián)。

      圖1 NAND存儲(chǔ)系統(tǒng)的設(shè)計(jì)框架

      2.2Flash存儲(chǔ)優(yōu)先級(jí)

      采用多通道和多級(jí)Interleave結(jié)構(gòu)設(shè)計(jì),NAND的連接框圖如圖2所示。不同通道的NAND結(jié)構(gòu)完全相同,每級(jí)Interleave包括相同個(gè)數(shù)的NAND芯片,所有芯片完全相同且互相獨(dú)立,數(shù)據(jù)最小單位是扇區(qū)(Sector),F(xiàn)lash的最小存儲(chǔ)單位是頁(yè)。

      2.3 編碼與譯碼

      Encoder模塊主要功能是對(duì)每個(gè)數(shù)據(jù)塊(Sector)生成校驗(yàn)碼(Crc),校驗(yàn)碼的位寬通過(guò)變量Crcwidth來(lái)表示,Crcwidth大小主要由糾錯(cuò)位數(shù)和碼長(zhǎng)計(jì)算而得,當(dāng)模擬器寫數(shù)據(jù)時(shí),Encoder模塊將每個(gè)數(shù)據(jù)塊以及校驗(yàn)碼共同寫入緩沖區(qū)中。Encoder模塊工作示意圖如圖3所示。

      圖3 Encoder模塊工作示意圖

      Decoder模塊主要功能是計(jì)算出每個(gè)數(shù)據(jù)塊進(jìn)行解碼,并計(jì)算出譯碼需要的時(shí)鐘周期。譯碼過(guò)程如圖4所示,譯碼由取余迭代、錢搜索和ECC糾錯(cuò)三部分組成,當(dāng)數(shù)據(jù)塊譯碼之后將有效數(shù)據(jù)寫入緩沖區(qū)中。

      圖4 Decoder模塊工作示意圖

      2.4 各模塊的接口

      軟件模型借助系統(tǒng)硬件接口的思想,通過(guò)某些接口變量實(shí)現(xiàn)各個(gè)模塊之間的通信,完成不同模塊之間的相互控制和反饋。各個(gè)模塊之間的參數(shù)接口如圖5所示。整個(gè)模擬器看似一個(gè)硬件系統(tǒng),每個(gè)子模塊都對(duì)各自運(yùn)作的時(shí)鐘進(jìn)行記錄,子模塊通過(guò)事件計(jì)算出需要的時(shí)鐘周期,依次累加。每個(gè)時(shí)間節(jié)點(diǎn)都需要對(duì)參數(shù)狀態(tài)變量進(jìn)行更新。

      2.5MCU控制單元

      MCU模塊作為模型的主要控制單元,對(duì)數(shù)據(jù)的讀寫控制是核心,決定整個(gè)模型的運(yùn)作流程。MCU模塊主要功能是對(duì)其他各個(gè)模塊進(jìn)行初始化和設(shè)置、狀態(tài)監(jiān)控、發(fā)送指令以及中斷處理等,另外內(nèi)嵌FTL算法和均衡損耗等計(jì)算。

      在Flash的讀寫控制中,約定不同通道訪問(wèn)的優(yōu)先級(jí)為channel1>channel2>channel3>…,而每個(gè)通道中Flash的優(yōu)先級(jí)是Flash1>Flash2>Flash3…。

      圖5 軟件模型中不同模塊之間的接口實(shí)現(xiàn)

      2.5.1 讀控制

      (1)系統(tǒng)上電以后,MCU向各個(gè)通道的Flash芯片發(fā)送讀指令和讀地址,其發(fā)送順序與優(yōu)先級(jí)順序一致,F(xiàn)lash接收到命令后準(zhǔn)備需要讀出的數(shù)據(jù)。

      (2)在某一個(gè)通道中,一旦某一片F(xiàn)lash進(jìn)入數(shù)據(jù)準(zhǔn)備好狀態(tài),則Dnlink總線暫停MCU指令的傳輸,開始譯碼數(shù)據(jù)并存儲(chǔ)至Buffer的空閑頁(yè)中。

      (3)一旦Buffer中有頁(yè)滿狀態(tài),向MCU申請(qǐng)中斷,開啟Uplink總線向主機(jī)讀出數(shù)據(jù)。

      2.5.2 寫控制

      (1)系統(tǒng)上電以后,Trace模塊作為輸入激勵(lì),開始向Buffer輸入數(shù)據(jù)直到所有數(shù)據(jù)都傳輸完畢。同時(shí)MCU依次向各個(gè)通道的Flash發(fā)送寫指令和地址,直到Buffer出現(xiàn)頁(yè)滿中斷或者所有的Flash處于等待數(shù)據(jù)的狀態(tài)。

      (2)一旦Buffer中有頁(yè)滿狀態(tài),向MCU申請(qǐng)滿中斷,如果對(duì)應(yīng)Flash寫入指令結(jié)束,則開始啟動(dòng)數(shù)據(jù)傳輸,否則等待繼續(xù)等待指令。

      (3)Buffer向Flash傳輸一個(gè)整頁(yè)之后,相應(yīng)頁(yè)為空,繼續(xù)從Trace模塊接收新的數(shù)據(jù)。

      3 仿真驗(yàn)證

      根據(jù)理論硬件系統(tǒng),設(shè)定模型的各個(gè)參數(shù):Decoder和Flash的工作頻率為40MHz,其他模塊的工作頻率為80MHz,扇區(qū)大小為1 024B,F(xiàn)lash頁(yè)大小為4 096B,Uplink的數(shù)據(jù)帶寬為64bit,Dnlink的數(shù)據(jù)帶寬為8bit。Flash的命令和地址以及編程、讀、擦除需要的時(shí)間均根據(jù)對(duì)應(yīng)的芯片手冊(cè)進(jìn)行參數(shù)設(shè)置。本次仿真中Flash的頁(yè)編程時(shí)間為200μs,頁(yè)讀取時(shí)間為25ns,塊擦除時(shí)間為1 500μs。模擬器的工作流程如圖6所示。

      圖6 主函數(shù)流程圖

      為了獲得最優(yōu)的系統(tǒng)結(jié)構(gòu),對(duì)1 024個(gè)扇區(qū)數(shù)據(jù)進(jìn)行讀寫測(cè)試,針對(duì)系統(tǒng)通道(channel)數(shù)量、Interleave級(jí)別數(shù)量以及Buffer中的頁(yè)(page)數(shù)量進(jìn)行仿真測(cè)試,對(duì)應(yīng)結(jié)果分別如圖7、圖8、圖9所示。其中左側(cè)為讀測(cè)試結(jié)果,右側(cè)為寫測(cè)試結(jié)果。

      圖7中,在Page頁(yè)數(shù)和Interleave級(jí)別不變的情況下,通道個(gè)數(shù)對(duì)讀、寫速度均有很大的影響,隨著通道個(gè)數(shù)的增多,讀寫速度越來(lái)越快,呈現(xiàn)線性增長(zhǎng)的趨勢(shì)。但代價(jià)是通道個(gè)數(shù)越多對(duì)緩沖區(qū)的空間需求就越大。圖8中,無(wú)論通道個(gè)數(shù)為多少,Interleave級(jí)別對(duì)讀速度影響很小,對(duì)寫速度來(lái)說(shuō)有一個(gè)飽和值,當(dāng)Interleave級(jí)別達(dá)到3之后,寫速度保持峰值不變。圖9中,緩沖頁(yè)個(gè)數(shù)對(duì)讀和寫速度的影響均很小。

      圖7 通道個(gè)數(shù)對(duì)速度的影響

      圖8 Interleave級(jí)別個(gè)數(shù)對(duì)速度的影響

      圖9 Buffer中Page個(gè)數(shù)對(duì)速度的影響

      因此,在配置系統(tǒng)結(jié)構(gòu)時(shí)應(yīng)使通道個(gè)數(shù)盡量取大,但是應(yīng)該避免出現(xiàn)只有一個(gè)緩沖頁(yè)或者Interleave級(jí)別大于3的情況。從結(jié)果看出,本模擬器能夠?yàn)镕TL算法和ECC算法進(jìn)行評(píng)估,而且為優(yōu)化系統(tǒng)資源和系統(tǒng)結(jié)構(gòu)提供可靠的技術(shù)支持。

      4 結(jié)論

      本文介紹了一種大容量、高數(shù)據(jù)吞吐率的數(shù)據(jù)存儲(chǔ)模擬器,以系統(tǒng)結(jié)構(gòu)和系統(tǒng)性能作為主要出發(fā)點(diǎn),對(duì)系統(tǒng)中涉及的關(guān)鍵技術(shù)和算法進(jìn)行重點(diǎn)分析。多次仿真結(jié)果表明該模擬器能真實(shí)有效地對(duì)資源優(yōu)化配置和性能評(píng)估提供可靠的技術(shù)指導(dǎo),下一步需要對(duì)模擬器繼續(xù)優(yōu)化完善,例如增加數(shù)據(jù)壓縮等功能。

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

      [2] 張志永,宗宇,褚曉斌.航天計(jì)算機(jī)與微電子專業(yè)組學(xué)術(shù)會(huì)議經(jīng)文集[C].北京:中國(guó)航天科技集團(tuán)公司科技委,2013.

      [3] 張志永,宗宇,謝俊玲,等.航天計(jì)算機(jī)與微電子專業(yè)組學(xué)術(shù)會(huì)議論文集[C].北京:中國(guó)航天科技集團(tuán)公司科技委,2014:326-331.

      Designofhighperformancemassdatastoragesimulator

      ZhaoWei,ZhangZhiyong,ZongYu

      (MXTronicsCorporation,Beijing100076,China)

      Thepaperintroducesadesignschemeofhigh-speedmassdatastorage,whichisbasedonFlasharray.Themodelusesthemuti-channelandmulti-interleavemanagementmode.Itformsasystemonachip(SoC)platformofdatastoragewhichtakesdatastorageanddatatransmissionascore.MaintagetistocompletetheperformancetestofFlashtranslationlayer(FTL)algorithmandstoragesystemstructure.Nowthismodelisprovedtobevalid,fastspeedandhighstability.

      datastorage;highperformance;multiplechannel;massstorage

      TP

      ADOI: 10.19358/j.issn.1674- 7720.2016.22.012

      趙微,張志永,宗宇. 高性能海量數(shù)據(jù)存儲(chǔ)模擬器設(shè)計(jì)[J].微型機(jī)與應(yīng)用,2016,35(22):43-46.

      2016-05-22)

      趙微(1988-),通信作者,女,碩士,工程師,主要研究方向:嵌入式系統(tǒng)。E-mail:zhaowei0425@126.com。

      張志永(1981-),男,碩士,高級(jí)工程師,主要研究方向:嵌入式系統(tǒng)。

      宗宇(1972-),男,本科,研究員,主要研究方向:IC設(shè)計(jì)。

      猜你喜歡
      系統(tǒng)結(jié)構(gòu)譯碼海量
      一種傅里葉域海量數(shù)據(jù)高速譜聚類方法
      基于校正搜索寬度的極化碼譯碼算法研究
      海量快遞垃圾正在“圍城”——“綠色快遞”勢(shì)在必行
      一個(gè)圖形所蘊(yùn)含的“海量”巧題
      從霍爾的編碼譯碼理論看彈幕的譯碼
      新聞傳播(2016年3期)2016-07-12 12:55:27
      中波廣播發(fā)射系統(tǒng)結(jié)構(gòu)及日常維護(hù)技術(shù)研究
      考慮助力器動(dòng)力學(xué)的舵系統(tǒng)結(jié)構(gòu)非線性顫振特性分析
      LDPC 碼改進(jìn)高速譯碼算法
      基于PLC控制的局部通風(fēng)機(jī)變頻調(diào)速系統(tǒng)結(jié)構(gòu)分析
      河南科技(2014年11期)2014-02-27 14:10:02
      炭素煅燒回轉(zhuǎn)窯三次風(fēng)系統(tǒng)結(jié)構(gòu)的改進(jìn)
      河南科技(2014年8期)2014-02-27 14:07:49
      绿春县| 卢湾区| 开阳县| 高淳县| 漾濞| 新宾| 鸡西市| 栾川县| 娄底市| 新龙县| 金平| 基隆市| 嫩江县| 张家港市| 荥阳市| 紫金县| 永胜县| 云南省| 共和县| 紫金县| 河北省| 普格县| 江川县| 梧州市| 新化县| 定远县| 秦皇岛市| 马关县| 武胜县| 内乡县| 仪征市| 新竹县| 临夏市| 保康县| 射阳县| 华坪县| 天祝| 乐清市| 剑川县| 大庆市| 丰都县|