新四季網

一種非易失性存儲器數據的讀寫控制方法及系統的製作方法

2023-10-06 17:59:19 2

專利名稱:一種非易失性存儲器數據的讀寫控制方法及系統的製作方法
技術領域:
本發明屬於數據存儲技術領域,尤其涉及一種非易失性存儲器數據的讀寫控制方
法及系統。
背景技術:
非易失性存儲器NAND Flash已經廣泛應用於移動存儲設備中,例如U盤,SD卡, SSD固態硬碟等,NAND Flash可以對稱為Block的存儲器單元塊進行擦寫和再編程。任何 NAND Flash器件的寫入操作只能在空或已擦除成空的單元內進行,所以為了保證寫入數據 的正確性,在進行寫入操作之前必須先執行擦除的操作。 目前,基於NAND Flash存儲介質的文件系統中要寫入一段數據時,首先要頻繁的 修改它的系統文件,例如普遍使用的微軟Windows作業系統中的FAT文件系統要寫入一個 文件,必須要先修改FAT表和FDT表,而且這部分數據會反覆修改多次後才寫入文件內容數 據。由於NAND Flas本身的特性,不能對同一頁進行重複編程,必須整塊先擦除後再編程 (編程即數據寫入),但是在擦除一個Block時,必須先把Block上的有效的數據保存到新 的(空置Block)地址。 圖1示出了現有技術提供的NAND Flash數據寫入操作過程,假如Block l和 Block 2都為NAND Flash中的一個標準大小的Block,其中,Block l為已有數據存放區域, Block 2為一個空置的區域,現要將數據塊A(大小小於等於一個Block)寫入到Block l中 的邏輯A地址區域(就是數據塊A的大小),在現有技術的NAND Flash晶片中,在A區域的 起始邏輯地址寫入數據時,其操作過程包括 步驟l:找到一個新的空置的Block 2,將Block 1的A區域以外的數據拷貝到 Block 2中相應位置; 步驟2 :將要寫入的數據塊A直接寫到Block 2中的A區域;
步驟3 :擦除Block 1。 在步驟1中,即先拷貝Block 1中的B區域到Block 2中的B區域,再拷貝Block 1的C區域到Block 2的C區域。 這種方法會導致系統文件所在的區域頻繁的擦寫,所帶來的問題就是效率低下, 而且對NAND Flash的磨損較大,影響存儲器的壽命。 根據以上方法所示步驟及圖l,用現有的技術更新Block 1中邏輯地址為A的數據 塊時,在不考慮外面傳輸接口耗時的情況下所耗費的時間T為
T = TK* (M-N) +TW* (M-N) +TW*N+TD 其中M為這個Block的總Page數,N為數據塊A的Page數,TK為讀取一個Page 到RAM的時間,Tw為RAM到Page的編程時間(寫入時間),TD為擦除一個Block所耗的時 間。其中lw遠大於L,所以可以近似的認為
T " TWM-TWN+TWN+TD = TWM+TD
因此,寫入數據塊A的效率比E為
E =寫入數據塊A的時間/T = TWN/ (TWM+TD) 當更新的數據塊A越小時,效率越低,前面所述的FAT表、FDT表、文件內容數據分 別都是一個數據塊A,採用現有的技術,操作用時長,大大降低了系統存儲文件的速度。
綜上所述,現有的NAND Flash數據的讀寫的效率較低,速度慢。

發明內容
本發明實施例的目的在於提供一種非易失性存儲器數據的讀寫控制方法,旨在解 決現有的NAND Flash數據的讀寫的效率較低,速度慢的問題。 本發明實施例是這樣實現的,一種非易失性存儲器數據的讀寫控制方法,所述方 法包括下述步驟 對非易失性存儲器內的有效塊進行區域劃分,所述區域包括至少一個包含固定數 量有效塊的數據區域和一個包含至少兩個有效塊的交換區域;
建立每個區域的邏輯塊和物理塊的對應關係表; 根據塊內頁的冗餘區信息生成所述塊的邏輯頁和物理頁的對應關係表,將所述邏 輯塊和物理塊的對應關係表及塊的邏輯頁和物理頁的對應關係表存儲到私有數據區;
在所述數據區域塊內的空閒頁順序寫入數據塊,或從所述數據區域內的有效頁讀 取數據塊。 所述在所述數據區域塊內的空閒頁寫入或讀出數據塊的步驟之後還包括下述步 驟 在所述數據區域的第N塊寫入新數據塊時,當所述第N塊已寫滿時,則在所述交換
區域申請一個空塊,將所述新數據塊暫時存儲在所述交換區域的所述空塊上。 所述將所述新數據塊暫時存儲在所述交換區域的所述空塊上的步驟之後還包括
下述步驟 當所述交換區域的所述空塊也寫滿時,則向所述交換區域申請一個替換塊,並將
所述第N塊和第N塊所對應的交換塊中的有效數據塊拷貝搬移到所述替換塊。 所述當所述交換區域的所述空塊也寫滿時,則向所述交換區域申請一個替換塊,
並將所述第N塊和第N塊所對應的交換塊中的的有效數據塊拷貝搬移到所述替換塊的步驟
之後,還包括下述步驟 將已擦空的所述第N塊和所述交換區域的空塊添加到所述交換區域的先進先出 隊列。
所述方法還包括下述步驟 當有數據塊的拷貝搬移操作時,更新所述區域的邏輯塊和物理塊的對應關係表;
當有新的數據塊寫入塊的空閒頁時,更新所述塊的邏輯頁和物理頁的對應關係表。 所述在所述數據區域的塊的空閒頁順序寫入數據塊,或從所述數據區域內的有效 頁讀取數據塊的步驟具體包括下述步驟 根據所述數據塊的偏移地址計算所述數據塊所在的區域; 在私有數據區讀取所述區域的邏輯塊和物理塊的對應關係表; 查詢所述邏輯塊和物理塊的對應關係表,確定所述數據塊寫入或讀出的物理塊;
在確定出的物理塊的空閒頁順序寫入數據塊,或者從確定出的物理塊讀取數據 塊。 本發明另一實施例的目的在於提供一種非易失性存儲器數據的讀寫控制系統,所 述系統包括 區域劃分模塊,用於對非易失性存儲器內的有效塊進行區域劃分,所述區域包括 至少一個包含固定數量有效塊的數據區域和一個包含至少兩個有效塊的交換區域; 第一對應關係表建立模塊,用於建立每個區域的邏輯塊和物理塊的對應關係表;
第二對應關係表生成模塊,用於根據塊內頁的冗餘區信息生成所述塊的邏輯頁和 物理頁的對應關係表; 存儲模塊,用於將所述第一對應關係表建立模塊建立的每個區域的邏輯塊和物理 塊的對應關係表及所述第二對應關係表生成模塊生成的塊的邏輯頁和物理頁的對應關係 表存儲到私有數據區;以及 數據塊讀寫模塊,用於在所述數據區域的塊的空閒頁順序寫入數據塊,或從所述
數據區域的有效頁讀出數據塊。
所述系統還包括 數據塊暫時存儲模塊,用於在所述數據區域的第N塊寫入新數據塊時,當所述第N 塊已寫滿時,則在所述交換區域申請一個空塊,將所述新數據塊暫時存儲在所述交換區域 的所述空塊上;以及 數據塊拷貝搬移模塊,用於當所述交換區域的所述空塊也寫滿時,則向所述交換
區域申請一個替換塊,並將所述第N塊的數據塊和第N塊所對應的交換塊中的有效數據塊
拷貝搬移到所述替換塊。
所述數據塊讀寫模塊具體包括 計算模塊,用於根據所述數據塊的偏移地址計算所述數據塊所在的區域; 第一對應關係表讀取模塊,用於在私有數據區讀取所述區域的邏輯塊和物理塊的
對應關係表; 確定模塊,用於查詢所述邏輯塊和物理塊的對應關係表,確定所述數據塊寫入或 讀出的物理塊; 寫數據塊模塊,用於在確定的物理塊的空閒頁順序寫入數據塊;以及
讀數據塊模塊,用於從確定的物理塊的有效頁讀出數據塊。
所述系統還包括 更新模塊,用於更新所述區域的邏輯塊和物理塊的對應關係表或塊的邏輯頁和物 理頁的對應關係表;以及 隊列添加模塊,用於將已擦空的所述第N塊和所述交換區域的空塊添加到所述交 換區域的先進先出隊列。 在本發明實施例中,在非易失性存儲器上以固定數量個有效塊Block為一個數據 區域進行劃分,並確定其中一個區域為交換區域;建立每個塊中邏輯頁和物理頁的對照表 和生成塊的邏輯頁和物理頁的對應關係表,將所述邏輯塊和物理塊的對應關係表及塊的邏 輯頁和物理頁的對應關係表存儲到私有數據區;在所述數據區域塊內的空閒頁寫入或讀出 數據塊,在有限的內存空間下,提高NAND Flash數據的讀寫速度和效率。


圖1是現有技術提供的非易失性存儲器數據的讀寫控制方法的實現流程圖; 圖2是本發明第一實施例提供的非易失性存儲器數據的讀寫控制方法的實現流 程圖; 圖3是本發明第二實施例提供的非易失性存儲器數據的讀寫控制方法的實現流 程圖; 圖4是本發明實施例提供的在數據區域的塊的空閒頁寫入或讀出數據塊的實現 流程圖; 圖5是本發明實施例提供的非易失性存儲器數據的讀寫控制方法的實現示意圖; 圖6是本發明實施例提供的非易失性存儲器數據的讀寫控制系統的結構框圖; 圖7是本發明實施例提供的數據塊讀寫模塊的結構框圖。
具體實施例方式
為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對 本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,並 不用於限定本發明。 在本發明實施例中,在非易失性存儲器上以固定數量個有效塊Block為一個數據 區域進行劃分,並確定其中一個區域為交換區域;建立每個塊中邏輯頁和物理頁的對照表 和生成塊的邏輯頁和物理頁的對應關係表,將所述邏輯塊和物理塊的對應關係表及塊的邏 輯頁和物理頁的對應關係表存儲到私有數據區;在所述數據區域塊內寫入或讀出數據塊。
圖2是本發明第一實施例提供的非易失性存儲器數據的讀寫控制方法的實現流 程,其具體的步驟如下所述 在步驟S101中,對非易失性存儲器(NAND Flash)內的有效塊進行區域劃分,所述 區域包括至少一個包含固定數量有效塊的數據區域和一個包含至少兩個有效塊的交換區 域。 在本發明實施例中,劃分的區域包括至少一個包含固定數量有效塊的數據區域和 一個包含至少兩個有效塊的交換區域。其中,每一個區域都存在一個對應的邏輯塊和物理 塊的對應關係表,該對應關係表存儲在區域的私有數據區,該邏輯塊和物理塊的對應關係 表的建立可以隨著區域的劃分來動態建立,當使用完成之後,就釋放內存,為建立下一個邏 輯塊和物理塊的對應關係表提供內存空間。 在本發明實施例中,數據區域內的有限塊的個數由NAND Flash控制器的內存空 間確定。數據區域包含固定數量的有效塊,例如每個數據區域可以包含16個有效塊;交換 區域可以包含至少兩個有效塊,越大越有利於全局讀寫平衡,但是NAND FLASH的有效數據 存儲區會相對變小,其中,交換區域用於存放交換塊和替換塊,其邏輯結構是一個先進先出 (First Input First Output, FIFO)隊列。 在步驟S102中,建立每個區域的邏輯塊和物理塊的對應關係表。 在步驟S103中,根據塊內頁的冗餘區信息生成所述塊的邏輯頁和物理頁的對應
關係表,將所述邏輯塊和物理塊的對應關係表及塊的邏輯頁和物理頁的對應關係表存儲到私有數據區。 在本發明實施例中,在對數據區域的塊進行讀寫操作時,根據塊內頁的冗餘區信 息生成所述塊的邏輯頁和物理頁的對應關係表。 當然,在該實施例中,上述塊的邏輯頁和物理頁的對應關係表可以預先建立保存 在塊的某個特定位置,也可以根據對數據區域的塊的讀寫操作時,動態生成,在此不用以限 制本發明。 在本發明實施例中,邏輯頁和物理頁的對應關係表的建立可以通過遍歷數據區域 的每一塊中每一頁的冗餘區信息,可以約定頁冗餘區的第一個字節用於保存其所對應的邏 輯頁地址,以此建表,如果遇到相同的邏輯頁地址,則以其中邏輯地址最大的地址中所存的 物理地址為有效地址。 在步驟S104中,在所述數據區域塊內的空閒頁順序寫入數據塊,或從數據區域的 有效頁讀出數據塊。 在本發明實施例中,通過在塊內的空閒頁順序寫入數據塊,或從數據區域的有效 頁讀出數據塊,提高了數據讀寫效率和速度。 圖3示出了本發明第二實施例提供的非易失性存儲器數據的讀寫控制方法的實 現流程,其具體的步驟如下所述 在步驟S201中,對NAND Flash內的有效塊(Block)進行區域劃分。 在本發明實施例中,該對NAND Flash內的有效塊(Block)的區域劃分,包括數據
區域和交換區域的劃分,也包括上述邏輯塊和物理塊的對應關係表及塊的邏輯頁和物理頁
的對應關係表的建立,上述有詳細的描述,在此不再贅述,但不用以限制本發明。 在步驟S202中,在所述數據區域的塊的空閒頁順序寫入數據塊。 在本發明實施例中,在數據區域的空閒頁按照空閒頁的先後順序進行寫數據塊,
其操作過程類似,下述有詳細的步驟描述,在此不再贅述,但不用以限制本發明。 在步驟S203中,在所述數據區域的第N塊寫入新數據塊時,判斷所述第N塊是否
寫滿,是則執行步驟S204,否則繼續執行步驟S202。 在本發明實施例中,上述數據區域的第N塊,不是特指某個數據區域中的第N個有 效塊,是泛指,可以是第一塊,也可以是第N塊,,其中,N為大於等於1的整數,在此不用以 限制本發明。 在步驟S204中,當第N塊已寫滿時,則在所述交換區域申請一個空塊,將所述新數 據塊暫時存儲在所述交換區域的所述空塊上。 在本發明實施例中,當上述某個數據區域的第N塊寫滿時,則在所述交換區域申 請一個空塊,其中,該空塊是根據交換區域的先進先出的原則來申請的。將需要寫入上述某 個數據區域的第N塊的新數據塊暫時寫入所述申請的交換區域的空塊,交換區域的空塊做 暫時存儲數據塊的作用。 在本發明實施例中,作為暫時存儲數據塊的交換區域的空塊,需要更新該空塊的 邏輯頁和物理頁的對應關係表,並且通過標識符來區別該邏輯頁所對應的物理頁是在所述 第N塊還是原本空塊的。 在本發明實施例中,上述將所述新數據塊暫時存儲在所述交換區域的空塊上的過 程實際就是在所述空塊的空閒頁寫入新數據塊的過程,在此不再贅述,但不用以限制本發明。 在步驟S205中,判斷所述交換區域的空塊是否寫滿,是則執行步驟S206,否則繼 續執行步驟S204。 在步驟S206中,當所述交換區域的所述空塊也寫滿時,則向所述交換區域申請一 個替換塊。 在本發明實施例中,當上述交換區域的空塊也寫滿時,可以繼續向交換區域申請 第二個空塊,將寫入所述第N塊的新數據存儲到第二個空塊,其具體的實現流程,類似於上 述步驟,在此不再贅述。 當所述交換區域的空塊也寫滿時,向交換區域申請一個替換塊,所述替換塊也是 空的。 在步驟S207中,將所述第N塊和第N塊所對應的交換塊中的有效數據塊拷貝搬移 到所述替換塊。 在本發明實施例中,申請到替換塊之後,將上述某個數據區域第N塊的數據塊按 照該第N塊的邏輯頁和物理頁的對應關係表,按照邏輯頁的順序,把第N塊和第N塊所對應 的交換塊中的有效數據塊拷貝搬移到所述替換塊,同時更新所述第N塊和第N塊所對應的 交換塊中的有效數據塊的邏輯頁和物理頁的對應關係表。 當拷貝搬移結束後,更新所述第N塊和第N塊所對應的交換塊中的有效數據塊所 在數據區域的邏輯塊和物理塊的對應關係表,將第N塊和第N塊所對應的交換塊中的有效 數據塊的邏輯指針指向替換塊,同時擦除所述第N塊和交換區域的交換塊上的數據塊。
在步驟S208中,將已擦空的所述第N塊和所述交換區域的交換塊添加到所述交換 區域的先進先出隊列。 作為本發明的一個實施例,圖4示出了本發明實施例提供的在所述數據區域的空 閒塊寫入或讀出數據塊的實現流程,其具體步驟如下所述 在步驟S301中,根據所述數據塊的偏移地址計算所述數據塊所在的區域。
在步驟S302中,在私有數據區讀取所述區域的邏輯塊和物理塊的對應關係表。
在步驟S303中,查詢所述邏輯塊和物理塊的對應關係表,確定所述數據塊寫入或 讀出的物理塊。 在步驟S304中,根據所述物理塊,在所述物理塊的空閒頁順序寫入數據塊。
在步驟S305中,從確定的物理塊的有效頁讀出數據塊。 在本發明實施例中,當將數據塊從數據區域的塊中寫入或讀出時,要對塊的邏輯 頁和物理頁的對應關係表進行更新。 作為本發明的另一個具體實施例,圖5示出了本發明實施例提供的將所述第N塊 的數據塊拷貝搬移到所述替換塊的具體實現示意圖,其具體為在NANDFlash上以每16個 有效塊Block為一個數據區域Zone進行劃分;交換區域Zone中的有效塊Block數為大於 等於2的任何數,越大越有利於全局讀寫平衡,但是NAND FLASH的有效數據存儲區會相對 變小。 以下述區域為例進行說明,Zone 0, Zone 1, .為數據區域Zone, Zoneexchange 為交換區域Zone。 假設,現有位於Zone 0的Block 0待操作,因為Zone exchange中的Block為一個FIFO對列,所以,Block 4623作為交換Block, Block 4622作為替換Block,執行拷貝搬 移操作之後,Block 4622替換Block 0成為Zone 0中的新的有效數據Block,Block 4623、 Block 0擦除後進入Zone exchange的FIFO對列; 第二次交換針對Zone l中的Block 35,交換替換之後,Block 4618替換Block 35 進入Zone 1成為新的有效數據Block, Block 4620、 Block 35擦除後進入Zone exchange 的FIFO對列; 當有數據塊讀取時,根據數據塊的起始偏移地址可以計算出該數據塊所在的 Zone,根據該邏輯Block所在Zone的邏輯Block和物理Block的對照表可以得到物理Block 的地址,然後讀取每一個Page的冗餘區信息,建立邏輯Page和物理Page的對照表,然後查 表就可以確定數據塊所在的物理Page地址。 如果Block中的邏輯Page和物理Page的對照表已經保存在某個固定的位置,可 以直接讀取,不需要重新建立。 當多次執行交換、替換操作以後,各個數據Zone中的物理Block已經形成了離散 分布,而且會隨著讀寫次數的增加而離散的更加均勻。以此實現了一種簡單有效的NAND Flash讀寫全局平衡磨損。 在本發明實施例中,在不考慮外部傳輸和內部運算的時間損耗下,現有技術中拷 貝S個數據長度為N個Page的文件所消耗的時間為Tl :
T1 = (TK (M-N) +TW (M-N) +TWN+TD) X S
本發明方法改進後所消耗的時間T2為
T2 = TWNS+TP 其中M為Block的總Page數,N為數據塊A的Page數,TK為讀取一個Page到RAM 的時間,Tw為RAM到Page的編程時間(寫入時間),TD為擦除一個Block所耗的時間,TP表 示當原Block和交換Block都寫滿時,需要進行拷貝搬移時所需要的時間,這個值可以近似 認為是(TKA+TWA+2TD)*(SN/2M) , A為Block中有效Page的總數。
由於L比T"j、 1個數量級以上,所以可以近似的認為
Tl = (TWM-TWN+TWN+TD) S = TWMS+TDS 對比T2可以看出,文件越小,N越小,T2的數據搬移時間也越小,效率也就越高。 相比較,T1與N值相關性不大。 而且採用本方法管理NAND Flash,在更新數據時,不需要頻繁的更新系統文件
FAT、FDT數據區,減少了更新這些系統文件的搬移和擦除時間,大大提高了系統訪問小文件
的速度,所以在拷貝大量小文件的時候,本發明實施例提供的技術方案有很大優勢。 在拷貝大文件的時候,由於地址是連續的,所以不需要做拷貝搬移,所以TP的值幾
乎為零,這時T2和T1基本相同。由於文件系統的特性,在拷貝大文件時也需要頻繁修改
FAT,FDT數據區,這種修改都是以寫小文件方式進行的,所以本發明實施例提供的技術方案
在讀寫大文件時相對於現有技術也有一定的效率優勢。 圖6示出了本發明實施例提供的非易失性存儲器數據的讀寫控制系統的結構框 圖,為了便於說明,圖中僅給出了與本發明實施例相關的部分。 區域劃分模塊11對NAND Flash內的有效塊進行區域劃分,所述區域包括至少一 個包含固定數量有效塊的數據區域和一個包含至少兩個有效塊的交換區域;第一對應關係表建立模塊12建立每個區域的邏輯塊和物理塊的對應關係表;第二對應關係表生成模 塊13根據塊內頁的冗餘區信息生成所述塊的邏輯頁和物理頁的對應關係表;存儲模塊14 將所述第一對應關係表建立模塊12建立的每個區域的邏輯塊和物理塊的對應關係表及所 述第二對應關係表生成模塊13生成的塊的邏輯頁和物理頁的對應關係表存儲到私有數據 區,數據塊讀寫模塊15在所述數據區域的塊的空閒頁順序寫入數據塊,或從數據區域的有 效頁讀出數據塊。 在本發明實施例中,數據區域內的有限塊的個數由NAND Flash控制器的內存空間 確定。 在本發明實施例中,在所述數據區域的第N塊寫入新數據塊時,當所述第N塊已寫 滿時,數據塊暫時存儲模塊16在所述交換區域申請一個空塊,將所述新數據塊暫時存儲在 所述交換區域的所述空塊上;當所述交換區域的所述空塊也寫滿時,數據塊拷貝搬移模塊 17向所述交換區域申請一個替換塊,並將所述第N塊和第N塊所對應的交換塊中的有效數 據塊拷貝搬移到所述替換塊。 在本發明實施例中,當有新的數據塊寫入塊的空閒頁或有數據塊的拷貝搬移操作 時,更新模塊18更新所述區域的邏輯塊和物理塊的對應關係表或塊的邏輯頁和物理頁的 對應關係表。 在本發明實施例中,當數據塊拷貝搬移模塊17向所述交換區域申請一個替換塊, 並將所述第N塊的數據塊拷貝搬移到所述替換塊之後,隊列添加模塊19將已擦空的所述第 N塊和所述交換區域的空塊添加到所述交換區域的先進先出隊列。 作為本發明的一個實施例,如圖7所示,計算模塊151根據所述數據塊的偏移地址 計算所述數據塊所在的區域;第一對應關係表讀取模塊152在私有數據區讀取所述區域的 邏輯塊和物理塊的對應關係表;確定模塊153查詢所述邏輯塊和物理塊的對應關係表,確 定所述數據塊寫入或讀出的物理塊,寫數據塊模塊154在確定的物理塊的空閒頁順序寫入 數據塊;讀數據塊模塊155從確定的物理塊的有效頁讀出數據塊。 在本發明實施例中,在NAND Flash上以固定數量個有效塊Block為一個數據區域 進行劃分,並確定其中一個區域為交換區域;建立每個塊中邏輯頁和物理頁的對照表和生 成塊的邏輯頁和物理頁的對應關係表,將所述邏輯塊和物理塊的對應關係表及塊的邏輯頁 和物理頁的對應關係表存儲到私有數據區;在所述數據區域塊內的空閒頁寫入或讀出數據 塊;當寫滿某個數據區域的第一個塊時,申請一個交換區域的空塊進行數據寫入,當交換區 域的空塊也寫滿時,再申請一個交換區域的替換塊進行數據的拷貝搬移;在有限的內存空 間下,提高NAND Flash數據的讀寫速度和效率,同時,通過建立交換區域的FIFO (先進先出 隊列),實現在數據讀寫過程中和各個數據區域不斷交換塊,實現全局平衡磨損。
以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精 神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發明的保護範圍之內。
權利要求
一種非易失性存儲器數據的讀寫控制方法,其特徵在於,所述方法包括下述步驟對非易失性存儲器內的有效塊進行區域劃分,所述區域包括至少一個包含固定數量有效塊的數據區域和一個包含至少兩個有效塊的交換區域;建立每個區域的邏輯塊和物理塊的對應關係表;根據塊內頁的冗餘區信息生成所述塊的邏輯頁和物理頁的對應關係表,將所述邏輯塊和物理塊的對應關係表及塊的邏輯頁和物理頁的對應關係表存儲到私有數據區;在所述數據區域塊內的空閒頁順序寫入數據塊,或從所述數據區域內的有效頁讀取數據塊。
2. 如權利要求1所述的方法,其特徵在於,所述在所述數據區域塊內的空閒頁寫入或 讀出數據塊的步驟之後還包括下述步驟在所述數據區域的第N塊寫入新數據塊時,當所述第N塊已寫滿時,則在所述交換區域 申請一個空塊,將所述新數據塊暫時存儲在所述交換區域的所述空塊上,其中,N為大於等 於1的整數。
3. 如權利要求2所述的方法,其特徵在於,所述將所述新數據塊暫時存儲在所述交換 區域的所述空塊上的步驟之後還包括下述步驟當所述交換區域的所述空塊也寫滿時,則向所述交換區域申請一個替換塊,並將所述 第N塊和第N塊所對應的交換塊中的有效數據塊拷貝搬移到所述替換塊。
4. 如權利要求3所述的方法,其特徵在於,所述當所述交換區域的所述空塊也寫滿時, 則向所述交換區域申請一個替換塊,並將所述第N塊和第N塊所對應的交換塊中的的有效 數據塊拷貝搬移到所述替換塊的步驟之後,還包括下述步驟將已擦空的所述第N塊和所述交換區域的空塊添加到所述交換區域的先進先出隊列。
5. 如權利要求3所述的方法,其特徵在於,所述方法還包括下述步驟 當有數據塊的拷貝搬移操作時,更新所述區域的邏輯塊和物理塊的對應關係表; 當有新的數據塊寫入塊的空閒頁時,更新所述塊的邏輯頁和物理頁的對應關係表。
6. 如權利要求1所述的方法,其特徵在於,所述在所述數據區域的塊的空閒頁順序寫 入數據塊,或從所述數據區域內的有效頁讀取數據塊的步驟具體包括下述步驟根據所述數據塊的偏移地址計算所述數據塊所在的區域; 在私有數據區讀取所述區域的邏輯塊和物理塊的對應關係表; 查詢所述邏輯塊和物理塊的對應關係表,確定所述數據塊寫入或讀出的物理塊; 在確定出的物理塊的空閒頁順序寫入數據塊,或者從確定出的物理塊讀取數據塊。
7. —種非易失性存儲器數據的讀寫控制系統,其特徵在於,所述系統包括 區域劃分模塊,用於對非易失性存儲器內的有效塊進行區域劃分,所述區域包括至少一個包含固定數量有效塊的數據區域和一個包含至少兩個有效塊的交換區域;第一對應關係表建立模塊,用於建立每個區域的邏輯塊和物理塊的對應關係表; 第二對應關係表生成模塊,用於根據塊內頁的冗餘區信息生成所述塊的邏輯頁和物理頁的對應關係表;存儲模塊,用於將所述第一對應關係表建立模塊建立的每個區域的邏輯塊和物理塊的 對應關係表及所述第二對應關係表生成模塊生成的塊的邏輯頁和物理頁的對應關係表存 儲到私有數據區;以及數據塊讀寫模塊,用於在所述數據區域的塊的空閒頁順序寫入數據塊,或從所述數據區域的有效頁讀出數據塊。
8. 如權利要求7所述的系統,其特徵在於,所述系統還包括數據塊暫時存儲模塊,用於在所述數據區域的第N塊寫入新數據塊時,當所述第N塊已 寫滿時,則在所述交換區域申請一個空塊,將所述新數據塊暫時存儲在所述交換區域的所 述空塊上;以及數據塊拷貝搬移模塊,用於當所述交換區域的所述空塊也寫滿時,則向所述交換區域 申請一個替換塊,並將所述第N塊的數據塊和第N塊所對應的交換塊中的有效數據塊拷貝 搬移到所述替換塊,其中,N為大於等於1的整數。
9. 如權利要求8所述的系統,其特徵在於,所述數據塊讀寫模塊具體包括 計算模塊,用於根據所述數據塊的偏移地址計算所述數據塊所在的區域; 第一對應關係表讀取模塊,用於在私有數據區讀取所述區域的邏輯塊和物理塊的對應關係表;確定模塊,用於查詢所述邏輯i央和物理塊的對應關係表,確定所述數據塊寫入或讀出 的物理塊;寫數據塊模塊,用於在確定的物理塊的空閒頁順序寫入數據塊;以及 讀數據塊模塊,用於從確定的物理塊的有效頁讀出數據塊。
10. 如權利要求8所述的系統,其特徵在於,所述系統還包括更新模塊,用於更新所述區域的邏輯塊和物理塊的對應關係表或塊的邏輯頁和物理頁 的對應關係表;以及隊列添加模塊,用於將已擦空的所述第N塊和所述交換區域的空塊添加到所述交換區 域的先進先出隊列。
全文摘要
本發明適用於數據存儲技術領域,提供了一種非易失性存儲器數據的讀寫控制方法及系統,所述方法包括下述步驟對非易失性存儲器內的有效塊進行區域劃分,所述區域包括至少一個包含固定數量有效塊的數據區域和一個包含至少兩個有效塊的交換區域;建立每個區域的邏輯塊和物理塊的對應關係表和生成塊的邏輯頁和物理頁的對應關係表,將所述邏輯塊和物理塊的對應關係表及塊的邏輯頁和物理頁的對應關係表存儲到私有數據區;在所述數據區域塊內的空閒頁順序寫入數據塊,或從所述數據區域內的有效頁讀取數據塊,在有限的內存空間下,提高NAND Flash數據的讀寫速度和效率。
文檔編號G06F12/06GK101727402SQ200910110589
公開日2010年6月9日 申請日期2009年10月23日 優先權日2009年10月23日
發明者李志雄, 鄧恩華, 郭丹 申請人:深圳市江波龍電子有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀