新聞中心

        EEPW首頁 > 汽車電子 > 設計應用 > 基于TMS320LF2407A支持FAT32文件系統嵌入式軟件的實現

        基于TMS320LF2407A支持FAT32文件系統嵌入式軟件的實現

        作者:■北京理工大學電子工程系 王海軍 安建平 卜祥元 時間:2004-11-04 來源:電子設計應用2003年第6期 收藏

        摘   要: 本文介紹了 文件系統結構,分析了基于支持 文件系統結構的嵌入式軟件實現。
        關鍵詞: 

        本文引用地址:http://www.104case.com/article/3709.htm

        引言
        近幾年來,隨著閃爍存儲技術的進步,由于Flash閃爍存儲體系具有容量大和功耗低等優點,被廣泛用于數碼相機、媒體播放器和PDA等各種數碼產品中。當前各種流行的嵌入式操作系統雖然功能完備,但在許多具體的應用中,仍需要編寫特定的系統控制軟件。數碼產品中一個必要的軟件模塊就是對一種或多種文件系統的支持。FAT32文件系統被Windows和Linux等當前流行的PC操作系統廣泛支持,這也是許多數碼產品選擇FAT32的原因。本文介紹了FAT32文件系統結構和基于 TMS320LF2407A為硬件平臺支持 FAT32文件系統結構的嵌入式軟件實現。

        圖1  FAT32文件系統的實現機制

        FAT32文件系統結構簡介
        單FAT32分區的磁盤或閃爍存儲器(以下沒有特殊情況均指單FAT32分區情況)由主引導區(MBR)、系統引導區、文件分配表FAT1、文件分配表備份FAT2、文件根目錄FDT和文件數據區組成,它們在磁盤上是順序分布的,如圖1所示。
        主引導區從物理第一扇區開始,記錄了第一磁盤分區的入口和剩余磁盤分區的入口信息、第一分區的文件系統格式、起始扇區號和大小。接下來就是FAT32文件系統的引導區,存放著BPB參數和系統引導程序,如圖1左上方表格所示。然后是文件分配表及其備份FAT1和FAT2,用于管理和分配文件區的磁盤空間,其位置和大小由系統引導區中的參數計算可得。簇是FAT表給文件分配磁盤空間的最小單位,每個簇在FAT表中占有一個登記項,簇的編號與FAT登記項的編號一一對應。FAT表從第2個表項開始分配給文件,最開始兩個表項即序號為0和1的表項為保留表項值為:0FFFFFF8和FFFFFFFF。其它的表項則以鏈表的形式存放下一個在邏輯上連續的簇號值,結束用0FFFFFFF標記表示不再有后續的表項,用00000000表示該簇沒有被使用,FAT管理磁盤空間的工作機理如圖1所示。磁盤空間的最后的部分為根目錄和文件區,根目錄FDT、普通文件目錄和文件具體內容由FAT表統一管理,與FAT16文件系統為根目錄劃出專用的磁盤空間不同,這也是FAT32與FAT16的最大區別之一。在系統引導區第一扇區偏移量為2Ch處存放著根目錄的入口簇號,根據FAT32系統信息可計算出根目錄的具體位置,一般根目錄的入口簇號為00000002。FAT32文件系統的文件登記表格式請參考圖1,限于篇幅這里不介紹超長文件名。
        另外,對于支持ATA協議標準塊存儲設備有物理尋址(CHS)和邏輯尋址(LBA)兩種方式。在物理尋址方式下,存儲空間通過磁頭(Head)、柱面(Cylinder)和扇區(Sector)三個參數組織起來的,每一組H/C/S參數唯一確定存儲載體中的一個扇區,通常一個扇區擁有512個字節的數據空間。邏輯尋址方式下,按照連續的邏輯扇區編號進行尋址,使用28個數據位來表示邏輯扇區的地址。下面給出物理尋址方式與邏輯尋址方式的對應關系,設NS為每磁道扇區數,NH為磁頭數,C、H、S分別表示磁盤的柱面、磁頭和扇區編號,LBA表示邏輯扇區號,Div為整除計算,mod為求余計算,則:LBA=NH



        關鍵詞: DSP FAT32 TMS320LF2407A

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 哈尔滨市| 浪卡子县| 辽阳县| 石屏县| 宜川县| 巴青县| 浪卡子县| 四平市| 修武县| 扶余县| 克山县| 平和县| 河源市| 新河县| 玉山县| 宁津县| 桂平市| 阳山县| 宁海县| 河西区| 达拉特旗| 嘉义市| 商城县| 原平市| 荔浦县| 肇源县| 思茅市| 通河县| 湄潭县| 大石桥市| 甘谷县| 容城县| 石城县| 庄浪县| 林芝县| 崇礼县| 丰城市| 鹤山市| 绥宁县| 丹东市| 于都县|