專利名稱:在計(jì)算機(jī)系統(tǒng)上仿真可攜式儲(chǔ)存裝置的存儲(chǔ)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種仿真儲(chǔ)存裝置的方法,尤其是一種在計(jì)算機(jī)系統(tǒng)上仿真可攜式儲(chǔ)存裝置的存儲(chǔ)方法。
背景技術(shù):
隨著科技日新月異,電子產(chǎn)品日益精良,以至錄音帶被鐳射唱片(CD)取代,錄影帶被DVD及其他個(gè)人錄影設(shè)備淘汰,至于電腦軟磁碟亦難逃這種命運(yùn)。雖然光盤和燒錄機(jī)可以提供更便宜的價(jià)格和更大的儲(chǔ)存容量,但是以USB為接口的儲(chǔ)存媒體,不但造型輕巧,且容易攜帶,因此比一般的光盤更受歡迎。根據(jù)Semico Research的研究報(bào)告指出,以USB接口和閃存(FlashMemory)為基礎(chǔ)的儲(chǔ)存裝置,在未來幾年內(nèi)將會(huì)快速成長,估計(jì)在2006年時(shí)市場規(guī)模將達(dá)到38億美元。
目前所謂的閃存在內(nèi)存的架構(gòu)上也可分為NAND Flash與NOR Flash。而目前的可攜式儲(chǔ)存裝置大約有Smart Media Card(SMC)、Secure Digital Card(SD)、Multi Media Card(MMC)、Memory Stick Card(MS)、Compact FlashType I/II(CF)及IBM Microdrive(MD)等六種主流的規(guī)格,這些規(guī)格的內(nèi)存同樣可以借助轉(zhuǎn)換接口運(yùn)作,使得計(jì)算機(jī)系統(tǒng)即可通過萬用串行總線(Universal Serial Bus,USB)接口進(jìn)行存取的動(dòng)作。
目前USB磁盤的應(yīng)用和測試的困難點(diǎn)之一就是必須有硬件結(jié)合方能進(jìn)行,這成為系統(tǒng)開發(fā)和測試的瓶頸,此外,由于可攜式儲(chǔ)存裝置的規(guī)格的多樣,使通訊軟件設(shè)計(jì)復(fù)雜度增加,軟件的通用性降低,難以設(shè)計(jì)出一種開放的存儲(chǔ)接口,以提供統(tǒng)一的接口。
綜上所述,目前開發(fā)可攜式儲(chǔ)存裝置,所能遭遇最大問題是如何將各種規(guī)格的可攜式儲(chǔ)存裝置,在不需要外部主機(jī),如PDA(個(gè)人數(shù)字助理機(jī)),而可以在計(jì)算機(jī)系統(tǒng)上直接地展現(xiàn)出來,甚至和實(shí)體的可攜式儲(chǔ)存裝置,如USB磁盤的表現(xiàn)完全一樣,這成為開發(fā)可攜式儲(chǔ)存裝置必須要解決的一個(gè)問題。
發(fā)明內(nèi)容
本發(fā)明為解決背景技術(shù)中存在的上述技術(shù)問題,而提供一種不需要外部主機(jī),即可在計(jì)算機(jī)系統(tǒng)上仿真可攜式儲(chǔ)存裝置進(jìn)行存取操作的存儲(chǔ)方法本發(fā)明的技術(shù)解決方案是一種在計(jì)算機(jī)系統(tǒng)上仿真可攜式儲(chǔ)存裝置的存儲(chǔ)方法,其特殊之處在于該方法包括以下步驟1)在計(jì)算機(jī)系統(tǒng)上預(yù)置一個(gè)可負(fù)責(zé)地址轉(zhuǎn)換,提供I/O接口讀寫操作的驅(qū)動(dòng)以及一個(gè)用戶接口;2)用戶通過該用戶接口選取文件,由用戶接口把該文件注冊為操作系統(tǒng)的一個(gè)磁盤設(shè)備,成功后形成虛擬磁盤;3)由驅(qū)動(dòng)建立一地址轉(zhuǎn)換層,通過地址轉(zhuǎn)換層,對虛擬硬盤進(jìn)行存取。
上述步驟3)的具體步驟如下31)計(jì)算機(jī)系統(tǒng)將待訪問虛擬磁盤內(nèi)容的邏輯地址傳給驅(qū)動(dòng);32)由驅(qū)動(dòng)通過地址轉(zhuǎn)換層將邏輯位址轉(zhuǎn)換成物理位址;33)由驅(qū)動(dòng)判斷所到取得物理位址是否有效;34)有效則至所取得的物理位址進(jìn)行存取,無效則進(jìn)至步驟35);35)結(jié)束存取。
利用本發(fā)明的存儲(chǔ)方法,可在沒有可攜式儲(chǔ)存裝置的情況下,在計(jì)算機(jī)上仿真可攜式儲(chǔ)存裝置,在計(jì)算機(jī)系統(tǒng)上虛擬一可直接地展現(xiàn)出來的仿真存儲(chǔ)裝置,在該仿真的存儲(chǔ)裝置上進(jìn)行數(shù)據(jù)的存取過程,使得開發(fā)可攜式儲(chǔ)存裝置的流程大大簡化。
具體實(shí)施例方式
本發(fā)明的方法包括以下步驟1)在計(jì)算機(jī)系統(tǒng)上預(yù)置一個(gè)可負(fù)責(zé)地址轉(zhuǎn)換,提供I/O接口讀寫操作的驅(qū)動(dòng)以及一個(gè)用戶接口;
2)用戶通過該用戶接口選取文件,由用戶接口把該文件注冊為操作系統(tǒng)的一個(gè)磁盤設(shè)備,成功后形成虛擬磁盤;3)由驅(qū)動(dòng)建立一地址轉(zhuǎn)換層,通過地址轉(zhuǎn)換層,對虛擬硬盤進(jìn)行存取。
其中步驟3)中地址轉(zhuǎn)換的具體步驟如下31)計(jì)算機(jī)系統(tǒng)將待訪問虛擬磁盤內(nèi)容的邏輯地址傳給驅(qū)動(dòng);32)由驅(qū)動(dòng)通過地址轉(zhuǎn)換層將邏輯位址轉(zhuǎn)換成物理位址;33)由驅(qū)動(dòng)判斷所到取得物理位址是否有效;34)有效則至所取得的物理位址進(jìn)行存取,無效則進(jìn)至步驟35);35)結(jié)束存取。
下面結(jié)合具體實(shí)施例對本發(fā)明做進(jìn)一步的祥述將以上的方法流程應(yīng)用系統(tǒng)架構(gòu)上(以Windows系統(tǒng)為例),通過在Windows系統(tǒng)預(yù)置一個(gè)可負(fù)責(zé)地址轉(zhuǎn)換,提供I/O接口讀寫操作的驅(qū)動(dòng)以及一個(gè)用戶接口,由用戶接口把用戶通過用戶接口選取的文件注冊為操作系統(tǒng)的一個(gè)磁盤設(shè)備,成功后形成的虛擬磁盤,該驅(qū)動(dòng)使Windows系統(tǒng)可以識(shí)別該虛擬磁盤。在Windows系統(tǒng)操作系統(tǒng)中,該驅(qū)動(dòng)為WDM框架,工作在Windows系統(tǒng)底層。在需要掛入虛擬磁盤時(shí)知會(huì)Windows系統(tǒng)中的輸入輸出設(shè)備管理程序,有新加入的輸入輸出設(shè)備。
在Windows需要進(jìn)行讀寫操作時(shí),驅(qū)動(dòng)通過轉(zhuǎn)換上層Windows不同輸出入(I/O)請求,對不同規(guī)格的可攜式儲(chǔ)存裝置的虛擬磁盤進(jìn)行不同的解析,并通過一個(gè)虛擬設(shè)備層(FTL層),進(jìn)行邏輯位址到物理位址的轉(zhuǎn)換,并過濾讀寫內(nèi)容。
在計(jì)算機(jī)系統(tǒng)中的進(jìn)行仿真時(shí),利用文件來替代最終的硬件層,該文件即為虛擬磁盤,也就是實(shí)際上的可攜式儲(chǔ)存裝置,該文件所仿真的虛擬磁盤的存取方式完全仿真相關(guān)的硬件,例如NAND架構(gòu)的閃存。
通過驅(qū)動(dòng)建立的地址轉(zhuǎn)換層實(shí)現(xiàn)虛擬磁盤地址的轉(zhuǎn)換,其包含了對硬件部分的讀寫操作,任何檔案系統(tǒng)只要通過地址轉(zhuǎn)換層就可以在虛擬磁盤上進(jìn)行存取操作,而不用考慮硬件的物理特性。
以容量為64MB的NAND架構(gòu)之閃存為例,其硬件的特性為由4096個(gè)區(qū)塊(BLOCK)組成,每個(gè)區(qū)塊又由32頁(PAGE)組成,每頁為512字節(jié)(BYTE)+16字節(jié),其中512字節(jié)為內(nèi)容的儲(chǔ)存區(qū)域,16字節(jié)為其它附加信息(REDUNDANT)。根據(jù)本發(fā)明的原理,地址轉(zhuǎn)換層即利用了此16字節(jié)的附加信息段。所以同樣的使用文件來仿真該部分,產(chǎn)生一個(gè)4096*32*(512+16)字節(jié)的文件來真實(shí)仿真NAND閃存,達(dá)到和操作硬件一樣的效果。
地址轉(zhuǎn)換層最重要的一個(gè)功能就是邏輯地址與物理地址的轉(zhuǎn)換,轉(zhuǎn)換過程遵循通用標(biāo)準(zhǔn)以達(dá)到與其它系統(tǒng)的兼容(如數(shù)字相機(jī)的儲(chǔ)存系統(tǒng)),仿真系統(tǒng)同樣遵循該標(biāo)準(zhǔn)進(jìn)行地址轉(zhuǎn)換動(dòng)作。
同樣以上述的64MB的NAND架構(gòu)的閃存為例,其中16字16字節(jié)的附加信息(B00~B15),B15~B12為保留字節(jié),B11為數(shù)據(jù)狀態(tài),B10為區(qū)塊狀態(tài),B09~B08及B04~B03為邏輯地址塊信息,B07~B05及B02~B00為本頁數(shù)據(jù)的錯(cuò)誤校正編碼校驗(yàn)值(ECC校驗(yàn)值)。進(jìn)行地址轉(zhuǎn)換時(shí)的依據(jù)就是B09~B08及B04~B03。
因此本發(fā)明使得任何檔案系統(tǒng)只要通過地址轉(zhuǎn)換層就可以進(jìn)行存取操作,而不用關(guān)心硬件的物理特性。在計(jì)算機(jī)系統(tǒng)平臺(tái)下,使用檔案來仿真實(shí)現(xiàn)可攜式儲(chǔ)存裝置各種規(guī)格等硬件特性,達(dá)到仿真的目的,以方便嵌入式系統(tǒng)的開發(fā)。
權(quán)利要求
1.一種在計(jì)算機(jī)系統(tǒng)上仿真可攜式儲(chǔ)存裝置的存儲(chǔ)方法,其特征在于該方法包括以下步驟1)在計(jì)算機(jī)系統(tǒng)上預(yù)置一個(gè)可負(fù)責(zé)地址轉(zhuǎn)換,提供I/O接口讀寫操作的驅(qū)動(dòng)以及一個(gè)用戶接口;2)用戶通過該用戶接口選取文件,由用戶接口把該文件注冊為操作系統(tǒng)的一個(gè)磁盤設(shè)備,成功后形成虛擬磁盤;3)由驅(qū)動(dòng)建立一地址轉(zhuǎn)換層,通過地址轉(zhuǎn)換層,對虛擬硬盤進(jìn)行存取。
2.根據(jù)權(quán)利要求1所述的在計(jì)算機(jī)系統(tǒng)上仿真可攜式儲(chǔ)存裝置的存儲(chǔ)方法,其特征在于所述步驟3)的具體步驟如下31)計(jì)算機(jī)系統(tǒng)將待訪問虛擬磁盤內(nèi)容的邏輯地址傳給驅(qū)動(dòng);32)由驅(qū)動(dòng)通過地址轉(zhuǎn)換層將邏輯位址轉(zhuǎn)換成物理位址;33)由驅(qū)動(dòng)判斷所到取得物理位址是否有效;34)有效則至所取得的物理位址進(jìn)行存取,無效則進(jìn)至步驟35);35)結(jié)束存取。
全文摘要
本發(fā)明涉及一種在計(jì)算機(jī)系統(tǒng)上仿真可攜式儲(chǔ)存裝置的存儲(chǔ)方法。該方法包括以下步驟1)在計(jì)算機(jī)系統(tǒng)上預(yù)置一個(gè)可負(fù)責(zé)地址轉(zhuǎn)換,提供I/O接口讀寫操作的驅(qū)動(dòng)以及一個(gè)用戶接口;2)用戶通過該用戶接口選取文件,由用戶接口把該文件注冊為操作系統(tǒng)的一個(gè)磁盤設(shè)備,成功后形成虛擬磁盤;3)由驅(qū)動(dòng)建立一地址轉(zhuǎn)換層,通過地址轉(zhuǎn)換層,對虛擬硬盤進(jìn)行存取。本發(fā)明為解決背景技術(shù)中存在的技術(shù)問題,而提供一種不需要外部主機(jī),即可在計(jì)算機(jī)系統(tǒng)上仿真可攜式儲(chǔ)存裝置進(jìn)行存取操作的存儲(chǔ)方法。
文檔編號(hào)G06F3/06GK1731338SQ20051004304
公開日2006年2月8日 申請日期2005年8月2日 優(yōu)先權(quán)日2005年8月2日
發(fā)明者陳淮琰, 吳平, 萬森森 申請人:無敵科技(西安)有限公司