DOSWindows档案系统与FlashMemory管理.ppt_第1页
DOSWindows档案系统与FlashMemory管理.ppt_第2页
DOSWindows档案系统与FlashMemory管理.ppt_第3页
DOSWindows档案系统与FlashMemory管理.ppt_第4页
DOSWindows档案系统与FlashMemory管理.ppt_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1,DOS/Windows 檔案系統與Flash/SmartMedia管理,2,大 綱,一、DOS/Windows檔案系統簡介 二、DOS/Windows檔案系統低階操作 三、Flash/SmartMedia的格式與特性 四、實做上需要注意的問題 五、SPCA 755 的硬體限制與NAND跨 Zone問題,new,3,DOS/Windows檔案系統簡介,Boot,OS對磁碟的規畫:一般磁碟經過 Fdisk和 Format之後結構如下圖,FAT1,FAT2,Root,1,0,10,19,33,軟碟,硬碟,PBS,FAT1,FAT2,Root,Data(cluster2,3,.),1,141h,241h,261h,40h,41h,Reserved,MBS,0,MBS: master boot sector(或稱 Partition table、master boot record),PBS : partition boot sector,Data(cluster2,3,.),sector位址:,sector : 512 byte的儲存單位,4,Master Boot Sector(Partition table、master boot record),Boot程式,Partition table 1,0,Partition table 4,Partition table 3,Partition table 2,55,AA,1BEh,1EEh,1DEh,1CEh,1FEh,1FFh,Byte offset:,5,Partition Boot Sector(1/2),6,Partition Boot Sector(2/2),7,DOS/Windows Directory Structure,FDB 0 (File Description Block),. . .,FDB 1,FDB n (佔 32 byte, 不考慮長檔名時),主檔名,副檔名,屬性,8,0,0Bh,0Ch,16h,Byte offset,reserved,Time,Date,第1個cluster No,長度,18h,1Ah,1Ch,bit 0: read only bit 1: hidden bit 2: system bit 3: volume label bit 4: directory bit 5: archive bit 6,7: reserved,8,File Allocation Table(FAT16),FDB 0,. . .,FDB 1,FDB n,abc,txt,屬性,reserved,Time,Date,clusterNo: 002,長度,Cluster 002 (abc.txt佔用的第1個cluster),Data區,FAT區,0000,0001,0002,0003,F8 FF,FF FF,00 04,00 00,Cluster 003 (free cluster),. . .,0004,. . .,FF FF,Cluster 004 (abc.txt佔用的第2個cluster),Data區,Root區,9,一、DOS/Windows檔案系統簡介 二、DOS/Windows檔案系統低階操作 三、Flash/SmartMedia的格式與特性 四、實做上需要注意的問題,10,DOS/Windows檔案系統低階編輯工具,* Hex WorkShop * Norton Utility DiskEdit * PcTools de.exe * DOS debug.exe,11,DOS/Windows檔案系統低階操作 (示範),* 觀察MBS、PBS、FAT、Root內容 * 修改檔案內容 * 建檔、寫檔、刪除檔案等,12,一、DOS/Windows檔案系統簡介 二、DOS/Windows檔案系統低階操作 三、Flash/SmartMedia的格式與特性 四、實做上需要注意的問題,13,Flash/SM Physical Organization,0,512,511,527,Byte offset:,14,Flash/SM使用上的特性,* Flash is essentially non-writable(must be erased before written) * Flash is erased in block (typically 16KB), larger than disk sector(512B). * Flash has a limited number of erase cycles( 1M times). * Flash is not 100% perfect. It need bad block management.,15,Flash/SM LBA for DOS/Windows,512527,LBA: Logical Block Address,PBA: Physical Block Address,16,LookUp Table : tranforming LBA to PBA,512527,17,Flash/SM Logical Format for FAT12,512527,CIS: Card Information Structure,IDI : Identify Drive Information,18,一、DOS/Windows檔案系統簡介 二、DOS/Windows檔案系統低階操作 三、Flash/SmartMedia的格式與特性 四、實做上需要注意的問題,19,實做上需要注意的問題,* 修改Block中的任一byte資料都需要erase整個block 再重寫。經常性地修改FAT是不可避免的。 * LookUp Table : 以32M SM為例,完整需4KB RAM * free space、bad Sector的管理 *在資源有限的小型系統上實做,考量執行效率 與RAM的限制,需要尋求特殊的解決方案。,20,幾個尋求Solution的方向,* 功能上的限制 : support CreateFile、AppendFile、 DeleteFile 、 .,不允許ModifyFile、。 * Updating into empty blocks to reduce RAM demand * 利用PC資源 : download時可行,但錄音時無法。 * Using 1 or 2 block as bad block for LookUp table. * 利用少量RAM作 LookUp table及FAT的Cache。 * .,21,一、DOS/Windows檔案系統簡介 二、DOS/Windows檔案系統低階操作 三、Flash/SmartMedia的格式與特性 四、實做上需要注意的問題 五、SPCA 755 的硬體限制與NAND跨 Zone問題,22,IC硬體限制與NAND跨Zone問題,1. Total 6K Sram (含1K DMA buffer), no DRAM。 只能記錄一個zone的lookUp table 2. 自NAND(SMC)建lookUp table一個zone約需12秒。 3. 用reaserve Block儲存lookUp,一個zone約需數十ms 4. 1K DMA buffer配置: 512 byte G_ucStorData (C-area 另用16 byte陣列) 512 byte FAT cache buffer 5. 目前尚可改進處: 無法全部用DMA自reserve Block存取lookup SMC_Card2SramForExt( )會破壞buffer 保留SRAM一部份盡量Allocate夠多的cluster 6. 自SPCA533程式修改之提要,23,利用reserve Block儲存LookUp Table,24,FAT Cache Buffer,1. SRAM address 0x16000x17FF 2. Direct DMA R/W from Flash DOS FAT sectors。 與 G_ucStorData 視所在的位址交替使用 3. 修改於SMC_Card2Sram( ), SMC_Sram2Card ( ) CF_LCard2Sram( ), CF_LSram2Card( ) SD_LCard2Sram( ), SD_LSram2Card( ) MMC_LCard2Sram( ), MMC_LSram2Card( ) 4. 另SMC_Card2SramForExt( )目前會破壞之,須思 克服之道,否則此Cache功能發揮受限,25,DMA to SRAM 的限制造成的問題,DMA只能對0x14000x17FF 1K區域運作。 2. G_SMC_AllocatTable size 2K, 無法全用DMA 3. SMC_MakeTableToReserveBlock( ) SMC_MakeTableFromReserveBlock( ) 兩者均借用G_ucStorData 中介,測試上發現多耗約22 ms. for 1 zone lookUp R or W.,Reserve Blocks,NAND Flash,G_ucStorData ,AllocateTable EntryTable,DMA,Byte bye Byte,26,保留SRAM一部份盡量Allocate夠多的Cluster,資料夠分散時還是會有不能cover的情況 配合主程式做 time-sharing架構,利用與DSP間溝通的idle時間,把跨zone時reallocate lookUp的部分切成分段來做,可能有機會再加快讀寫效能,不過根本的問題是MP3播放時,資料讀出Flash必須要快於送給DSP,以384K bps為例,至少需快於10 ms/sector. 否則即使全部時間都用來讀Flash也不夠。另將目前整個DOS架構再大翻修一遍,工程不小。,27,利用reserve Block Allocate全部的 free Cluster,不像SRAM僅能allocate盡量多,這裡將全部free cluster、或file cluster的physical address都建在NAND上,萬無一失,剩下的問題是耗時間的問題,似乎僅有啟始花較多時間而已。,28,測試數據,硬體:24MHz 8051 clock for SPCA755 韌體:SP

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论