1. 方案簡介
Nand flash有非易失、存儲容量大、壽命長等優(yōu)點;同時具有存在壞塊、擦除次數有限、易出現error bit的缺點;并且具有擦除以block(塊)為單位,寫入以page(頁)為單位,讀取以sector(512 byte)為單位的特點。
基于上述原因,對Nand flash的應用不僅要避免壞塊、均衡塊擦除次數、糾正error bit,而且需要按照其讀寫擦的特點進行應用。若沒有一套管理軟件針對nand的特性,則對其應用將非常困難。
FTL(Flash Transform Layer)是基于nand flash的管理算法軟件,可解決上述提出的所有問題,將Nand flash模擬成如。
▲ FTL軟件架構圖
2. 功能描述
FTL(Flash Transform Layer)是基于nand flash的管理算法軟件,具有地址映射管理,垃圾回收,壞塊管理和磨損均衡等功能。
? 地址映射:上層應用使用邏輯地址來訪問,FTL把邏輯地址映射到不同物理地址上,管理著每個邏輯地址最新的數據存放的物理位置。
? 垃圾回收:隨著數據的寫入,閃存設備上有些塊的部分數據已經無效了,需要把有效的數據從塊上搬走,然后擦除用來接收新的數據。
? 磨損均衡:因為每個塊的P/E次數是有限的,某些塊可能被重復使用而損壞了,而有些塊數據很少被訪問,所以一直沒有進行操作過。為了避免這種情況,FTL加入磨損均衡的功能,大致是通過控制垃圾回收和空塊池的管理,從而平衡每個塊的使用次數。
? 壞塊管理:由于Flash本身就存在部分壞塊,在使用的過程中部分塊會變壞,所以FTL在管理的時候需要避開這些無用塊,把使用后變得不穩(wěn)定塊上的數據及時拷貝到穩(wěn)定位置。
BCH軟件實現error bit錯誤檢查和糾正功能,對于Nand flash本身不帶ECC “Error Correcting Code”功能的方案中是不可或缺的。BCH軟件對用戶寫入flash的數據進行編碼,當用戶讀取寫入flash的數據時,按照編碼規(guī)則對數據進行解碼,當發(fā)現error bit時,對error bit進行糾正,保證數據可靠性。
3. 主要特性
相對于目前存在的Nand flash管理軟件方案,FTL具有讀寫速度快、內存消耗小、擦除塊磨損均衡好的特點。
A) FTL方案在相同平臺下(GD32F450+SPI2G顆粒)與YAFFS嵌入式文件系統(tǒng)分別做性能測試,測試結果如下:
B) FTL方案在相同平臺下(GD32F450+SPI2G顆粒)與YAFFS嵌入式文件系統(tǒng)分別做內存消耗統(tǒng)計,統(tǒng)計結果如下:
C) FTL方案在相同平臺下(GD32F450+SPI2G顆粒)與YAFFS嵌入式文件系統(tǒng)分別做磨損均衡測試,統(tǒng)計結果如下:(注:block 1023為壞塊)
4. 開發(fā)資料
推薦用于功能評估的開發(fā)板型號為GD32450i-EVAL和GD32303E-EVAL,支持SPI/EXMC兩種接口nand flash。
我們可提供評估套件、用戶指南、硬件原理圖、軟件代碼等整套的開發(fā)資料,請聯系您當地的GigaDevice銷售辦事處或GD32授權代理商獲取。
5. 典型應用
對于一些要求存儲容量較高的使用場景,FTL使用尤為突出。如圖片、音頻、視頻的保存、重要信息的保存等。
工業(yè)領域,如電表、水表信息的存儲;汽車電子領域,如設備運行狀態(tài)信息存儲;消費電子領域,如攝像監(jiān)控視頻、圖片存儲。
審核編輯:湯梓紅
-
NAND
+關注
關注
16文章
1686瀏覽量
136272 -
FlaSh
+關注
關注
10文章
1640瀏覽量
148277 -
兆易創(chuàng)新
+關注
關注
23文章
611瀏覽量
80704 -
GD32
+關注
關注
7文章
404瀏覽量
24400
發(fā)布評論請先 登錄
相關推薦
評論