專利名稱::電子硬盤的存儲空間的分組管理方法電子石更盤的存儲空間的分組管理方法所屬
技術(shù)領(lǐng)域:
本發(fā)明涉及一種存儲裝置的存儲空間的管理方法,尤其涉及一種電子硬盤的存儲空間的分組管理方法。
背景技術(shù):
:電子硬盤采用快閃存儲器(FlashMemory)作為存儲介質(zhì),因其數(shù)據(jù)安全性和低成本,且便于攜帶,在消費(fèi)類電子產(chǎn)品中得到廣泛應(yīng)用。然而,在大容量的電子硬盤中,數(shù)據(jù)讀取的操作時(shí)間長,降低了電子硬盤的數(shù)據(jù)存儲效率,且大容量的電子硬盤的每一次數(shù)據(jù)讀取操作需占用大量的系統(tǒng)資源,從而降低電子硬盤的使用性能。一般,在現(xiàn)有的電子硬盤的應(yīng)用中,采用增加電子硬盤的內(nèi)部的靜態(tài)隨才幾存儲器(SRAM,StaticRandomAccessMemory)的容量,從而增加電子硬盤的處理能力的方式來提高電子硬盤的讀取速度。上述解決方案必然導(dǎo)致電子硬盤的成本增加,從而不利于電子硬盤的推廣應(yīng)用。從而,提供一種適宜廣泛應(yīng)用的低成本的電子硬盤的存儲空間的管理方法,提高電子硬盤的讀寫性能,則成為當(dāng)前電子硬盤發(fā)展的迫切需要。
發(fā)明內(nèi)容本發(fā)明提供一種電子硬盤的存儲空間的分組管理方法,占用系統(tǒng)資源少,提高數(shù)據(jù)讀寫的操作效率,降低成本。為實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明提供一種電子硬盤的存儲空間的分組管理方法,所述電子硬盤包括中央處理器、只讀存儲器、接口控制器、靜態(tài)隨機(jī)存儲器及快閃存儲器,所述中央處理器與只讀存儲器、靜態(tài)隨機(jī)存儲器及接口控制器連接,所述只讀存儲器存儲電子硬盤的固件程序并控制電子硬盤的數(shù)據(jù)讀寫,所述接口控制器與外部的數(shù)據(jù)處理裝置連接并傳輸數(shù)據(jù)。所述快閃存儲器包括若干的塊,所述快閃存儲器的一定數(shù)量的塊設(shè)定為一組,且所述的一組的快閃存儲器的塊的容量寫入只讀存儲器,所述電子硬盤與外部的數(shù)據(jù)處理裝置連接并初始化,當(dāng)電子硬盤讀取數(shù)據(jù)時(shí),所述固件程序在靜態(tài)隨才踏儲器內(nèi)建立當(dāng)前需要讀寫的塊所在的一組的查找表,所述查找表對應(yīng)建立該組內(nèi)的塊的邏輯地址與物理塊號的對應(yīng)關(guān)系,所述固件程序根據(jù)該查找表來實(shí)現(xiàn)所需讀寫的塊的邏輯地址與物理塊號的動(dòng)態(tài)映射;當(dāng)讀寫的塊不存在當(dāng)前的查找表內(nèi)所建立的組內(nèi)時(shí),所述靜態(tài)隨機(jī)存儲器重新建立所需讀取的塊所在的第二組的查找表,并對第二組內(nèi)的塊進(jìn)行數(shù)據(jù)讀寫操作。由上述可知,本發(fā)明電子硬盤的存儲空間的分組管理方法,通過將電子硬盤的快閃存儲器的塊進(jìn)行分組管理的方式,僅需在靜態(tài)隨機(jī)存儲器內(nèi)建立一組快閃存儲器的塊的查找表,即可進(jìn)行該組內(nèi)的塊進(jìn)行便捷的數(shù)據(jù)讀寫操作,占用系統(tǒng)資源少,簡化電子硬盤的數(shù)據(jù)讀寫操作,當(dāng)需讀寫的塊不在該組內(nèi)時(shí),再重新建立第二組的塊的查找表,每次僅僅需在靜態(tài)隨機(jī)存儲器內(nèi)存儲一組的快閃存儲器的塊的查找表的信息,從而有效利用靜態(tài)隨機(jī)存儲器的有限存儲空間而不增加電子硬盤的成本,提高電子硬盤的使用性能的同時(shí)降低電子硬盤的成本。圖l是本發(fā)明的電子硬盤的結(jié)構(gòu)示意圖。圖2是本發(fā)明電子硬盤與外部數(shù)據(jù)處理裝置連接并進(jìn)行數(shù)據(jù)讀寫操作的方法流程。圖3是本發(fā)明電子硬盤的快閃存儲器的塊劃分為組及一組內(nèi)的塊所對應(yīng)建立的查找表。具體實(shí)施方式為進(jìn)一步闡述本發(fā)明達(dá)成預(yù)定目的所采取的技術(shù)手段及功效,以下結(jié)合附圖及實(shí)施例,對本發(fā)明電子硬盤的存儲空間的分組管理方法的具體實(shí)施方式、結(jié)構(gòu)特征及其功效,詳細(xì)說明如下。請參閱圖1,本發(fā)明的電子硬盤包括設(shè)有數(shù)據(jù)接口的接口控制器、快閃存儲器、中央處理器、只讀存儲器和靜態(tài)隨機(jī)存儲器。只讀存儲器內(nèi)部設(shè)有固件程序,該固件程序存儲電子硬盤讀寫控制數(shù)據(jù)和程序。接口控制器的接口可以采用通用的串行數(shù)據(jù)接口規(guī)范,如SATA接口、USB接口規(guī)范等。在具體實(shí)施例中,本發(fā)明電子硬盤設(shè)有若干的快閃存儲器,每一快閃存儲器包括若干的塊,每一個(gè)塊包括用于存儲數(shù)據(jù)的數(shù)據(jù)存儲區(qū)、標(biāo)識每一個(gè)塊的物理塊號及相應(yīng)分配給該塊的邏輯地址,當(dāng)數(shù)據(jù)存儲區(qū)存儲有數(shù)據(jù)時(shí),該數(shù)據(jù)存儲區(qū)標(biāo)識為數(shù)據(jù)塊,當(dāng)數(shù)據(jù)存儲區(qū)未存儲數(shù)據(jù)而等待數(shù)據(jù)寫入時(shí),該數(shù)據(jù)存儲區(qū)標(biāo)識為空閑塊,此時(shí),該空閑塊不分配邏輯地址。在本發(fā)明的具體實(shí)施例中,快閃存儲器采用NAND型快閃存儲器,每一個(gè)快閃存儲器分為若干個(gè)塊,塊是快閃存儲器擦除時(shí)的最小單位,通常包括16頁或32頁,或者因不同型號的快閃存儲器而不同。頁是快閃存儲器編程和讀出的最小單位,通常是(512+16)字節(jié)或(2048+64)字節(jié),或者因不同型號的快閃存儲器而不同。在本具體實(shí)施例中,一個(gè)塊的容量大小是64K字節(jié),本發(fā)明電子硬盤的存儲空間的分組管理方法基于現(xiàn)有電子硬盤的存儲空間的結(jié)構(gòu),將快閃存儲器內(nèi)的塊劃分為若干的組進(jìn)行管理,在具體實(shí)施例中,可根據(jù)靜態(tài)隨機(jī)存儲器的存儲空間大小進(jìn)行設(shè)定,如,可設(shè)定為每組1024個(gè)塊,或設(shè)定為每組256塊,在本具體實(shí)施例中,設(shè)定每組為2048個(gè)塊,從而每組的容量為2048x64K字節(jié),即128M字節(jié)的容量。所設(shè)定的每組的塊的數(shù)量寫入只讀存儲器的固件程序中,從而固件程序在電子硬盤的初始化后即控制電子硬盤的每組的塊的數(shù)量。每組的容量為每組內(nèi)設(shè)定的塊的數(shù)量如表1所示表l<table>tableseeoriginaldocumentpage8</column></row><table>在表l中,每組內(nèi)的塊包括數(shù)據(jù)塊,空閑塊或者失效塊。若數(shù)據(jù)存儲區(qū)損壞不能進(jìn)行數(shù)據(jù)的讀寫操作,則該數(shù)據(jù)存儲區(qū)就成為了失效塊,當(dāng)空閑塊的數(shù)量達(dá)到上述表l中的最大值時(shí),則快閃存儲器的管理就會(huì)失效。為了方便處理失效塊,本發(fā)明的電子硬盤的固件程序不給該失效塊分配一個(gè)固定的物理塊號,而數(shù)據(jù)塊都會(huì)將組內(nèi)的邏輯地址存放在塊內(nèi)第一頁里的附加空間內(nèi),并不是所有的邏輯塊都指定了對應(yīng)的物理地址,只有存儲有數(shù)據(jù)的塊的邏輯地址會(huì)被分配給對應(yīng)的物理塊號。當(dāng)然,每組內(nèi)的塊的容量時(shí),則需要增加靜態(tài)隨機(jī)存儲器的容量。以每組內(nèi)的快閃存儲器的塊的數(shù)量是2048個(gè)(2048塊/組)為例,則每個(gè)塊在組內(nèi)的邏輯地址的最大值是1999,每個(gè)塊在組內(nèi)的物理地址的最大值是2047。當(dāng)然,也可以采用每組1024或256個(gè)塊,這樣可以占用更少的靜態(tài)隨機(jī)存儲器的資源。請同時(shí)參閱圖2及圖3,本發(fā)明電子硬盤與外部的數(shù)據(jù)處理裝置連接后,固件程序進(jìn)行初始化,當(dāng)需進(jìn)行數(shù)據(jù)讀寫時(shí),固件程序?qū)⑺x寫的塊所在的一組內(nèi)的快閃存儲器的塊的邏輯地址與物理塊號讀入靜態(tài)隨機(jī)存儲器內(nèi),并在靜態(tài)隨機(jī)存儲器內(nèi)建立一個(gè)邏輯地址與物理塊號的對應(yīng)關(guān)系的查找表。在系統(tǒng)需要讀寫該組內(nèi)的塊的數(shù)據(jù)時(shí),通過查找表即可查找要讀寫的塊的邏輯地址所對應(yīng)的物理塊號,從而方便地進(jìn)行數(shù)據(jù)的讀寫操作。當(dāng)需要進(jìn)行數(shù)據(jù)讀寫操作的塊不在當(dāng)前的組內(nèi)時(shí),靜態(tài)隨機(jī)存儲器需重新建立需要訪問的塊所在的第二組的邏輯地址與物理塊號——對應(yīng)的查找表。在具體實(shí)施例中,本發(fā)明每一個(gè)塊在查找表中的占用空間2字節(jié),因此,設(shè)定一個(gè)組內(nèi)有2048個(gè)塊,則查找表的大小是2x2048-4K字節(jié);如杲一個(gè)組內(nèi)有1024個(gè)塊,查找表的大小就是2K字節(jié),由此可知,僅占用2K的靜態(tài)隨機(jī)存儲器的容量空間即可對2048個(gè)塊進(jìn)行數(shù)據(jù)讀寫操作。由此,一個(gè)16G字節(jié)容量的電子硬盤,包括256K個(gè)塊,則僅需要建立2x256K^512K個(gè)字節(jié)的查找表就可對該16G字節(jié)的電子硬盤進(jìn)行數(shù)據(jù)讀寫操作,占用較少的系統(tǒng)資源即可進(jìn)行便捷的電子硬盤的存儲空間的管理。此外,本發(fā)明電子硬盤的存儲空間的分組管理方法是將每一快閃存儲器作為獨(dú)立的單元進(jìn)行管理,即,本發(fā)明的分組管理方法,僅將獨(dú)立的一個(gè)快閃存儲器的塊進(jìn)行分組管理,而不會(huì)出現(xiàn)一組的查找表內(nèi)建立的塊的對應(yīng)信息包括兩個(gè)快閃存儲器的塊的情況。在具體實(shí)施例中,根據(jù)每一快閃存儲器的容量的大小進(jìn)行分組區(qū)分,靜態(tài)隨機(jī)存儲器的容量需能存儲每一組的容量根據(jù)大小,如,一快閃存儲器的大小為128M,則將該快閃存儲器區(qū)分為一組即可。在本發(fā)明電子硬盤的存儲空間的分組管理方法中,存儲于靜態(tài)隨機(jī)存儲器內(nèi)的每一組的塊的查找表是采用動(dòng)態(tài)磨損平衡算法(WearLeveling)將邏輯地址動(dòng)態(tài)的映射到物理塊號的塊。動(dòng)態(tài)磨損耗算法保證快閃存儲器內(nèi)所有單元的被擦寫次數(shù)在一個(gè)相同的水平上,能避免應(yīng)用軟件重復(fù)擦寫快閃存儲器內(nèi)某一固定物理塊而導(dǎo)致的快閃存儲器損壞。綜上所述,本發(fā)明電子硬盤的存儲空間的分組管理方法,通過在靜態(tài)隨機(jī)存儲器內(nèi)建立的一組的塊的物理塊與物理塊號相對應(yīng)的查找表,從而僅僅通過該查找表而對該組內(nèi)的塊進(jìn)行數(shù)據(jù)讀寫操作,簡化存儲塊的管理,僅僅通過存儲塊的標(biāo)識建立的查找表,節(jié)省數(shù)據(jù)操作時(shí)間,提升電子硬盤的管理效率。本發(fā)明電子^_盤的存儲空間的分組管理方法,適用于大容量的電子硬盤,提高電子硬盤的數(shù)據(jù)讀寫性能。本發(fā)明電子硬盤的存儲空間的分組管理方法利用電子硬盤的內(nèi)部的靜態(tài)存儲器的有限存儲空間,僅僅在靜態(tài)隨機(jī)存儲器內(nèi)存入一組的快閃存儲器的塊即可便捷地進(jìn)行針對該組內(nèi)的塊進(jìn)行數(shù)據(jù)讀寫操作,提高電子硬盤的讀寫性能的同時(shí)而不增加電子硬盤的成本,符合當(dāng)前電子硬盤的發(fā)展需要,便于電子硬盤的推廣應(yīng)用。權(quán)利要求1、一種電子硬盤的存儲空間的分組管理方法,所述電子硬盤包括中央處理器、只讀存儲器、接口控制器、靜態(tài)隨機(jī)存儲器及快閃存儲器,所述中央處理器與只讀存儲器、靜態(tài)隨機(jī)存儲器及接口控制器連接,所述只讀存儲器存儲電子硬盤的固件程序并控制電子硬盤的數(shù)據(jù)讀寫,所述接口控制器與外部的數(shù)據(jù)處理裝置連接并傳輸數(shù)據(jù),所述快閃存儲器包括若干的塊,所述快閃存儲器的一定數(shù)量的塊設(shè)定為一組,且所述設(shè)定的一組的塊的數(shù)量寫入只讀存儲器,所述電子硬盤與外部的數(shù)據(jù)處理裝置連接并初始化,當(dāng)電子硬盤讀取數(shù)據(jù)時(shí),所述固件程序在靜態(tài)隨機(jī)存儲器內(nèi)建立當(dāng)前需要讀寫的塊所在的一組的查找表,所述查找表對應(yīng)建立該組內(nèi)的塊的邏輯地址與物理塊號的對應(yīng)關(guān)系,所述固件程序根據(jù)該查找表來實(shí)現(xiàn)所需讀寫的塊的邏輯地址與物理塊號的動(dòng)態(tài)映射;當(dāng)讀寫的塊不存在當(dāng)前的查找表內(nèi)所建立的組內(nèi)時(shí),所述靜態(tài)隨機(jī)存儲器重新建立所需讀取的塊所在的第二組的查找表,并對第二組內(nèi)的塊進(jìn)行數(shù)據(jù)讀寫操作。2、根據(jù)權(quán)利要求1所述的電子硬盤的存儲空間的分組管理方法,其特征在于所述的快閃存儲器為NAND型快閃存儲器。3.根據(jù)權(quán)利要求1所述的電子硬盤的存儲空間的分組管理方法,其特征在于所述的快閃存儲器的一個(gè)塊在所述查找表中的建立的查找信息占用2字節(jié)容量的存儲空間。4.根據(jù)權(quán)利要求1所述的電子硬盤的存儲空間的分組管理方法,其特征在于所述的一組的塊的存儲容量為128M字節(jié)的容量。5、根據(jù)權(quán)利要求1所述的電子硬盤的存儲空間的分組管理方法,其特征在于所述的一組是以每一快閃存儲器作為獨(dú)立的一個(gè)單元進(jìn)行管理。6、根據(jù)權(quán)利要求5所述的電子硬盤的存儲空間的分組管理方法,其特征在于所述的一組的容量小于所述電子硬盤的靜態(tài)隨機(jī)存儲器的容量。7、根據(jù)權(quán)利要求6所述的電子硬盤的存儲空間的分組管理方法,其特征在于所述的一組包括所述快閃存儲器的2048個(gè)塊。8、根據(jù)權(quán)利要求7所述的電子硬盤的存儲空間的分組管理方法,其特征在于所述2048個(gè)塊最大包括2000個(gè)已寫入數(shù)據(jù)的數(shù)據(jù)塊,至少包括l個(gè)未寫入數(shù)據(jù)的空閑塊,最大包括47個(gè)失效塊。全文摘要本發(fā)明公開一種電子硬盤的存儲空間的分組管理方法,將電子硬盤的快閃存儲器的一定數(shù)量的塊設(shè)定為一組,且所述設(shè)定的一組的塊的數(shù)量寫入只讀存儲器,所述電子硬盤與外部的數(shù)據(jù)處理裝置連接并初始化,當(dāng)電子硬盤讀取數(shù)據(jù)時(shí),所述固件程序在靜態(tài)隨機(jī)存儲器內(nèi)建立當(dāng)前需要讀寫的塊所在的一組的查找表,所述查找表對應(yīng)建立該組內(nèi)的塊的邏輯地址與物理塊號的對應(yīng)關(guān)系。由上所述,本發(fā)明將電子硬盤的快閃存儲器的塊進(jìn)行分組管理的方式,僅需在靜態(tài)隨機(jī)存儲器內(nèi)建立一組快閃存儲器的塊的查找表,即可進(jìn)行該組內(nèi)的塊進(jìn)行便捷的數(shù)據(jù)讀寫操作,占用系統(tǒng)資源少,簡化電子硬盤的數(shù)據(jù)讀寫操作。文檔編號G06F12/02GK101192195SQ20061011476公開日2008年6月4日申請日期2006年11月22日優(yōu)先權(quán)日2006年11月22日發(fā)明者周朝暉,姜玉龍申請人:北京華旗資訊數(shù)碼科技有限公司;北京華旗數(shù)碼技術(shù)實(shí)驗(yàn)室有限責(zé)任公司