一種閃存陣列管理方法及裝置的制造方法
【技術領域】
[0001]本發明屬于計算機數據存儲技術領域,尤其涉及一種閃存陣列管理方法及裝置。
【背景技術】
[0002]Nand-Flash是一種非易失的閃存,由Nand-Flash作為存儲介質的存儲系統具有存取速度快、抗震能力強、電源開銷小、發熱低、零噪聲和體積小等優勢,廣泛應用于軍事、車載、工控、醫療、航空、消費電子等領域。Nand-Flash芯片分為單層式存儲(Single LevelCell, SLC)和多層式存儲(Multi level Cell,MLC)兩種。隨著工藝的進步,單片Nand-Flash的存儲容量也不斷的增加。目前,單片Nand-Flash的存儲容量已達到32GB甚至更高,這個容量足已滿足mp3、手機、普通U盤等對存儲容量和速度要求不高的應用領域。但是,對于固態硬盤等大容量、速度要求高的應用領域,單片Nand-Flash無法滿足其要求,可使用多片Nand-Flash來提高容量,采用多通道的設計來提高接口的帶寬。
[0003]Nand-Flash具有先擦除后寫入的特點,且擦除和寫入的單位不一樣。擦除的單位是塊,寫入和讀的單位是頁,一個塊由多個頁組成。通常的Nand-Flash管理記錄了邏輯塊地址(Logical BlockAddress, LBA)和物理塊地址(Physical Block Address, PBA)的映射關系,有新的數據寫入時,將數據寫入到已擦除的塊中,然后更新映射關系。這種管理方法的缺陷是只要在有小數據寫入時就會造成一個塊的更新,這樣會嚴重增加Nand-Flash的擦除次數,影響使用壽命。另外一種方法:通過維護邏輯頁和物理頁的映射關系來管理數據信息,這種方法需要占用大量的存儲空間來運行和存放映射表。
[0004]現有閃存陣列管理方法存在需要占用大量的存儲空間來運行和存放映射表,以及擦除次數多,影響使用壽命的問題。
【發明內容】
[0005]本發明實施例提供了一種閃存陣列管理方法及裝置,旨在解決現有閃存陣列管理方法存在需要占用大量的存儲空間來運行和存放映射表,以及擦除次數多,影響使用壽命的問題。
[0006]一方面,提供一種閃存陣列管理方法,所述方法包括:
[0007]將閃存陣列劃分為η個物理工作組,其中,同一物理工作組中每個閃存的相同頁組合為物理組合頁,同一物理工作組中每個閃存的相同塊組合為物理組合塊;
[0008]按照物理組合頁的大小將邏輯空間劃分為若干邏輯頁,將劃分得到的若干邏輯頁分成η個與物理工作組對應的邏輯工作組,同一邏輯工作組的邏輯頁按照其邏輯地址重新編址,獲得邏輯組合頁;
[0009]邏輯工作組中的邏輯組合頁與相應物理工作組中的物理組合頁采用動態映射的方式進行管理,以實現對所述閃存陣列的讀寫
[0010]另一方面,提供一種閃存陣列管理裝置,所述裝置包括:
[0011]第一管理單元,用于將閃存陣列劃分為η個物理工作組,其中,同一物理工作組中每個閃存的相同頁組合為物理組合頁,同一物理工作組中每個閃存的相同塊組合為物理組合塊;
[0012]第二管理單元,用于按照物理組合頁的大小將邏輯空間劃分為若干邏輯頁,將劃分得到的若干邏輯頁分成η個與物理工作組對應的邏輯工作組,同一邏輯工作組的邏輯頁按照其邏輯地址重新編址,獲得邏輯組合頁;
[0013]組合頁映射單元,用于邏輯工作組中的邏輯組合頁與相應物理工作組中的物理組合頁采用動態映射的方式進行管理,以實現對所述閃存陣列的讀寫。
[0014]在本發明實施例,將閃存陣列劃分為η個物理工作組,其中,同一物理工作組中每個閃存的相同頁組合為物理組合頁,同一物理工作組中每個閃存的相同塊組合為物理組合塊;按照物理組合頁的大小將邏輯空間劃分為若干邏輯頁,將劃分得到的若干邏輯頁分成η個與物理工作組對應的邏輯工作組,同一邏輯工作組的邏輯頁按照其邏輯地址重新編址,獲得邏輯組合頁;邏輯工作組中的邏輯組合頁與相應物理工作組中的物理組合頁采用動態映射的方式進行管理,以實現對所述閃存陣列的讀寫,本發明,縮減映射表占用的存儲空間,降低塊映射導致的寫入放大。
【附圖說明】
[0015]圖1是本發明實施例一提供的閃存陣列管理方法的實現流程圖;
[0016]圖2是本發明實施例一提供的閃存陣列排列示意圖;
[0017]圖3是本發明實施例一提供的閃存陣列的塊劃分示意圖;
[0018]圖4是本發明實施例一提供的閃存陣列的映射示意圖;
[0019]圖5是本發明實施例一提供的閃存陣列的數據管理示意圖;
[0020]圖6是本發明實施例一提供的閃存陣列的映射表更新示意圖;
[0021]圖7是本發明實施例二提供的閃存陣列管理裝置的具體結構圖。
【具體實施方式】
[0022]為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。
[0023]在本發明實施例中,將閃存陣列劃分為η個物理工作組,其中,同一物理工作組中每個閃存的相同頁組合為物理組合頁,同一物理工作組中每個閃存的相同塊組合為物理組合塊;按照物理組合頁的大小將邏輯空間劃分為若干邏輯頁,將劃分得到的若干邏輯頁分成η個與物理工作組對應的邏輯工作組,同一邏輯工作組的邏輯頁按照其邏輯地址重新編址,獲得邏輯組合頁;邏輯工作組中的邏輯組合頁與相應物理工作組中的物理組合頁采用動態映射的方式進行管理,以實現對所述閃存陣列的讀寫。
[0024]以下結合具體實施例對本發明的實現進行詳細描述:
[0025]實施例一
[0026]圖1示出了本發明實施例一提供的閃存陣列管理方法的實現流程,詳述如下:
[0027]在步驟SlOl中,將閃存陣列劃分為η個物理工作組,其中,同一物理工作組中每個閃存的相同頁組合為物理組合頁,同一物理工作組中每個閃存的相同塊組合為物理組合塊。
[0028]其中,所述閃存陣列由多片閃存(Nand-Flash)按照M個主通道和N個子通道交叉的方式排列組成,其中,M、N均為大于I的整數。同一個主通道上的Nand-Flash共用一個數據接口,不同的子通道之間采用不同的片選信號。r個子通道梆定在一起組成N/r個物理工作組(team)。一個物理工作組由其包括的子通道對應的所有Nand-Flash所組成。物理工作組內每個Nand-Flash的相同頁組合為一個物理組合頁(Gpage),相應的,物理工作組內每個Nand-Flash的相同塊組合為一個物理組合頁(Gblock)。具體的,如圖2所示,將由12個Nand-Flash組成的閃存陣列劃分為3個主通道和4個子通道,將2個子通道綁定在一起組成 4/2=2 個工作組 TeamO 和 Teaml, TeamO 包括 NandO、Nand1、Nand4、Nand5、Nand8和 Nand9, Teaml 包括 Nand2、Nand3、Nand6、Nand7、NandlO 和 NandlI。如圖 3 所不,NandO、Nandl、Nand4、Nand5、Nand8 和 Nand9 的物理 pageO 全部組合在一起組成 TeamO 的 GpageO,NandO> Nand1、Nand4、Nand5、Nand8 和 Nand9 的物理 blockO 全部組合在一