適宜于嵌入式多媒體應(yīng)用的Flash文件系統(tǒng)
發(fā)布時間:2008/5/26 0:00:00 訪問次數(shù):2019
來源:電子技術(shù)應(yīng)用 作者:清華大學 董 明 劉 加 劉潤生摘要:嵌入式多媒體應(yīng)用中大量數(shù)據(jù)存儲在flash上,本文以文件系統(tǒng)的方案解決數(shù)據(jù)存儲的管理問題。對嵌入式多媒體應(yīng)用中flash文件系統(tǒng)的應(yīng)用特點與關(guān)鍵設(shè)計進行了分析,設(shè)計實現(xiàn)了一個功能完整的文件代號管理、文件指針存取以及對應(yīng)用透明的自動壞損管理的文件系統(tǒng)。針對嵌入式系統(tǒng)應(yīng)用的需要,改進了本flash文件系統(tǒng)的應(yīng)用可靠性,降低了其系統(tǒng)資源開銷。針對多媒體應(yīng)用的數(shù)據(jù)特點,提出了存儲內(nèi)容自適應(yīng)的環(huán)境管理策略。仿真與實用的效果表明,本flash文件系統(tǒng)適宜于嵌入式多媒體應(yīng)用。
關(guān)鍵詞:嵌入式系統(tǒng) 多媒體flash存儲器 文件系統(tǒng)隨著電子技術(shù)的不斷發(fā)展,嵌入式系統(tǒng)越來越多地在控制類、消費類、通訊類等電子產(chǎn)品廣泛應(yīng)用,并且隨著數(shù)字信號處理與人機交互界面等相關(guān)技術(shù)的不斷成熟,嵌入式多媒體應(yīng)用數(shù)量也逐漸上升。多媒體業(yè)務(wù)的數(shù)據(jù)量大,數(shù)據(jù)內(nèi)容復(fù)雜,在多媒體應(yīng)用中數(shù)據(jù)的存儲與管理是不容回避的問題。flash存儲器制造成本低廉、存儲容量大、數(shù)據(jù)非易失、無機械故障,在目前的嵌入式系統(tǒng)中被廣泛用作外存儲器件。然而flash存儲器卻是一種數(shù)據(jù)正確性非理想的器件,應(yīng)用中可能會出現(xiàn)壞損數(shù)據(jù)單元,這又給應(yīng)用flash存儲器嵌入式系統(tǒng)進行數(shù)據(jù)存儲管理增添了新的難度[1]。
在嵌入式系統(tǒng)中應(yīng)用flash存儲器最好的辦法是在其上構(gòu)造一個文件系統(tǒng),對flash存儲器中的數(shù)據(jù)內(nèi)容進行基于文件代號的存儲管理,同時對于flash存儲器本身的壞損單元自動進行應(yīng)用透明的壞損管理。目前在通用計算機上已經(jīng)有很多成熟的文件系統(tǒng),如dos下的fat文件系統(tǒng)、windows nt下的ntfs文件系統(tǒng)及unix文件系統(tǒng)等[2]。但是這些文件系統(tǒng)并不適合直接用到嵌入式系統(tǒng)中進行多媒體數(shù)據(jù)內(nèi)容的存儲:第一,嵌入式系統(tǒng)的應(yīng)用條件遠比計算機惡劣,電源電壓的不穩(wěn)定以及突發(fā)性斷電將對flash的存儲造成災(zāi)難性的影響,通用文件系統(tǒng)對于可靠性的設(shè)計考慮不足;第二,通用文件系統(tǒng)是針對系統(tǒng)資源非常豐富的計算機平臺并基于速度較慢的磁盤驅(qū)動器,它們常常大量使用緩存技術(shù),如注重文件系統(tǒng)的速度特性,要耗費比較多的系統(tǒng)資源。這與嵌入式系統(tǒng)中系統(tǒng)資源十分有限,flash存儲器又相對于磁盤驅(qū)動器較快的應(yīng)用情況不用;第三,嵌入式系統(tǒng)中存儲于flash上的內(nèi)容很多是多媒體數(shù)據(jù)資料,這些數(shù)據(jù)內(nèi)容往往雞一定程度的誤碼損傷,未必需要如通用文件系統(tǒng)那樣嚴格保證存儲的正確性。通過靈活的校驗機制與壞損管理,達到更優(yōu)化的存儲速度與更高效的存儲空間利用,這對成本敏感的嵌入式系統(tǒng)來說尤其具有幫助。
基于上述考慮,設(shè)計了一個適合嵌入式多媒體應(yīng)用的flash文件系統(tǒng)。它不僅支持文件代號管理、文件指針存取以及應(yīng)用透明的自動壞損管理這些通用文件系統(tǒng)所具有的功能,并且在文件系統(tǒng)的可靠性以及文件系統(tǒng)的額外資源消耗方面進行了改善;此外還引入了基于存儲內(nèi)容自適應(yīng)的壞損管理策略,從而使該flash文件系統(tǒng)更加適合嵌入式多媒體應(yīng)用。
1 flash存儲器的操作特點flash存儲器在讀取方面與普通的sram存儲器類似,一般可以實現(xiàn)完全隨機的讀取。flash存儲器最大的不同在于寫操作方面。flash存儲器的寫操作需要經(jīng)過“擦除—寫入”兩個操作過程。當希望對flash存儲器的某一個單元進行寫入時,首先必須對這個存儲單元所在的區(qū)塊(block)執(zhí)行擦除操作,擦除操作成功完成后,整個區(qū)塊的數(shù)據(jù)內(nèi)容都被清空(一般被設(shè)置成0xff);然后對目的單元所在的頁面(page)執(zhí)行寫入操作,需要一次寫入整個頁面的全部數(shù)據(jù)內(nèi)容(也有一次flash存儲器支持部分頁的寫入,這樣可以分多次寫完一個頁面,但是一旦寫過的存儲單元數(shù)據(jù)就不能再被更改),操作成功后要進行數(shù)據(jù)正確性的校驗。
一個區(qū)域(block)包含一個或多個頁面(page),一個頁面包含多個數(shù)據(jù)存儲單元(字節(jié)或字)。
為了增強所設(shè)計flash文件系統(tǒng)在不同flash存儲器上的移植能力,選取了3個最基本的操作作為本flash文件系統(tǒng)與flash存儲器設(shè)備的應(yīng)用接口:區(qū)塊擦除(block_erase)、頁面寫入(page_write)、頁面讀出(page_read)。這樣雖然可能會忽略某些flash存儲器產(chǎn)品的獨有特性,但卻增加了所設(shè)計的flash文件系統(tǒng)對同flash存儲器產(chǎn)生的適應(yīng)能力。另外,flash存儲器寫入的時間瓶不在于數(shù)據(jù)傳遞,而是flash存儲器內(nèi)部的擦除和寫操作等;flash存儲器讀出的速度和微處理器處理數(shù)據(jù)的速度都很快,因此雖然將讀和寫的基本單位擴大到了頁面,但額外增加的操作時間是很短的。
2 flash文件系統(tǒng)的基本結(jié)構(gòu)本flash文件系統(tǒng)在基本結(jié)構(gòu)上與ms-dos的fat文件系統(tǒng)類似[3]。ms-dos是一個應(yīng)用于幾十年的商業(yè)化軟件產(chǎn)品,其fat文件系統(tǒng)技術(shù)成熟、結(jié)構(gòu)簡單、系統(tǒng)資源開銷小,易于在嵌入式系統(tǒng)的硬件平
來源:電子技術(shù)應(yīng)用 作者:清華大學 董 明 劉 加 劉潤生摘要:嵌入式多媒體應(yīng)用中大量數(shù)據(jù)存儲在flash上,本文以文件系統(tǒng)的方案解決數(shù)據(jù)存儲的管理問題。對嵌入式多媒體應(yīng)用中flash文件系統(tǒng)的應(yīng)用特點與關(guān)鍵設(shè)計進行了分析,設(shè)計實現(xiàn)了一個功能完整的文件代號管理、文件指針存取以及對應(yīng)用透明的自動壞損管理的文件系統(tǒng)。針對嵌入式系統(tǒng)應(yīng)用的需要,改進了本flash文件系統(tǒng)的應(yīng)用可靠性,降低了其系統(tǒng)資源開銷。針對多媒體應(yīng)用的數(shù)據(jù)特點,提出了存儲內(nèi)容自適應(yīng)的環(huán)境管理策略。仿真與實用的效果表明,本flash文件系統(tǒng)適宜于嵌入式多媒體應(yīng)用。
關(guān)鍵詞:嵌入式系統(tǒng) 多媒體flash存儲器 文件系統(tǒng)隨著電子技術(shù)的不斷發(fā)展,嵌入式系統(tǒng)越來越多地在控制類、消費類、通訊類等電子產(chǎn)品廣泛應(yīng)用,并且隨著數(shù)字信號處理與人機交互界面等相關(guān)技術(shù)的不斷成熟,嵌入式多媒體應(yīng)用數(shù)量也逐漸上升。多媒體業(yè)務(wù)的數(shù)據(jù)量大,數(shù)據(jù)內(nèi)容復(fù)雜,在多媒體應(yīng)用中數(shù)據(jù)的存儲與管理是不容回避的問題。flash存儲器制造成本低廉、存儲容量大、數(shù)據(jù)非易失、無機械故障,在目前的嵌入式系統(tǒng)中被廣泛用作外存儲器件。然而flash存儲器卻是一種數(shù)據(jù)正確性非理想的器件,應(yīng)用中可能會出現(xiàn)壞損數(shù)據(jù)單元,這又給應(yīng)用flash存儲器嵌入式系統(tǒng)進行數(shù)據(jù)存儲管理增添了新的難度[1]。
在嵌入式系統(tǒng)中應(yīng)用flash存儲器最好的辦法是在其上構(gòu)造一個文件系統(tǒng),對flash存儲器中的數(shù)據(jù)內(nèi)容進行基于文件代號的存儲管理,同時對于flash存儲器本身的壞損單元自動進行應(yīng)用透明的壞損管理。目前在通用計算機上已經(jīng)有很多成熟的文件系統(tǒng),如dos下的fat文件系統(tǒng)、windows nt下的ntfs文件系統(tǒng)及unix文件系統(tǒng)等[2]。但是這些文件系統(tǒng)并不適合直接用到嵌入式系統(tǒng)中進行多媒體數(shù)據(jù)內(nèi)容的存儲:第一,嵌入式系統(tǒng)的應(yīng)用條件遠比計算機惡劣,電源電壓的不穩(wěn)定以及突發(fā)性斷電將對flash的存儲造成災(zāi)難性的影響,通用文件系統(tǒng)對于可靠性的設(shè)計考慮不足;第二,通用文件系統(tǒng)是針對系統(tǒng)資源非常豐富的計算機平臺并基于速度較慢的磁盤驅(qū)動器,它們常常大量使用緩存技術(shù),如注重文件系統(tǒng)的速度特性,要耗費比較多的系統(tǒng)資源。這與嵌入式系統(tǒng)中系統(tǒng)資源十分有限,flash存儲器又相對于磁盤驅(qū)動器較快的應(yīng)用情況不用;第三,嵌入式系統(tǒng)中存儲于flash上的內(nèi)容很多是多媒體數(shù)據(jù)資料,這些數(shù)據(jù)內(nèi)容往往雞一定程度的誤碼損傷,未必需要如通用文件系統(tǒng)那樣嚴格保證存儲的正確性。通過靈活的校驗機制與壞損管理,達到更優(yōu)化的存儲速度與更高效的存儲空間利用,這對成本敏感的嵌入式系統(tǒng)來說尤其具有幫助。
基于上述考慮,設(shè)計了一個適合嵌入式多媒體應(yīng)用的flash文件系統(tǒng)。它不僅支持文件代號管理、文件指針存取以及應(yīng)用透明的自動壞損管理這些通用文件系統(tǒng)所具有的功能,并且在文件系統(tǒng)的可靠性以及文件系統(tǒng)的額外資源消耗方面進行了改善;此外還引入了基于存儲內(nèi)容自適應(yīng)的壞損管理策略,從而使該flash文件系統(tǒng)更加適合嵌入式多媒體應(yīng)用。
1 flash存儲器的操作特點flash存儲器在讀取方面與普通的sram存儲器類似,一般可以實現(xiàn)完全隨機的讀取。flash存儲器最大的不同在于寫操作方面。flash存儲器的寫操作需要經(jīng)過“擦除—寫入”兩個操作過程。當希望對flash存儲器的某一個單元進行寫入時,首先必須對這個存儲單元所在的區(qū)塊(block)執(zhí)行擦除操作,擦除操作成功完成后,整個區(qū)塊的數(shù)據(jù)內(nèi)容都被清空(一般被設(shè)置成0xff);然后對目的單元所在的頁面(page)執(zhí)行寫入操作,需要一次寫入整個頁面的全部數(shù)據(jù)內(nèi)容(也有一次flash存儲器支持部分頁的寫入,這樣可以分多次寫完一個頁面,但是一旦寫過的存儲單元數(shù)據(jù)就不能再被更改),操作成功后要進行數(shù)據(jù)正確性的校驗。
一個區(qū)域(block)包含一個或多個頁面(page),一個頁面包含多個數(shù)據(jù)存儲單元(字節(jié)或字)。
為了增強所設(shè)計flash文件系統(tǒng)在不同flash存儲器上的移植能力,選取了3個最基本的操作作為本flash文件系統(tǒng)與flash存儲器設(shè)備的應(yīng)用接口:區(qū)塊擦除(block_erase)、頁面寫入(page_write)、頁面讀出(page_read)。這樣雖然可能會忽略某些flash存儲器產(chǎn)品的獨有特性,但卻增加了所設(shè)計的flash文件系統(tǒng)對同flash存儲器產(chǎn)生的適應(yīng)能力。另外,flash存儲器寫入的時間瓶不在于數(shù)據(jù)傳遞,而是flash存儲器內(nèi)部的擦除和寫操作等;flash存儲器讀出的速度和微處理器處理數(shù)據(jù)的速度都很快,因此雖然將讀和寫的基本單位擴大到了頁面,但額外增加的操作時間是很短的。
2 flash文件系統(tǒng)的基本結(jié)構(gòu)本flash文件系統(tǒng)在基本結(jié)構(gòu)上與ms-dos的fat文件系統(tǒng)類似[3]。ms-dos是一個應(yīng)用于幾十年的商業(yè)化軟件產(chǎn)品,其fat文件系統(tǒng)技術(shù)成熟、結(jié)構(gòu)簡單、系統(tǒng)資源開銷小,易于在嵌入式系統(tǒng)的硬件平
熱門點擊
- 串行DataFlash存儲器及其與單片機的接
- 延長EEPROM使用壽命的方法
- 智能測量系統(tǒng)中的海量數(shù)據(jù)存儲技術(shù)
- 存儲器類型綜述及DDR接口設(shè)計的實現(xiàn)
- 嵌入式系統(tǒng)中的Flash存儲管理
- 鐵電存儲器在儀表中的應(yīng)用
- DSP處理器與FLASH存儲器的接口設(shè)計
- TrueFFS原理及其在CF卡上的實現(xiàn)
- 一種基于鐵電存儲器的雙機串行通信技術(shù)
- 多端口存儲器在多機系統(tǒng)中的應(yīng)用
推薦技術(shù)資料
- 循線機器人是機器人入門和
- 循線機器人是機器人入門和比賽最常用的控制方式,E48S... [詳細]
- 分立器件&無源元件選型及工作原
- 新一代“超越EUV”光刻系統(tǒng)參
- 最新品BAT激光器制造工藝設(shè)計
- 新款汽車SoC產(chǎn)品Malibo
- 新芯片品類FPCU(現(xiàn)場可編程
- 電動汽車動力總成系統(tǒng)̴
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究