国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      資料儲存型閃存的數(shù)據(jù)更新方法及裝置、存儲設(shè)備的制作方法

      文檔序號:6581320閱讀:237來源:國知局
      專利名稱:資料儲存型閃存的數(shù)據(jù)更新方法及裝置、存儲設(shè)備的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及資料儲存型閃存(NAND Flash),特別涉及一種資料儲存型閃存的數(shù)據(jù) 更新方法及裝置、存儲設(shè)備。
      背景技術(shù)
      隨著U盤、數(shù)碼相機、mp3音樂播放器等移動設(shè)備的廣泛應(yīng)用,閃存(FLASH)存儲 器已經(jīng)逐步取代其它半導(dǎo)體存儲元件,成為嵌入式系統(tǒng)中主要數(shù)據(jù)和程序的載體。NAND FLASH是一種可在線多次擦除的非易失性存儲器,其結(jié)構(gòu)提供了極高的單元密度,可以達到 數(shù)據(jù)的高密度存儲,并且寫入和擦除的速度也很快,所以NAND FLASH是高密度數(shù)據(jù)存儲的 理想解決方案。 和磁盤類似,NAND Flash讀寫數(shù)據(jù)的基本粒度為頁(page)。此外,F(xiàn)lash不允許數(shù) 據(jù)的直接覆蓋寫,必須首先擦除舊有數(shù)據(jù)才能寫入新的,而擦除的粒度為塊(block),通常 一個塊包含有64個頁。NAND Flash的寫入機制不像其它的FLASH器件,NAND Flash要求 在寫入數(shù)據(jù)時,首先必須進行數(shù)據(jù)的擦除。因此我們在寫數(shù)據(jù)的時候,先把將要被寫入的數(shù) 據(jù)塊的內(nèi)容讀出到塊緩存,然后再把要寫入NAND Flash的數(shù)據(jù)以頁為單位的形式寫入塊緩 存(Block Buffer)中的對應(yīng)地址。接著把以前存放數(shù)據(jù)的塊進行擦除操作,最后把更新的 數(shù)據(jù)寫到NAND Flash去。經(jīng)過這一系列的操作,實現(xiàn)了 NAND Flash數(shù)據(jù)的邏輯寫入。NAND Flash還有一種有操作,叫做copyback,當(dāng)某個頁的數(shù)據(jù)需要被復(fù)制到新的位置時,只需將 其讀取到塊緩存中,然后根據(jù)接收到的目標(biāo)地址將該頁的數(shù)據(jù)寫入到NAND Flash上新的位 置。而一般情況下NAND數(shù)據(jù)的寫入地址并不連續(xù)(通常情況下NAND Flash的數(shù)據(jù)結(jié)構(gòu)包 括文件分配表(FAT, File Allocation Table)、文件目錄表(FDT, FileDirectory Table) 以及數(shù)據(jù)(DATA)區(qū),三種數(shù)據(jù)結(jié)構(gòu)分別存儲FAT、 FDT以及DATA數(shù)據(jù),圖1示出了現(xiàn)有的 NAND Flash寫操作的具體流程 步驟S10,將舊塊BOLCKA的上部分?jǐn)?shù)據(jù)復(fù)制(copy)到新塊BLOCKA'中;
      步驟Sll,將從外部接收的對舊塊BLOCKA的更新數(shù)據(jù)寫入到新塊BLOCKA'中;
      步驟S12,保存當(dāng)前存儲位置; 步驟S13,如果下次接收的數(shù)據(jù)的存儲地址與當(dāng)前保存地址連續(xù),接著保存位置進 行存儲;如果數(shù)據(jù)地址不連續(xù),將舊塊BOLCKA的下部分?jǐn)?shù)據(jù)copy到新塊BLOCKA'中;后重 復(fù)執(zhí)行步驟S10-S13。 由上述的流程可知,現(xiàn)有技術(shù)中由于NAND Flash接收數(shù)據(jù)的寫地址隨時發(fā)生變 化,使每次從USB接口接收到數(shù)據(jù)需對NAND Flash進行更新時,寫操作都需要先經(jīng)歷從舊 塊到新塊的copy操作之后,才能向新塊寫入更新后的數(shù)據(jù),增加了對NAND Flash進行寫與 擦除的操作的次數(shù),減少了 NAND Flash的使用壽命。

      發(fā)明內(nèi)容
      本發(fā)明的目的為提供一種資料儲存型閃存的數(shù)據(jù)更新方法及裝置、存儲設(shè)備,可
      4以減少對NAND Flash進行寫與擦除的操作的次數(shù)。 本發(fā)明提供一種資料儲存型閃存的數(shù)據(jù)更新方法,包括步驟 接收更新數(shù)據(jù); 判斷所述更新數(shù)據(jù)需寫入的地址是否與前一次寫操作的存儲地址連續(xù); 如果所述更新數(shù)據(jù)需寫入的地址與前一次寫操作的存儲地址連續(xù),緊接所述存儲
      地址寫入所述更新數(shù)據(jù); 如果所述更新數(shù)據(jù)需寫入的地址與前一次寫操作的存儲地址不連續(xù),判斷所述更 新數(shù)據(jù)的長度是否大于預(yù)設(shè)值;如果所述更新數(shù)據(jù)的長度大于所述預(yù)設(shè)值,將前一次寫操 作所執(zhí)行塊中的下半部分以及上半部分?jǐn)?shù)據(jù)復(fù)制到所述更新數(shù)據(jù)需寫入的新塊中,將所述 更新數(shù)據(jù)寫入所述新塊;如果所述更新數(shù)據(jù)的長度小于或等于所述預(yù)設(shè)值,將所述更新數(shù) 據(jù)寫入資料儲存型閃存中用于暫存數(shù)據(jù)的緩存塊,所述緩存塊與至少一個邏輯塊對應(yīng),所 述緩存塊所包括的頁與所述邏輯塊所包括的頁對應(yīng)。 優(yōu)選的,所述將所述更新數(shù)據(jù)寫入資料儲存型閃存中用于暫存數(shù)據(jù)的緩存塊具體 包括步驟 為所述更新數(shù)據(jù)需寫入的新塊分配緩存塊;
      將所述更新數(shù)據(jù)寫入所述緩存塊。
      優(yōu)選的,為所述更新數(shù)據(jù)需寫入的新塊分配緩存塊前進一步包括
      判斷是否有與所述新快對應(yīng)的緩存塊; 如果沒有與所述新快對應(yīng)的緩存塊,執(zhí)行所述為所述更新數(shù)據(jù)需寫入的新塊分配 緩存塊的步驟; 如果有與所述新快對應(yīng)的緩存塊,將所述更新數(shù)據(jù)寫入所述與所述新快對應(yīng)的緩 存塊。 優(yōu)選的,如果有與所述新快對應(yīng)的緩存塊,將所述更新數(shù)據(jù)寫入所述與所述新快 對應(yīng)的緩存塊前進一步包括 判斷所述與所述新快對應(yīng)的緩存塊是否有足夠的空間; 如果有足夠的空間,執(zhí)行所述將所述更新數(shù)據(jù)寫入所述與所述新快對應(yīng)的緩存塊 的步驟; 如果沒有足夠的空間,選擇一個緩存塊進行回收,回收后為所述新快分配新緩存 塊,將所述更新數(shù)據(jù)寫入所述新緩存塊。 優(yōu)選的,所述為所述更新數(shù)據(jù)需寫入的新塊分配緩存塊具體包括步驟
      判斷是否有未使用的緩存塊; 如果有未使用的緩存塊,將所述更新數(shù)據(jù)寫入所述未使用的緩存塊; 如果沒有未使用的緩存塊,選擇一個緩存塊進行回收,回收后為所述新快分配新
      緩存塊,將所述更新數(shù)據(jù)寫入所述新緩存塊。 優(yōu)選的,所述選擇一個緩存塊進行回收具體包括步驟
      判斷是否有長時間未使用的緩存塊; 如果有長時間未使用的緩存塊,對所述長時間未使用的緩存塊進行回收。
      優(yōu)選的,如果沒有長時間未使用的緩存塊,該方法還包括
      獲取各個緩存塊的使用情況;
      根據(jù)所述各個緩存塊的使用情況選擇一個緩存塊并回收。 優(yōu)選的,所述緩存塊的使用情況包括 緩存塊的使用頁數(shù)、對應(yīng)關(guān)系、對應(yīng)塊數(shù)。 本發(fā)明提供一種資料儲存型閃存的數(shù)據(jù)更新裝置,包括 接收單元,用于接收更新數(shù)據(jù); 判斷單元,用于判斷所述接收單元接收的更新數(shù)據(jù)需寫入的地址是否與前一次寫 操作的存儲地址連續(xù);如果所述更新數(shù)據(jù)需寫入的地址與前一次寫操作的存儲地址不連 續(xù),判斷所述更新數(shù)據(jù)的長度是否大于預(yù)設(shè)值; 寫單元,用于在所述判斷單元判斷更新數(shù)據(jù)需寫入的地址與前一次寫操作的存儲 地址連續(xù)時,緊接所述存儲地址寫入所述更新數(shù)據(jù);在所述判斷單元判斷更新數(shù)據(jù)的長度 大于所述預(yù)設(shè)值是,將前一次寫操作所執(zhí)行塊中的下半部分以及上半部分?jǐn)?shù)據(jù)復(fù)制到所述 更新數(shù)據(jù)需寫入的新塊中,將所述更新數(shù)據(jù)寫入所述新塊;在所述判斷單元判斷所述更新 數(shù)據(jù)的長度小于或等于所述預(yù)設(shè)值,將所述更新數(shù)據(jù)寫入資料儲存型閃存中用于暫存數(shù)據(jù) 的緩存塊,所述緩存塊與至少一個邏輯塊對應(yīng),所述緩存塊所包括的頁與所述邏輯塊所包 括的頁對應(yīng)。 優(yōu)選的,所述寫單元包括 分配單元,用于為所述更新數(shù)據(jù)需寫入的新塊分配緩存塊; 寫操作單元,用于將所述更新數(shù)據(jù)寫入所述分配單元分配的緩存塊。 優(yōu)選的,所述分配單元包括 緩存塊回收單元,用于在沒有未使用的緩存塊和與所述更新數(shù)據(jù)所需寫入的新快 對應(yīng)的緩存塊沒有足夠的空間時,選擇一個緩存塊進行回收; 緩存塊分配單元,用于在所述緩存塊回收單元選擇一個緩存塊進行回收后為所述 新快分配新緩存塊。 本發(fā)明提供一種存儲設(shè)備,包括資料儲存型閃存和本發(fā)明提供的資料儲存型閃存 的數(shù)據(jù)更新裝置。 本發(fā)明所述瀏覽器歷史記錄的整理方法、裝置以及瀏覽器,在更新數(shù)據(jù)小于預(yù)設(shè) 值時,可以將更新數(shù)據(jù)寫入NAND Flash中用于暫存數(shù)據(jù)的Cache塊,從而在更新數(shù)據(jù)小于 預(yù)設(shè)值時,可以減少對NAND Flash進行寫與擦除的操作的次數(shù),提高NAND Flash的使用壽


      圖1是現(xiàn)有技術(shù)中NAND Flash的數(shù)據(jù)更新方法流程示意圖; 圖2是本發(fā)明NAND Flash的數(shù)據(jù)更新方法的流程示意圖; 圖3是本發(fā)明Cache塊與Logic塊關(guān)系示意圖; 圖4是本發(fā)明NAND Flash的數(shù)據(jù)更新裝置實施例一的結(jié)構(gòu)示意圖; 圖5是本發(fā)明NAND Flash的數(shù)據(jù)更新裝置實施例二的結(jié)構(gòu)示意圖; 圖6是本發(fā)明NAND Flash的數(shù)據(jù)更新裝置實施例三的結(jié)構(gòu)示意圖。 本發(fā)明目的的實現(xiàn)、功能特點及優(yōu)點將結(jié)合實施例,參照附圖做進一步說明。
      具體實施例方式
      本發(fā)明提供了NAND Flash的數(shù)據(jù)更新方法及裝置、存儲設(shè)備,可以減少對NAND
      Flash進行寫與擦除的操作的次數(shù),從而提高NAND Flash的使用壽命。 先介紹本發(fā)明提供的NAND Flash的數(shù)據(jù)更新方法,圖2描述了 NANDFlash的數(shù)據(jù)
      更新方法實施例一的流程,包括 步驟s21、接收更新數(shù)據(jù); 可以通過通用串行總線(USB Universal Serial Bus)接口或其他接口接收更新 數(shù)據(jù); 步驟s22、判斷更新數(shù)據(jù)需寫入的地址是否與前一次寫操作的存儲地址連續(xù);如 果更新數(shù)據(jù)需寫入的地址與前一次寫操作的存儲地址連續(xù),進入步驟s23 ;如果更新數(shù)據(jù) 需寫入的地址與前一次寫操作的存儲地址不連續(xù),進入步驟s24 ;
      步驟s23、緊接存儲地址寫入更新數(shù)據(jù); 緊接存儲地址寫入更新數(shù)據(jù)后,保存寫入更新數(shù)據(jù)后的存儲地址,等待下一次更 新數(shù)據(jù); 步驟s24、判斷更新數(shù)據(jù)的長度是否大于預(yù)設(shè)值;如果更新數(shù)據(jù)的長度大于預(yù)設(shè) 值,進入s25 ;如果更新數(shù)據(jù)的長度小于或等于預(yù)設(shè)值,進入s26 ; 預(yù)設(shè)值可以根據(jù)不同的nand flash的規(guī)格進行設(shè)置,例如可以設(shè)置為0x10。
      步驟s25、將前一次寫操作所執(zhí)行塊中的下半部分以及上半部分?jǐn)?shù)據(jù)復(fù)制到更新 數(shù)據(jù)需寫入的新塊中,將更新數(shù)據(jù)寫入新塊; 步驟s26、將更新數(shù)據(jù)寫入NAND Flash中用于暫存數(shù)據(jù)的緩存(Cache)塊。
      在本發(fā)明的一個實施例中,步驟s26具體可以包括為更新數(shù)據(jù)需寫入的新塊分 配Cache塊;將更新數(shù)據(jù)寫入Cache塊。 將更新數(shù)據(jù)寫入Cache塊后,恢復(fù)保存位置的存儲地址,,等待下一次更新數(shù)據(jù);
      其中,在為更新數(shù)據(jù)需寫入的新塊分配Cache塊前可以進一步包括判斷是否有 與新塊對應(yīng)的Cache塊;如果沒有與新塊對應(yīng)的Cache塊,才執(zhí)行為更新數(shù)據(jù)需寫入的新塊 分配Cache塊的步驟;如果有與新塊對應(yīng)的Cache塊,且與新塊對應(yīng)的Cache塊有足夠的空 間,才將更新數(shù)據(jù)寫入與新塊對應(yīng)的Cache塊,否則需要選擇一個Cache塊進行回收,回收 后為新塊分配新Cache塊,然后將更新數(shù)據(jù)寫入新Cache塊。 其中,為更新數(shù)據(jù)需寫入的新塊分配Cache塊具體包括步驟判斷是否有未使用 的Cache塊;如果有未使用的Cache塊,將則更新數(shù)據(jù)寫入未使用的Cache塊;如果沒有未 使用的Cache塊,選擇一個Cache塊進行回收,回收后為新塊分配新Cache塊,將更新數(shù)據(jù) 寫入新Cache塊。 從上可知,本實施例在更新數(shù)據(jù)小于預(yù)設(shè)值時,可以將更新數(shù)據(jù)寫入NAND Flash 中用于暫存數(shù)據(jù)的Cache塊,從而在更新數(shù)據(jù)小于預(yù)設(shè)值時,可以減少對NAND Flash進行 寫與擦除的操作的次數(shù),提高NAND Flash的使用壽命。 其中,本發(fā)明實施例中Cache塊與至少一個邏輯塊對應(yīng),Cache塊所包括的頁與 邏輯塊所包括的頁對應(yīng),本發(fā)明提供的一種緩存塊與邏輯(Logic)塊的對應(yīng)關(guān)系如圖3所 示Cache塊與Logic塊A和Logic塊B對應(yīng),Logic塊A包括A塊頁1和A塊頁30,Logic塊B包括B塊頁1、B塊頁2和B塊頁3 ;Logic塊A和Logic塊B所包括的頁與Cache 塊所包括的頁對應(yīng)。本來寫的數(shù)據(jù)應(yīng)該寫在Logic塊A和Logic塊B當(dāng)中,但是引入Cache 塊管理后寫小數(shù)據(jù)實際寫入Cache塊中,本來寫的數(shù)據(jù)應(yīng)該寫在LogicB塊中,實際寫在 Cache塊中。 為了對Cache進行管理,需要限制一個Cache塊最大能記錄Logic塊,在Cache塊 與Logic塊的對應(yīng)關(guān)系不夠時,需要回收Logic塊A?;厥盏倪^程如下,Logic塊A與Cache 塊中屬于Logic塊A的內(nèi)容合并到一個新Logic塊Al,回收后,Cache塊中對Logic塊A中 頁的對應(yīng)關(guān)系是無效的,所以可以不管理Cache塊中對應(yīng)Logic塊A的部分,因為在邏輯上 Logic塊A的頁已經(jīng)回收到了 Logic塊A1中,即在Cache塊物理不回收,形成邏輯上回收而 物理上不回收,Cache塊中未使用的頁可以接著分配給其它的Logic塊繼續(xù)使用;只有當(dāng)用 完了個整個Cache塊的所有頁時,需要對Cache塊中對應(yīng)的所有Logic塊進行回收后,才做 物理上的擦除回收Cache塊所包括的頁。從而減少Logic塊需要回收的操作的次數(shù)。
      本發(fā)明實施例中,可以采用如下準(zhǔn)則選擇一個緩存塊進行回收優(yōu)先選擇長時間 未使用的緩存塊,其中多長時間可以回收可以根據(jù)需要進行設(shè)置。在沒有長時間未使用的 緩存塊時,則獲取各個Cache塊的使用情況后,根據(jù)所述各個Cache塊的使用情況選擇一個 Cache塊并回收,具體可以獲取各個緩存塊的使用頁數(shù)、對應(yīng)關(guān)系、對應(yīng)塊數(shù)等信息。
      再介紹本發(fā)明實施例提供的NAND Flash的數(shù)據(jù)更新裝置,圖4描述了 NAND Flash
      的數(shù)據(jù)更新裝置實施例一的結(jié)構(gòu),包括
      接收單元401,用于接收更新數(shù)據(jù); 判斷單元402,用于判斷接收單元401接收的更新數(shù)據(jù)需寫入的地址是否與前一 次寫操作的存儲地址連續(xù);如果更新數(shù)據(jù)需寫入的地址與前一次寫操作的存儲地址不連 續(xù),判斷更新數(shù)據(jù)的長度是否大于預(yù)設(shè)值; 寫單元403,用于在判斷單元402判斷更新數(shù)據(jù)需寫入的地址與前一次寫操作的 存儲地址連續(xù)時,緊接存儲地址寫入更新數(shù)據(jù);在判斷單元402判斷更新數(shù)據(jù)的長度大于 預(yù)設(shè)值時,將前一次寫操作所執(zhí)行塊中的下半部分以及上半部分?jǐn)?shù)據(jù)復(fù)制到更新數(shù)據(jù)需寫 入的新塊中,將更新數(shù)據(jù)寫入新塊;在判斷單元402判斷更新數(shù)據(jù)的長度小于或等于預(yù)設(shè) 值時,將更新數(shù)據(jù)寫入NANDFlash中用于暫存數(shù)據(jù)的Cache塊,Cache塊與至少一個邏輯塊 對應(yīng),Cache塊所包括的頁與邏輯塊所包括的頁對應(yīng)。 從上可知,本實施例在更新數(shù)據(jù)小于預(yù)設(shè)值時,可以將更新數(shù)據(jù)寫入NAND Flash 中用于暫存數(shù)據(jù)的Cache塊,從而在更新數(shù)據(jù)小于預(yù)設(shè)值時,可以減少對NAND Flash進行 寫與擦除的操作的次數(shù),提高NAND Flash的使用壽命。 圖5描述了本發(fā)明數(shù)據(jù)更新裝置實施例二的結(jié)構(gòu),與數(shù)據(jù)更新裝置實施例一的不 同之處在于寫單元403包括分配單元4031,用于為更新數(shù)據(jù)需寫入的新塊分配Cache塊; 寫操作單元4032,用于將更新數(shù)據(jù)寫入分配單元4031分配的Cache塊。
      圖6描述了本發(fā)明數(shù)據(jù)更新裝置實施例三的結(jié)構(gòu),與數(shù)據(jù)更新裝置實施例二的不 同之處在于分配單元4031包括Cache塊回收單元40311,用于在沒有未使用的Cache塊和 與更新數(shù)據(jù)所需寫入的新塊對應(yīng)的Cache塊沒有足夠的空間時,選擇一個Cache塊進行回 收;Cache塊分配單元40312,用于在Cache i央回收單元40311選擇一個Cache i央進行回收 后為新塊分配新Cache塊。
      本發(fā)明還提供了存儲裝置,該存儲裝置包括NAND Flash和本發(fā)明提供的NAND Flash的數(shù)據(jù)更新裝置。 以上所述僅為本發(fā)明的優(yōu)選實施例,并非因此限制本發(fā)明的專利范圍,凡是利用 本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運用在其他相關(guān) 的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護范圍內(nèi)。
      權(quán)利要求
      一種資料儲存型閃存的數(shù)據(jù)更新方法,其特征在于,包括步驟接收更新數(shù)據(jù);判斷所述更新數(shù)據(jù)需寫入的地址是否與前一次寫操作的存儲地址連續(xù);如果所述更新數(shù)據(jù)需寫入的地址與前一次寫操作的存儲地址連續(xù),緊接所述存儲地址寫入所述更新數(shù)據(jù);如果所述更新數(shù)據(jù)需寫入的地址與前一次寫操作的存儲地址不連續(xù),判斷所述更新數(shù)據(jù)的長度是否大于預(yù)設(shè)值;如果所述更新數(shù)據(jù)的長度大于所述預(yù)設(shè)值,將前一次寫操作所執(zhí)行塊中的下半部分以及上半部分?jǐn)?shù)據(jù)復(fù)制到所述更新數(shù)據(jù)需寫入的新塊中,將所述更新數(shù)據(jù)寫入所述新塊;如果所述更新數(shù)據(jù)的長度小于或等于所述預(yù)設(shè)值,將所述更新數(shù)據(jù)寫入資料儲存型閃存中用于暫存數(shù)據(jù)的緩存塊,所述緩存塊與至少一個邏輯塊對應(yīng),所述緩存塊所包括的頁與所述邏輯塊所包括的頁對應(yīng)。
      2. 如權(quán)利要求1所述的資料儲存型閃存的數(shù)據(jù)更新方法,其特征在于,所述將所述更 新數(shù)據(jù)寫入資料儲存型閃存中用于暫存數(shù)據(jù)的緩存塊具體包括步驟為所述更新數(shù)據(jù)需寫入的新塊分配緩存塊; 將所述更新數(shù)據(jù)寫入所述緩存塊。
      3. 如權(quán)利要求2所述的資料儲存型閃存的數(shù)據(jù)更新方法,其特征在于,為所述更新數(shù) 據(jù)需寫入的新塊分配緩存塊前進一步包括判斷是否有與所述新快對應(yīng)的緩存塊;如果沒有與所述新快對應(yīng)的緩存塊,執(zhí)行所述為所述更新數(shù)據(jù)需寫入的新塊分配緩存 塊的步驟;如果有與所述新快對應(yīng)的緩存塊,將所述更新數(shù)據(jù)寫入所述與所述新快對應(yīng)的緩存塊。
      4. 如權(quán)利要求3所述的資料儲存型閃存的數(shù)據(jù)更新方法,其特征在于,如果有與所述 新快對應(yīng)的緩存塊,將所述更新數(shù)據(jù)寫入所述與所述新快對應(yīng)的緩存塊前進一步包括判斷所述與所述新快對應(yīng)的緩存塊是否有足夠的空間;如果有足夠的空間,執(zhí)行所述將所述更新數(shù)據(jù)寫入所述與所述新快對應(yīng)的緩存塊的步驟;如果沒有足夠的空間,選擇一個緩存塊進行回收,回收后為所述新快分配新緩存塊,將 所述更新數(shù)據(jù)寫入所述新緩存塊。
      5. 如權(quán)利要求2所述的資料儲存型閃存的數(shù)據(jù)更新方法,其特征在于,所述為所述更新數(shù)據(jù)需寫入的新塊分配緩存塊具體包括步驟 判斷是否有未使用的緩存塊;如果有未使用的緩存塊,將所述更新數(shù)據(jù)寫入所述未使用的緩存塊; 如果沒有未使用的緩存塊,選擇一個緩存塊進行回收,回收后為所述新快分配新緩存 塊,將所述更新數(shù)據(jù)寫入所述新緩存塊。
      6. 如權(quán)利要求4或5所述的資料儲存型閃存的數(shù)據(jù)更新方法,其特征在于,所述選擇一 個緩存塊進行回收具體包括步驟判斷是否有長時間未使用的緩存塊;如果有長時間未使用的緩存塊,對所述長時間未使用的緩存塊進行回收。
      7. 如權(quán)利要求6所述的資料儲存型閃存的數(shù)據(jù)更新方法,其特征在于,如果沒有長時間未使用的緩存塊,該方法還包括 獲取各個緩存塊的使用情況;根據(jù)所述各個緩存塊的使用情況選擇一個緩存塊并回收。
      8. 如權(quán)利要求7所述的資料儲存型閃存的數(shù)據(jù)更新方法,其特征在于,所述緩存塊的 使用情況包括緩存塊的使用頁數(shù)、對應(yīng)關(guān)系、對應(yīng)塊數(shù)。
      9. 一種資料儲存型閃存的數(shù)據(jù)更新裝置,其特征在于,包括 接收單元,用于接收更新數(shù)據(jù);判斷單元,用于判斷所述接收單元接收的更新數(shù)據(jù)需寫入的地址是否與前一次寫操作 的存儲地址連續(xù);如果所述更新數(shù)據(jù)需寫入的地址與前一次寫操作的存儲地址不連續(xù),判 斷所述更新數(shù)據(jù)的長度是否大于預(yù)設(shè)值;寫單元,用于在所述判斷單元判斷更新數(shù)據(jù)需寫入的地址與前一次寫操作的存儲地址 連續(xù)時,緊接所述存儲地址寫入所述更新數(shù)據(jù);在所述判斷單元判斷更新數(shù)據(jù)的長度大于 所述預(yù)設(shè)值是,將前一次寫操作所執(zhí)行塊中的下半部分以及上半部分?jǐn)?shù)據(jù)復(fù)制到所述更新 數(shù)據(jù)需寫入的新塊中,將所述更新數(shù)據(jù)寫入所述新塊;在所述判斷單元判斷所述更新數(shù)據(jù) 的長度小于或等于所述預(yù)設(shè)值,將所述更新數(shù)據(jù)寫入資料儲存型閃存中用于暫存數(shù)據(jù)的緩 存塊,所述緩存塊與至少一個邏輯塊對應(yīng),所述緩存塊所包括的頁與所述邏輯塊所包括的 頁對應(yīng)。
      10. 如權(quán)利要求9所述的資料儲存型閃存的數(shù)據(jù)更新裝置,其特征在于,所述寫單元包括分配單元,用于為所述更新數(shù)據(jù)需寫入的新塊分配緩存塊; 寫操作單元,用于將所述更新數(shù)據(jù)寫入所述分配單元分配的緩存塊。
      11. 如權(quán)利要求io所述的資料儲存型閃存的數(shù)據(jù)更新裝置,其特征在于,所述分配單元包括緩存塊回收單元,用于在沒有未使用的緩存塊和與所述更新數(shù)據(jù)所需寫入的新快對應(yīng) 的緩存塊沒有足夠的空間時,選擇一個緩存塊進行回收;緩存塊分配單元,用于在所述緩存塊回收單元選擇一個緩存塊進行回收后為所述新快 分配新緩存塊。
      12. —種存儲設(shè)備,包括資料儲存型閃存,其特征在于,包括如權(quán)利要求9至11任一所 述的資料儲存型閃存的數(shù)據(jù)更新裝置。
      全文摘要
      本發(fā)明涉及NAND Flash,公開了資料儲存型閃存的數(shù)據(jù)更新方法及裝置、存儲設(shè)備。所述資料儲存型閃存的數(shù)據(jù)更新方法包括步驟接收更新數(shù)據(jù);如果所述更新數(shù)據(jù)需寫入的地址與前一次寫操作的存儲地址連續(xù),緊接所述存儲地址寫入所述更新數(shù)據(jù);反之判斷所述更新數(shù)據(jù)的長度是否大于預(yù)設(shè)值;如果所述更新數(shù)據(jù)的長度大于所述預(yù)設(shè)值,將前一次寫操作所執(zhí)行塊中的下半部分以及上半部分?jǐn)?shù)據(jù)復(fù)制到所述更新數(shù)據(jù)需寫入的新塊中,將所述更新數(shù)據(jù)寫入所述新塊;反之將所述更新數(shù)據(jù)寫入資料儲存型閃存中用于暫存數(shù)據(jù)的緩存塊,所述緩存塊與至少一個邏輯塊對應(yīng),所述緩存塊所包括的頁與所述邏輯塊所包括的頁對應(yīng)??梢詼p少對NAND Flash進行寫與擦除的操作的次數(shù)。
      文檔編號G06F12/08GK101794257SQ20091018925
      公開日2010年8月4日 申請日期2009年12月22日 優(yōu)先權(quán)日2009年12月22日
      發(fā)明者張彥偉, 成曉華, 李發(fā)生, 羅勝 申請人:深圳市硅格半導(dǎo)體有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1