色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

您好,歡迎來電子發燒友網! ,新用戶?[免費注冊]

您的位置:電子發燒友網>電子百科>存儲設備>閃存卡>

各分區宏定義 - NAND Flash嵌入式存儲系統設計

2011年04月25日 11:10 本站整理 作者:Spring 用戶評論(0
2.2 各分區宏定義

  #define FLASH_BLOCK_SIZE 0x40000 //16 KB/Block

  #define FLASH_PAGE_SIZE 0x200 //512 B/Page

  #define FLASH_SECTOR_SIZE 0x200

  //1Page=1Sector(only K9F2808U0C)

  #define FLASH_BLOCKS_TABLE 3//壞塊映射表存放塊數

  #define FLASH_SWAP_BLOCKS 5 //交換區的塊數

  #define FLASH_BAD_BLOCKS_REMAP 50

  //壞簇重映區的塊數

  #define FLASH_MAX_ADDR 0xFFFFFF

  //Flash最大字節地址

  各分區首地址計算公式:

  FLASH_BLOCK_TABLE_ADDR=FLASH_MAX_ADDR+

  1-3*FLASH_BLOCK_SIZE);

  FLASH_SWAP_BLOCK_ADDR=(FLASH_BLOCK_

  TABLE_ADDR-5*FLASH_BLOCK_SIZE);

  FLASH_BAD_BLOCK_REMAP_ADDR=(FLASH_SWAP_

  BLOCK_ADDR-50*FLASH_BLOCK_SIZE);

  FLASH_MAX_SECTOR_ADDR=(FLASH_MAX_ADDR-

  3*FLASH_BLOCK_TABLE_ADDR-5*FLASH_SWAP_

  BLOCK_ADDR-50*FLASH_BAD_BLOCK_REMAP_ADDR);

  文件系統管理的最大字節地址。

  任意地址Addr:

  所在塊地址:Addr&(~(FLASH_BLOCK_SIZE-1));

  塊內偏移地址:Addr&(FLASH_BLOCK_SIZE-1);

  塊中的頁:(Addr&(FLASH_BLOCK_SIZE-1))/FLASH_

  PAGE_SIZE;

  2.3 分區功能設計

  壞塊映射區存放復制3份的壞塊信息BBI(Bad Block Information)表。復制3份是預防系統突然斷電,造成BBI表數據丟失。選擇最后3個塊,主要是出于固件設計。當Flash首次上電,固件程序通過讀取Flash ID,獲得設備的容量等信息,然后從Flash的最后一塊中尋找BBI表,如果最后一塊沒有發現BBI表,則認為此塊為壞塊,繼續前移尋找,依此類推,直到在預留的3個塊中找到,并將其數據讀入到在主控芯片為其開設的RAM中。如果還找不到,則固件認為該片Flash沒有BBI表。

  交換塊區是對NAND Flash進行擦除或寫操作時用來臨時存放數據,共分配5個塊。選取5塊是出于可靠性設計。用一個數組FlashSwapBlockStatus[FLASH_SWAP_BLOCKS]記錄交換塊狀態:有效還是已經損壞。初始化時,固件認為所有的交換塊都是有效塊,在隨后對其進行擦除或寫操作時,通過讀Flash狀態寄存器判斷該交換塊的真實狀態,并記錄在數組中。交換塊的管理圍繞固件請求返回當前可用交換塊地址或當前正在使用的交換塊地址,并判斷標記當前使用的交換塊狀態為壞。

  壞塊映射區是當主機向數據區寫數據時,檢測到當前塊(數據區)為壞塊時,將數據寫到壞塊映射區中的相應好塊中,并且將這兩個塊的塊地址記錄到BBI表中,以后主機若要對當前塊(數據區)訪問時,只需讀BBI表就可以找到相應映射塊,從而代替壞塊的訪問。這樣就使文件系統所見邏輯塊地址LBA(Logical Block Address)變成連續的,但實際上物理塊地址PBA(Physical Block Address)可能并不連續。上述方法就是壞塊管理的精髓。出于保守設計本文共選50塊作為重映塊。用數組FlashRemapBlockStatus[FLASH_BAD_BLOCKS_REMAP]標識壞塊映射區的狀態:未使用、已使用還是已經損壞。初始化時認為壞塊映射區中所有塊都是好塊。

  目前市場上閃存芯片主要有兩類,即NAND Flash(Not And Flash ROM)和NOR Flash(Not Or Flash ROM)。前者具有容量大、讀寫速度快、芯片面積小、單元密度高、擦除速度快、成本低等特點,更適合于大批量數據存儲的嵌入式系統。如今Windows仍是桌面系統的主流,對FAT文件系統提供了天然的支持。然而就技術而言,FAT文件系統并不適合Flash,因為Flash設備并不是塊設備[1],為了不破壞兼容性,并在NAND型閃存中應用FAT文件系統,國際上提出了閃存轉譯層FTL(Flash Translation Layer)的解決方案。

非常好我支持^.^

(1) 100%

不好我反對

(0) 0%

( 發表人:Spring )

      發表評論

      用戶評論
      評價:好評中評差評

      發表評論,獲取積分! 請遵守相關規定!

      ?
      主站蜘蛛池模板: 国产精自产拍久久久久久蜜 | 亚洲AV色香蕉一区二区9255 | 亚洲福利网站 | 国产爱豆果冻传媒在线观看 | 小货SAO边洗澡边CAO你动漫 | 撅高 自己扒开 调教 | 欧美一区二区影院 | 日本三级黄色大片 | 麻豆免费观看高清完整视频在线 | 久久国产精品萌白酱免费 | 久久国产精品萌白酱免费 | 一个人免费视频在线观看 | 美女内射视频WWW网站午夜 | 99免费精品 | 精品国产乱码久久久久久免费流畅 | 国精产品砖一区二区三区糖心 | 亚洲高清在线精品一区 | 最近中文字幕2018MV高清在线 | 帅哥男男GV在线1080P | 某上海少妇3P黑人完整版BD | 欧美亚洲韩日午夜 | yellow日本动漫免费观看 | 精品欧美一区二区三区久久久 | 成人免费观看www视频 | 三级黄.色 | 国产国拍亚洲精品永久软件 | 亚洲国产高清福利视频 | 中文字幕亚洲无线码在线 | 帅小伙和警官同性3p | 久久精品中文字幕 | 一二三四在线视频社区8 | 久久中文字幕人妻AV熟女 | 总裁呻吟双腿大开男男H | 国产曰批试看免费视频播放免费 | 国内久久久久影院精品 | 国模大胆一区二区三区 | 99精品国产免费久久久久久下载 | 青娱乐在线一区 | 青柠在线观看视频在线高清完整 | 国产成人午夜精品免费视频 | 在线高清视频不卡无码 |