專利名稱:存儲方法及存儲設備的制作方法
技術領域:
本發(fā)明涉及存儲技術領域,特別涉及半導體存儲設備中的數據存儲技術。
背景技術:
半導體存儲設備,例如閃存設備,一般包含至少一個閃存存儲介質。為了便于對存 儲介質的數據進行管理,可將存儲介質的邏輯空間劃分為多個大小相等的區(qū)域,稱為邏輯 塊(該邏輯塊有多個邏輯頁)。每個區(qū)域的大小就是邏輯塊的邏輯容量。通常每個邏輯塊 對應一個物理塊。 一邏輯塊邏輯容量的大小等于一物理塊的大小。但是,根據存儲介質的 特性,在對存儲介質進行寫數據時,一個邏輯塊可以對應多個物理塊。其中,邏輯塊與物理 塊之間的對應關系是通過在邏輯塊與物理塊之間建立映射關系(即邏輯塊的邏輯地址與 物理塊的物理地址之間的映射關系)形成的。外部設備可通過該映射關系對存儲介質進行 讀寫操作。 為提高存儲介質的存取速度,在存儲介質中,會保留一定數量的未記錄有數據的 物理塊(即空塊)不建立與邏輯塊的映射關系。這部分未建立映射關系的空塊的信息構成 一個集合,稱為空塊池??諌K池中包含了這些空塊的數量及空塊的物理地址等。半導體存 儲設備在使用之前,空塊池存儲在存儲介質中。半導體存儲設備在使用時,可調用該空塊池 記錄的空塊信息。 為使空塊池中記錄的空塊保持預定的數量,現有的方法是在空塊池中的空塊不足 時將已用物理塊中的內容擦除而成為空塊,然后將該空塊的物理地址等信息記錄到空塊池 中。當這些已用物理塊中包含儲存了有效數據的頁(簡稱有效頁)時,則需將有效頁中的 數據搬遷到其它物理塊,再將該已用物理塊擦除成為空塊,并將該空塊的信息保存在空塊 池中。這個過程在本申請中簡稱為"空塊回收"。由于回收需要數據搬遷(數據搬遷占用時 間比較長),如果在數據寫入過程中需要回收空塊,則會造成存儲介質的寫入速度慢。另外, 回收次數過多也會導致存儲介質的使用壽命減少。
發(fā)明內容
本發(fā)明的目的是提供一種存儲方法及存儲設備,以減少回收次數,并提高存儲介 質的寫入速度。 根據本發(fā)明的一個方面,提供一種存儲方法,用于存儲設備,所述存儲設備包括半 導體存儲介質,并設有空塊池,所述方法包括如果對所述半導體存儲介質寫數據的操作滿 足以下條件 1)從一邏輯塊的起始頁開始寫數據,和2)要寫入的數據大于或等于該邏輯塊的 邏輯容量,則建立該邏輯塊與所述空塊池中記錄的空塊之間的映射關系;和根據所述映射 關系將數據寫到該空塊。 根據本發(fā)明的另一個方面,還提供一種存儲設備,包括半導體存儲介質及控制半 導體存儲介質讀寫的控制單元,存儲設備設置有空塊池??刂茊卧ㄅ袛嗄K,判斷對
3半導體存儲介質寫數據的操作是否滿足以下條件1)從一邏輯塊的起始頁開始寫數據,以 及2)要寫入的數據大于或等于該邏輯塊邏輯容量,寫控制模塊,在判斷模塊確定寫數據的 操作滿足上述條件時,將數據寫入空塊池記錄的空塊中。 根據本發(fā)明,可以減少空塊回收的頻率,提高存儲介質的寫入速度,延長存儲介質 的使用壽命。
圖1是本發(fā)明一實施例數據存儲系統的結構框圖。
圖2是圖1所示系統中寫數據控制模塊的結構框圖。
圖3是圖1所示系統中空塊池管理模塊的結構框圖。
圖4是本發(fā)明一實施例數據存儲方法的流程示意圖。 圖5是圖4所示方法中讀取一空塊的信息,建立該邏輯塊與空塊之間的邏輯物理 映射關系的流程示意圖。
具體實施例方式
本發(fā)明目的、功能及優(yōu)點將結合實施例,參照附圖做進一步說明。 如圖1所示, 一種存儲系統,可包括存儲設備2及與存儲設備2連接的外部設備1 。
外部設備1可包括計算機,讀卡器等。存儲設備2可包括半導體存儲介質21及控制半導體
存儲介質21讀寫的控制單元20。半導體存儲介質21設置有空塊池211。半導體存儲介質
21可包括閃存存儲介質等。 控制單元20可包括判斷模塊201及寫控制模塊202。 判斷模塊201判斷對半導體存儲介質21寫數據的操作是否滿足以下條件
1)從一邏輯塊的起始頁開始寫數據,以及
2)要寫入的數據大于或等于該邏輯塊邏輯容量。 寫控制模塊202,在判斷模塊201確定寫數據的操作滿足上述條件時,讀取空塊池 211中一空塊的物理地址信息以將數據寫到該空塊。 在對半導體存儲介質21進行寫操作時,判斷模塊201除判斷寫操作是否滿足以上 條件之外,還判斷與邏輯塊建立映射關系的物理塊的至少一物理頁是否已被寫數據,若沒 有被寫數據,則可通過寫控制模塊202,直接向物理塊寫數據(這樣就無需使用空塊池211 中的空塊,寫入速度比較快)。若已被寫數據,則通過寫控制模塊202讀取空塊池211中一 空塊的物理地址信息以將數據寫到該空塊。 如圖2所示,寫控制模塊202可包括空塊池211管理模塊2021和寫數據模塊2022。 空塊池211管理模塊2021在從空塊池211中讀取了一空塊的物理地址信息后,建立該空塊 與該邏輯塊的邏輯物理映射關系,將數據寫入該空塊。寫數據模塊2022根據該空塊與該邏 輯塊的映射關系,將數據寫入該空塊。 如圖3所示,空塊池211管理模塊2021可包括讀取模塊20211和回收模塊20212。 讀取模塊20211在從空塊池211中讀取了一空塊的物理地址信息后,建立該空塊與該邏輯 塊的邏輯物理映射關系。回收模塊20212在數據寫到空塊以后,擦除先前與該邏輯塊建立 映射關系的物理塊,將擦除的物理塊的物理地址信息記錄到空塊池211中。通過直接擦除廢棄的物理塊,并將擦除的物理塊的物理地址信息記錄到半導體存儲介質21的空塊池 211,可以增加空塊池211中空塊的個數,避免了數據的搬遷。 回收模塊20212,還判斷半導體存儲介質21的空塊池211中的空塊數量是否低于 一預設值(預設值可根據實際需要進行設定)。若是,將進行空塊回收,從而增加空塊池211 中空塊的個數。 如圖4所示,一種數據存儲方法的流程,可包括
步驟Sl,在進行數據寫入時,判斷寫入操作是否滿足如下條件
1)從半導體存儲介質21 —邏輯塊的起始頁開始寫數據,禾口
2)要寫入的數據大于或等于該邏輯塊的邏輯容量, 如果上述條件都滿足,則從半導體存儲介質21的空塊池211中讀取一空塊的信
息,建立該邏輯塊與空塊之間的邏輯物理映射關系。 步驟S2,根據該映射關系將數據寫到該空塊。 步驟S3,擦除先前與該邏輯塊建立映射關系的物理塊,將擦除的物理塊的物理地 址信息記錄到空塊池211。 根據以上的處理過程,在對半導體存儲介質21—邏輯塊寫數據的過程中,實際上 是對一個物理塊完整地寫入(避免了在對一邏輯塊寫數據的過程中,需要占用多個物理塊 情況的發(fā)生)。在將數據寫到空塊后,通過直接擦除原有的與該邏輯塊建立映射關系的物理 塊,并將擦除的物理塊的物理地址信息記錄到空塊池211的方式,可以增加空塊池211中空 塊的個數,減少空塊回收處理過程中的數據搬遷,提高半導體存儲介質21的寫速度和使用 壽命。 如圖5所示,從半導體存儲介質21的空塊池211中讀取一空塊的信息,建立該邏 輯塊與空塊之間的映射關系的流程,可包括 步驟Sll,判斷要寫入半導體存儲介質21的數據是否從一邏輯塊的起始頁開始寫 數據,是否大于或等于該邏輯塊的邏輯容量。若是,執(zhí)行步驟S12 ;若否,執(zhí)行步驟S13。
步驟S13,將數據寫入該邏輯塊對應的物理塊。 步驟S14,從空塊池211中讀取一空塊的物理地址信息,建立該邏輯塊與空塊之間 的映射關系。 步驟S15,根據建立的映射關系將數據寫到該空塊。 其中,在步驟Sll和步驟S14之間還包括步驟S12,判斷該邏輯塊對應的物理塊是 否為空塊。若是,執(zhí)行步驟S13,此步驟無需使用空塊池211中的空塊,直接向邏輯塊對應的 物理塊寫數據;若否,執(zhí)行步驟S14。 其中,在步驟S12和步驟S14之間還可包括步驟S121,判斷空塊池211中的空塊是 否不足。若是,則執(zhí)行步驟S122,即將至少一邏輯塊對應的且存在無效數據的物理塊回收。 若否,則執(zhí)行步驟S14。 上述實施例為本發(fā)明較佳的實施方式,但本發(fā)明的實施方式并不受上述實施例的 限制,其他的任何未背離本發(fā)的精神實質與原理下所作的改變、修飾、替代、組合、簡化,均 應為等效的置換方式,都包含在本發(fā)明的保護范圍之內。
權利要求
一種存儲方法,用于存儲設備,所述存儲設備包括半導體存儲介質,并設有空塊池,其特征在于,所述方法包括如果對所述半導體存儲介質寫數據的操作滿足以下條件1)從一邏輯塊的起始頁開始寫數據,和2)要寫入的數據大于或等于該邏輯塊的邏輯容量,則建立該邏輯塊與所述空塊池中記錄的空塊之間的映射關系;和根據所述映射關系將數據寫到該空塊。
2. 根據權利要求1所述的方法,其特征在于,還包括判斷對所述半導體存儲介質寫數據的操作是否滿足與所述邏輯塊建立映射關系的物理塊的至少一物理頁已被寫數據。
3. 根據權利要求1或2所述的方法,其特征在于,還包括在將數據寫到所述空塊后,擦除先前與該邏輯塊建立映射關系的物理塊,將擦除的物理塊的物理地址信息記錄到空塊池。
4. 根據權利要求1或2所述的方法,其特征在于,還包括在所述空塊池中記錄的空塊數量低于預設值時,進行空塊回收。
5. —種存儲設備,包括半導體存儲介質及控制半導體存儲介質讀寫的控制單元,所述存儲設備還設有空塊池,所述控制單元包括判斷模塊,判斷對所述半導體存儲介質寫數據的操作是否滿足以下條件1) 從一邏輯塊的起始頁開始寫數據,以及2) 要寫入的數據大于或等于該邏輯塊邏輯容量,寫控制模塊,在所述判斷模塊確定所述寫數據的操作滿足上述條件時,將數據寫到所述空塊池中記錄的一空塊中。
6. 根據權利要求5所述的設備,其特征在于,所述判斷模塊還判斷對所述半導體存儲介質寫數據的操作是否滿足與所述邏輯塊建立映射關系的物理塊的至少一物理頁已被寫數據。
7. 根據權利要求5或6所述的設備,其特征在于,其中所述寫控制模塊包括空塊池管理模塊,在從所述空塊池中讀取了一空塊的物理地址信息后,建立該空塊與所述邏輯塊的映射關系,以及寫數據模塊,根據該空塊與所述邏輯塊的映射關系,將數據寫入該空塊。
8. 根據權利要求7所述的設備,其特征在于,所述空塊池管理模塊包括回收模塊,在數據寫入所述空塊后,擦除先前與所述邏輯塊建立映射關系的物理塊,將擦除的物理塊的物理地址信息記錄到所述空塊池。
9. 根據權利要求8所述的設備,其特征在于當所述空塊池中記錄的空塊數量低于預設值時,所述回收模塊進行空塊回收。
全文摘要
本發(fā)明提供一種存儲方法,用于存儲設備,所述存儲設備包括半導體存儲介質,并設有空塊池,所述方法包括如果對所述半導體存儲介質寫數據的操作滿足以下條件1)從一邏輯塊的起始頁開始寫數據,和2)要寫入的數據大于或等于該邏輯塊的邏輯容量,則建立該邏輯塊與所述空塊池中記錄的空塊之間的映射關系;和根據所述映射關系將數據寫到該空塊。本發(fā)明提高了半導體存儲介質的寫速度和使用壽命。
文檔編號G06F12/06GK101770426SQ200810187400
公開日2010年7月7日 申請日期2008年12月31日 優(yōu)先權日2008年12月31日
發(fā)明者萬紅波, 盧賽文 申請人:深圳市朗科科技股份有限公司