機電之家資源網(wǎng)
單片機首頁|單片機基礎|單片機應用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓信息
贊助商
基于Blackfin處理器實現(xiàn)對硬盤FAT32文件系統(tǒng)的操作
基于Blackfin處理器實現(xiàn)對硬盤FAT32文件系統(tǒng)的操作
 更新時間:2008-8-3 15:47:54  點擊數(shù):6
【字體: 字體顏色


    

   Blackfin處理器是美國 Analog Devices公司推出的專為滿足當今嵌入式音頻、視頻和通信應用的計算要求和功耗約束條件而設計的新型嵌入式處理器。當Blackfin用于音視頻的處理時,大數(shù)據(jù)量媒體數(shù)據(jù)的存儲和管理便成為一個關鍵問題。在處理大容量數(shù)據(jù)存儲的方案中,使用最為普遍的便是IDE硬盤。而針對文件的管理,由于FAT32文件系統(tǒng)在大容量文件分區(qū)管理方面具有很高的性能,而且可以在大多數(shù)操作系統(tǒng)中被識別,因此具有很高的兼容性。所以IDE硬盤加上FAT32文件系統(tǒng)可以作為嵌入式系統(tǒng)大容量文件存儲管理的理想方案。本文主要闡述此方案基于Blackfin533處理器的硬件和軟件實現(xiàn)。硬件部分為基于ADSP-BF533 EZKIT Lite評估板設計的IDE接口擴展板;軟件部分包括基于擴展板和VisualDSP++ IDDE開發(fā)的IDE接口驅動程序和FAT32文件系統(tǒng)操作函數(shù)。
1 IDE硬盤原理
1.1 IDE硬盤的尋址

  硬盤的存儲結構如圖1所示。


  它的基本存儲單元叫作扇區(qū)(Sector),除此之外。硬盤還有兩個重要的組成部分就是磁頭(Head)和柱面(Cylinder),它們共同組成硬盤的尋址空間,其地址被稱為物理地址。顯然,物理地址尋址方式不夠直觀、現(xiàn)在的大多數(shù)硬盤都支持另外一種尋址方式,其地址被稱為邏輯地址(LBA),它把扇區(qū)順序編號,不必再考慮C、H、S等參數(shù)。LBA和C、H、S的換算關系如下:
  =NH×NS×C+NS×H+S-1;
  C=(LBA div NS)div NH;
  H=(LBA div NS)mod NH;
  S=(LBA mod NS)+1
  NH表示每個柱面的磁頭數(shù),NS表示每個磁道的扇區(qū)數(shù),C表示柱面數(shù)[1]
1.2 硬盤的引導原理
  硬盤分區(qū)的引導原理如圖2所示。


  硬盤的第一個扇區(qū)(0柱面,0磁頭,1扇區(qū))被稱作主引導扇區(qū)——MBR(Master Boot Record)。在MBR中,主要內容就是引導代碼和主分區(qū)表。主分區(qū)表只有四個分區(qū)表項,它們可以直接描述分區(qū),也可以通過擴展分區(qū)表進行擴展[2]。
  這種引導組織形式是與文件系統(tǒng)完全無關的,在每一個分區(qū)內,使用者可以根據(jù)自己的需要安裝任意的文件系統(tǒng)。但使用何種文件系統(tǒng)要在響應的分區(qū)表項內作記錄。
2 FAT32文件系統(tǒng)概述[2][4]
2.1 FAT文件系統(tǒng)

  FAT(File Allocation Table)文件系統(tǒng)是微軟在20世紀70年代末到80年代初發(fā)布的,由微軟的MS-DOS操作系統(tǒng)支持。在發(fā)展的過程中,出現(xiàn)了FAT12、FAT16、FAT32三個版本,其中,F(xiàn)AT12文件系統(tǒng)由于具有一些致命的缺點,很早就被FAT16取代了,而FAT16和FAT32目前還在廣泛使用。表1是三種文件系統(tǒng)的對比。


  FAT文件系統(tǒng)的原理可以簡單地描述為把存儲空間分塊映射到一個表中,從而實現(xiàn)對存儲空間的靈活支配。存儲空間中的每一個塊被稱作簇,存儲空間的映射表被稱作FAT表。三種FAT文件系統(tǒng)的一個明顯區(qū)別就是FAT表中表示一個簇所用的位數(shù)不同,分別是12、16和32。文件的存儲是不必連續(xù)的,但在FAT表中可用鏈表的形式把文件聯(lián)系在一起,如圖3所示。


  由于FAT文件系統(tǒng)目前在大部分操作系統(tǒng)上都給予了支持,而且實現(xiàn)起來簡單,所以是理想的嵌入式系統(tǒng)大容量存儲文件管理方案。
2.2 FAT32文件系統(tǒng)
  由于FAT16文件系統(tǒng)在大容量分區(qū)管理方面的效率急劇下降,而FAT32文件系統(tǒng)卻很好地解決了這個問題,所以在大分區(qū)管理方面,F(xiàn)AT32是理想的文件系統(tǒng)。


  FAT32文件系統(tǒng)在結構上延續(xù)了FAT文件系統(tǒng)的基本結構,如圖4所示,主要由以下三部分組成:
  (1) DBR(Dos Boot Record),包括跳轉指令、廠商標志、os版本號,BPB(Bios Parameter Block)、擴展BPB、引導程序和結束符;
  (2) FAT表,實際數(shù)據(jù)存儲空間的映射表,F(xiàn)AT1和FAT2完全一致,后者作為前者的備份;
  (3) 實際數(shù)據(jù)存儲空間,相比FAT16,從簇2不再有專門的根目錄空間,而是把根目錄也當作一個特殊的文件來處理,起始簇是2。
2.3 FAT32文件系統(tǒng)對文件的管理
  除了根目錄的所有文件(子目錄也作為一種特殊的文件存在)都對應一組數(shù)據(jù)作為文件描述,被稱為文件目錄項。每個目錄內的所有文件和子目錄的文件目錄項都存儲在這個目錄對應的存儲空間內,每一個文件目錄項有32個字節(jié),主要包括文件名、文件屬性、文件大小、文件存儲位置以及一系列的時間描述等。 把文件路徑、文件目錄項、FAT表聯(lián)系在一起就可以完全把握一個文件在硬盤的存儲情況。圖5所示是一個例子,通過下面的步驟定位文件的所有內容:
  (1) 通過路徑找到文件所在目錄的簇(a)。
  (2) 在目錄對應的空間(c)內比對文件名,找到文件對應的文件目錄項(d)。
  (3) 通過文件目錄項確定文件的起始簇和文件大小。
  (4) 根據(jù)FAT表內的簇鏈(b)確定文件的存儲空間(e)。


3 IDE硬盤接口設計
3.1 ADSP-BF533 EZKIT Lite評估板簡介[5]

  Blackfin533是美國Analog Devices公司開發(fā)的具有MISC體系的微處理器。這種體系是同時具有RISC指令集和DSP內核的一個集合,所以Blackfin533既可以作為通用嵌入式微處理器進行開發(fā)應用,又具有強大的DSP數(shù)據(jù)處理能力。
  ADSP-BF533 EZKIT Lite是Analog Devices公司為方便Blackfin533的開發(fā)應用而提供的評估板。它可以與PC機通過USB或者PCI接口的仿真器進行調試,操作使用簡單方便。評估板的核心是一片Blackfin533處理器,輸入頻率是27MHz,可以通過內部PLL控制工作在所需的工作頻率上,最高可達750MHz。
  ADSP-BF533 EZKIT Lite評估板的片上資源非常豐富。有32M SDRAM(16M×16bit)、2M Flash(512K×16bit×2);通過AD1836音頻處理芯片提供了四路音頻輸入和六路音頻輸出端口;通過ADV7183視頻解碼芯片和ADV7171視頻編碼芯片分別提供了三路視頻輸入和視頻輸出端口;此外,評估板還提供了UART、JTAG、按鈕電路和LED指示等設備,尤其是提供了一組功能齊全的擴展接口便于其它設備的接入。IDE接口電路就是在這組擴展接口的基礎上設計的。
3.2 硬件設計
  IDE接口擴展板的設計是基于Blackfin533芯片的EBIU(External Bus Interface Unit)設計的。
  EBIU是Blackfin533與外部存儲器之間的一個通用外部總線接口,通過對EBIU控制寄存器的設置,既可以連接SDRAM等同步存儲器,也可以連接ROM、FIFOs、Flash等異步存儲器。EBIU內部結構如圖6所示。

[1] [2] [3]  下一頁
  • 上一篇: 一種單片機控制的大功率鉛酸電池充電器設計
  • 下一篇: 基于NiosII的多通道PWM信號測量/產(chǎn)生器節(jié)點設計
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關文章
    網(wǎng)友評論:(只顯示最新5條。)
    關于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負責信息內容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯(lián)系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學會
    中國行業(yè)電子商務100強網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1