專利名稱:支持分區(qū)的閃存存貯器件的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及存儲技術(shù),尤其是指一種支持分區(qū)的閃存存貯器件。
背景技術(shù):
閃存存貯器件是以閃存器件為存儲介質(zhì),擁有各種數(shù)據(jù)通訊接口的存貯器件,如常見的擁有SD/MMC/MS接口的閃存卡、擁有USB接口的U盤等。這些閃存存貯器件因其體積小、容量大、抗震性能好,被廣泛應(yīng)用于數(shù)碼相機、PDA、MP3播放器等各種數(shù)碼存儲設(shè)備中。
一般來說,閃存存貯器件包括界面單元、控制器和存儲模塊。
界面單元與主機相連,一般為界面連接器,其接口信號定義根據(jù)不同的應(yīng)用可以符合不同的規(guī)范,可以是SD、MMC、USB等等。控制器和界面單元一起,完成數(shù)據(jù)的傳送和配置,狀態(tài)的報告,也完成對存儲模塊的操作,如讀,寫,擦和備份的命令。存儲模塊由一個或幾個閃存器件組成,用于接收和儲存數(shù)據(jù)。
一般來說,存儲模塊的容量決定閃存存貯器件的容量。對現(xiàn)有技術(shù)的閃存存貯器件,不管其存儲模塊采用一個或多個閃存器件,都是作為一個存儲區(qū)處理。對用戶來說,看到的就只是一個存儲區(qū),能用的也只是一個存儲區(qū),屬性的設(shè)置也是針對這個存儲區(qū)。
隨著閃存器件容量的增加,1G(1GByte=1000MByte)、2G的存貯器件已成為市場上的主流,4G、8G容量的存貯器件也顯現(xiàn)出大勢所趨。面對日益增長的容量空間,許多用戶和廠商希望對存儲空間進行分區(qū),分別用于存放不同的數(shù)據(jù)信息。也會要求每個區(qū)域的屬性可分別設(shè)置,不互相影響。這樣可以更有效地利用存儲空間。也就是說,人們要求閃存存貯器件內(nèi)的存儲空間可像硬盤一樣被任意分區(qū)。
如PDA開發(fā)商往往需要把一些應(yīng)用程序預(yù)置于PDA中,比如PDA中自帶的游戲、字典、mp3播放器、地址簿等程序,這些預(yù)置的程序不能讓客戶擅自改寫。此外,PDA中還需要有大量可供用戶讀寫的存儲空間,用于存儲用戶的備忘錄、數(shù)據(jù)、mp3歌曲等個人專用信息。所以,這兩部分存儲空間不能互相影響,預(yù)置程序的空間需要加密不能讓客戶獲悉,留給客戶的存儲空間又能完全開放,由用戶隨意讀寫。
現(xiàn)行的做法是PDA開發(fā)商把預(yù)置的程序放在PDA內(nèi)置的存儲芯片,而把用戶的個人信息存放于外接的存儲卡中,用戶可以很方便地通過更換存儲卡來更新個人信息。這種方法有效地解決了兩個存儲空間的隔離,但是這種方法所需的內(nèi)置存儲芯片增加了PDA的成本。
隨著大容量閃存卡的出現(xiàn),有人提出把預(yù)置程序空間也移到存儲卡中,這樣可以節(jié)省PDA的內(nèi)置存儲芯片,降低PDA的成本。也就是說,把存儲卡的存儲空間分成兩個區(qū)域,分別用于存放商家的應(yīng)用程序和用戶的個人信息,且對這兩個區(qū)域的讀、寫、加密等操作不能互相影響。顯然,目前技術(shù)上的閃存卡還不能做到一部分被加密,一部分開放,所以還不能滿足這種應(yīng)用。
另外,閃存存貯器件以其小體積,易攜帶等特點越來越受消費者青睞,人們經(jīng)常會用這些器件來備份數(shù)據(jù)。為了使備份的數(shù)據(jù)更容易方便快捷地查找,人們往往把各種數(shù)據(jù)分門別類存放。所以人們希望對閃存存貯器件的操作也能像硬盤一樣可以分區(qū),可以對每個區(qū)分別設(shè)置屬性,以方便為存儲的數(shù)據(jù)設(shè)置不同的訪問權(quán)限,顯然,目前技術(shù)上的閃存存貯器件還不能滿足這種需求。
發(fā)明內(nèi)容
本發(fā)明提供了一種以閃存器件作為存儲介質(zhì)、具有普通閃存存貯器件外形特征和接口信號定義、并可支持分區(qū)操作的存貯器件。
一種支持分區(qū)的閃存存貯器件,包括界面單元、控制器和存儲模塊,界面單元一端用于與外界主機連接,另一端連接控制器,控制器與存儲模塊通過總線連接,所述的控制器支持對存儲模塊進行分區(qū)操作,可將存儲模塊的總存儲區(qū)分成若干個分存儲區(qū),各分存儲區(qū)均可單獨進行讀、寫、擦除、加密操作或設(shè)置屬性。
所述的控制器完成對存儲模塊的分區(qū)操作,包括以下步驟1)控制器為存儲模塊的總存儲區(qū)分配地址,按地址順序劃分成若干個分存儲區(qū),控制器分別格式化每個分存儲區(qū),并針對每個分存儲區(qū)創(chuàng)建一個寄存器組作為該分存儲區(qū)的配置文件,寄存器組的每一個字節(jié)分別用于表示分存儲區(qū)的名字、起始地址、分區(qū)大小、分區(qū)文件格式等信息;2)控制器記憶每個分存儲區(qū)對應(yīng)的配置文件的存放地址,并在其中一個分存儲區(qū)對應(yīng)的配置文件中設(shè)置標(biāo)志位,把該分存儲區(qū)定義為默認(rèn)存儲區(qū);3)控制器為除默認(rèn)存儲區(qū)以外的其它分存儲區(qū)設(shè)置一個切換到該分存儲區(qū)操作的條件,該條件可以是由主機發(fā)送的一個或幾個命令的組合,主機發(fā)送的命令格式根據(jù)閃存存貯器件應(yīng)用的類型符合相對應(yīng)的規(guī)范;4)對閃存存貯器件重新上電,控制器首先導(dǎo)入默認(rèn)存儲區(qū)的配置文件,接收并判斷主機發(fā)送的命令,如果接收的命令符合與閃存存貯器件類型對應(yīng)的規(guī)范,則在默認(rèn)存儲區(qū)完成命令指示;如果接收的命令和順序符合切換到某一分存儲區(qū)的條件,則根據(jù)記錄的配置文件存放的位置重新調(diào)用該分存儲區(qū)的配置文件,在該分存儲區(qū)完成命令指示;如果為復(fù)位命令,則重新調(diào)用默認(rèn)存儲區(qū)的配置文件。
所述的界面單元采用界面連接器或金手指,其接口信號定義根據(jù)閃存存貯器件應(yīng)用的類型符合相對應(yīng)的規(guī)范。
根據(jù)本發(fā)明,人們可以將閃存存貯器件的存儲空間分成若干個不同大小的區(qū)域,也可以為每個區(qū)域設(shè)置不同的屬性,不會互相影響。
若不對本發(fā)明閃存存貯器件進行分區(qū),即為現(xiàn)有技術(shù)上的閃存存貯器件,所以本發(fā)明所述閃存可完全替代現(xiàn)有技術(shù)上的閃存存貯器件,具有更為廣泛的應(yīng)用前景。
圖1為本發(fā)明的結(jié)構(gòu)示意框圖;圖2為本發(fā)明存儲模塊存儲區(qū)分為3個分區(qū)時控制器實現(xiàn)分區(qū)操作的流程圖。
具體實施例方式
如圖1所示,一種支持分區(qū)的閃存存貯器件,具有普通閃存存貯器件的外形特征和接口信號定義,包括界面單元A、控制器B和存儲模塊C。
界面單元A一端用于與外界主機連接,另一端連接控制器B,界面單元A通常采用界面連接器或金手指。其接口信號定義根據(jù)不同的應(yīng)用可以符合不同的規(guī)范,如果是SD存儲卡,則為符合SD規(guī)范的界面單元;如果是MMC存儲卡,則為符合MMC規(guī)范的界面單元;如果是USB存貯器件,則為符合USB規(guī)范的界面單元,以此類推。
控制器B與存儲模塊C通過總線連接,控制器B和界面單元A一起,除了完成閃存的數(shù)據(jù)傳送和配置,狀態(tài)報告,界面功能及其兼容性,對存儲模塊的操作等,還具有支持對存儲模塊C進行分區(qū)操作的功能,可將存儲模塊C的總存儲區(qū)分成若干個區(qū)域,各區(qū)域均可單獨進行讀、寫、擦除、加密操作或設(shè)置屬性。該控制器B通??梢?但不限于)是一個單芯片的集成電路。
存儲模塊C用于接收和儲存數(shù)據(jù),通??捎靡粋€或多個閃存器件(至少一個)。存儲模塊C的容量大小決定了該存貯器件的容量大小。
控制器B完成對存儲模塊C的分區(qū)操作,包括以下步驟1)控制器B為存儲模塊C的總存儲區(qū)分配地址,按地址順序劃分成N個(N≥2)分存儲區(qū),分別為存儲區(qū)1,存儲區(qū)2....存儲區(qū)N。存儲區(qū)的大小數(shù)量根據(jù)用戶要求或?qū)嶋H需求決定;2)控制器B分別格式化每個分存儲區(qū),并針對每個分存儲區(qū)創(chuàng)建一個寄存器組作為該分存儲區(qū)的配置文件,寄存器組的每一個字節(jié)分別用于表示分存儲區(qū)的名字、起始地址、分區(qū)大小、分區(qū)文件格式等信息,針對N個存儲區(qū)制成N個配置文件;3)控制器B記憶每個配置文件的存放位置,并在其中一個分存儲區(qū)對應(yīng)的配置文件中設(shè)置標(biāo)志位,把該分存儲區(qū)定義為默認(rèn)存儲區(qū);4)控制器B為除默認(rèn)存儲區(qū)以外的其它分存儲區(qū)設(shè)置一個切換到該分存儲區(qū)操作的條件,如果滿足條件,控制器B則轉(zhuǎn)到該分存儲區(qū)操作,該條件可以是由主機發(fā)送的一個或幾個命令的組合,主機發(fā)送的命令根據(jù)閃存存貯器件應(yīng)用的類型符合相應(yīng)的規(guī)范;5)重新上電后,控制器B首先導(dǎo)入默認(rèn)存儲區(qū)的配置文件,接收并判斷主機發(fā)送的命令,如果接收的命令和順序符合標(biāo)準(zhǔn)規(guī)范,則在默認(rèn)存儲區(qū)完成命令指示;如果接收的命令和順序符合切換到某一分存儲區(qū)的條件,則根據(jù)記錄的配置文件存放的位置重新調(diào)用該分存儲區(qū)的配置文件,在該分存儲區(qū)完成命令指示;如果為復(fù)位命令,則重新調(diào)用默認(rèn)存儲區(qū)的配置文件。
本發(fā)明以將一張FLASH存儲卡分3個(N=3)存儲區(qū)來說明控制器的分區(qū)操作過程,首先要對該FLASH存儲卡進行配置,該過程也通過控制器實現(xiàn),其步驟如下1)把FLASH存儲卡的總存儲區(qū)按地址順序劃分成3個區(qū)域,分別為存儲區(qū)1,存儲區(qū)2,存儲區(qū)3;2)控制器格式化每個存儲區(qū),并把每個區(qū)域的起始地址、大小、文件格式等信息寫入FLASH存儲卡的CSD文件,制成三個不同的CSD文件,CSD文件為FLASH存儲卡規(guī)范中定義的專門用于存放FLASH存儲卡信息的寄存器組,本發(fā)明所要創(chuàng)建的配置文件可利用該文件中的保留字節(jié);3)控制器記錄這三個CSD文件存放的地址,并在存儲區(qū)1的配置文件中設(shè)置標(biāo)志位,把存儲區(qū)1定義為默認(rèn)存儲區(qū);4)控制器設(shè)切換到存儲區(qū)2的特定命令和序列,該特殊命令和序列需符合FLASH存儲卡規(guī)范;5)控制器設(shè)切換到存儲區(qū)3的特定命令和序列,該特殊命令和序列需符合FLASH存儲卡規(guī)范;控制器響應(yīng)主機的讀寫命令,完成分區(qū)操作的流程如圖21)重新上電后,控制器自動調(diào)用存儲區(qū)1的CSD文件。
2)FLASH存儲卡接收主機發(fā)送的命令,控制器首先判斷該命令是否為復(fù)位命令,如果不是,再判斷是否為符合切換到存儲區(qū)2的條件的特定命令和序列,如果也不是,再判斷該命令是否為符合切換到存儲區(qū)3的條件的特定命令和序列,如果也不是,則響應(yīng)命令,在存儲區(qū)1完成命令指示。
3)如果該命令是復(fù)位命令,控制器則重新調(diào)用存儲區(qū)1的CSD文件,等待接收下一個主機發(fā)送的命令,按2)的流程再判斷;4)如果該命令為符合切換到存儲區(qū)2的條件的特定命令和序列,控制器則重新調(diào)用存儲區(qū)2的CSD文件,等待接收下一個主機發(fā)送的命令,判斷是否為復(fù)位命令或存儲區(qū)切換命令,若是,按2)的流程再判斷,若否,則在存儲區(qū)2完成命令指示。
5)如果該命令為符合切換到存儲區(qū)3的條件的特定命令和序列,控制器則重新調(diào)用存儲區(qū)3的CSD文件,等待接收下一個主機發(fā)送的命令,判斷是否為復(fù)位命令或存儲區(qū)切換命令,若是,按2)的流程再判斷,若否,則在存儲區(qū)3完成命令指示。
當(dāng)N為其它值時,為每個存儲區(qū)制定配置文件,并為除劃分后的默認(rèn)存儲區(qū)以外的每個存儲區(qū)設(shè)定一個特定的鑒別命令和序列,分區(qū)流程圖類似。
當(dāng)把本發(fā)明所述的存貯器件應(yīng)用成一張存儲卡,并把該存儲卡的存儲空間一分為二,存儲區(qū)1作為個人用戶信息存放區(qū),存儲區(qū)2作為PDA商家預(yù)置程序的存儲區(qū)。商家在出廠之前,利用特定的主機發(fā)送切換到存儲區(qū)2的特定鑒別命令和序列,在存儲區(qū)2完成程序的預(yù)制和修改,還可予以加密。出廠后,當(dāng)該存儲卡一般使用時,普通用戶因為不知道進入存儲區(qū)2的特定命令和序列,所以只能訪問存儲區(qū)1,其讀、寫、擦、加密等操作都不會影響到存儲區(qū)2。當(dāng)廠家需要對其預(yù)制程序進行修改或升級時,只需再用特定主機發(fā)送符合切換到存儲區(qū)2的特定命令和序列,就可以在存儲區(qū)2完成操作。所以,該存儲卡很好地解決了前述將應(yīng)用程序預(yù)置于存儲卡,降低PDA等設(shè)備成本的想法,為類似的應(yīng)用提出了一種很好的解決方案。
在存貯器件初始化之時,根據(jù)用戶的分區(qū)操作,在為該存貯器件格式化的同時,制定每個存儲區(qū)的配置文件。并為用戶需要設(shè)置權(quán)限的區(qū)域預(yù)先設(shè)定一個特定的鑒別命令和序列。當(dāng)普通用戶訪問該存貯器件時,因為不能發(fā)送進入限制區(qū)域的特定命令和序列,所以只能訪問一般的存儲區(qū),不會影響到那些限制區(qū)。當(dāng)用戶要訪問經(jīng)過權(quán)限設(shè)定的存儲區(qū)時,必須先經(jīng)過身份鑒定,經(jīng)過身份鑒定后主機發(fā)送切換到該存儲區(qū)的特定命令和序列,此后該用戶才可以被允許訪問到該區(qū)域。所以,該存貯器件可以在同一個閃存存貯器件中分區(qū)存儲不同權(quán)限的信息。
如果不對本發(fā)明所述的閃存存貯器件進行分區(qū),即為現(xiàn)有技術(shù)上的閃存存貯器件,所以本發(fā)明所述的支持分區(qū)的閃存存貯器件能完全替代現(xiàn)有技術(shù)上的閃存存貯器件,且能滿足上文所述的一些特殊應(yīng)用,具有更為廣泛的應(yīng)用前景。
權(quán)利要求
1.一種支持分區(qū)的閃存存貯器件,包括界面單元(A)、控制器(B)和存儲模塊(C),界面單元(A)一端用于與外界主機連接,另一端連接控制器(B),控制器(B)與存儲模塊(C)通過總線連接,其特征在于所述的控制器(B)支持對存儲模塊(C)進行分區(qū)操作,可將存儲模塊(C)的總存儲區(qū)分成若干個分存儲區(qū),各分存儲區(qū)均可單獨進行讀、寫、擦除、加密操作或設(shè)置屬性。
2.如權(quán)利要求1所述的支持分區(qū)的閃存存貯器件,其特征在于所述的控制器(B)完成對存儲模塊(C)的分區(qū)操作,包括以下步驟1)控制器(B)為存儲模塊(C)的總存儲區(qū)分配地址,按地址順序劃分成若干個分存儲區(qū),控制器(B)分別格式化每個分存儲區(qū),并針對每個分存儲區(qū)創(chuàng)建一個寄存器組作為該分存儲區(qū)的配置文件,寄存器組的每一個字節(jié)分別用于表示分存儲區(qū)的名字、起始地址、分區(qū)大小、分區(qū)文件格式等信息;2)控制器(B)記憶每個分存儲區(qū)對應(yīng)的配置文件的存放地址,并在其中一個分存儲區(qū)對應(yīng)的配置文件中設(shè)置標(biāo)志位,把該分存儲區(qū)定義為默認(rèn)存儲區(qū);3)控制器(B)為除默認(rèn)存儲區(qū)以外的其它分存儲區(qū)設(shè)置一個切換到該分存儲區(qū)操作的條件,該條件可以是由主機發(fā)送的一個或幾個命令的組合,主機發(fā)送的命令格式根據(jù)閃存存貯器件應(yīng)用的類型符合相對應(yīng)的規(guī)范;4)對閃存存貯器件重新上電,控制器(B)首先導(dǎo)入默認(rèn)存儲區(qū)的配置文件,接收并判斷主機發(fā)送的命令,如果接收的命令符合與閃存存貯器件類型對應(yīng)的規(guī)范,則在默認(rèn)存儲區(qū)完成命令指示;如果接收的命令和順序符合切換到某一分存儲區(qū)的條件,則根據(jù)記錄的配置文件存放的位置重新調(diào)用該分存儲區(qū)的配置文件,在該分存儲區(qū)完成命令指示;如果為復(fù)位命令,則重新調(diào)用默認(rèn)存儲區(qū)的配置文件。
3.如權(quán)利要求1所述的支持分區(qū)的閃存存貯器件,其特征在于所述的界面單元(A)采用界面連接器或金手指,其接口信號定義根據(jù)閃存存貯器件應(yīng)用的類型符合相對應(yīng)的規(guī)范。
全文摘要
本發(fā)明公開了一種支持分區(qū)的閃存存貯器件,包括界面單元、控制器和存儲模塊,界面單元一端用于與外界主機連接,另一端連接控制器,控制器與存儲模塊通過總線連接,控制器支持對存儲模塊進行分區(qū)操作,可將存儲模塊的總存儲區(qū)分成若干個分存儲區(qū),各分存儲區(qū)均可單獨進行讀、寫、擦除、加密操作或設(shè)置屬性。根據(jù)本發(fā)明,人們可以將閃存存貯器件的存儲空間分成若干個不同大小的區(qū)域,也可以為每個區(qū)域設(shè)置不同的屬性,不會互相影響。
文檔編號G11C16/06GK1889189SQ20061005264
公開日2007年1月3日 申請日期2006年7月25日 優(yōu)先權(quán)日2006年7月25日
發(fā)明者駱建軍, 趙剛, 樓向雄 申請人:駱建軍, 趙剛, 樓向雄