NandFlash系列之一:NorFlash與NandFlash對比

NandFlash系列之一:NorFlash與NandFlash對比 算法

做者:劉洪濤,華清遠見嵌入式學院高級講師。 性能

FLASH存儲器又稱閃存,主要有兩種:NorFlash和NandFlash,下面咱們從多個角度來對比介紹一下。在實際開發中,設計者能夠根據產品需求來進行閃存的合理選擇。 spa

一、接口對比 設計

NorFlash帶有通用的SRAM接口,能夠輕鬆地掛接在CPU的地址、數據總線上,對CPU的接口要求低。NorFlash的特色是芯片內執行(XIP,eXecute In Place),這樣應用程序能夠直接在flash閃存內運行,沒必要再把代碼讀到系統RAM中。如uboot中的ro段能夠直接在NorFlash上運行,只須要把rw和zi段拷貝到RAM中運行便可。 接口

NandFlash器件使用複雜的I/O口來串行地存取數據,8個引腳用來傳送控制、地址和數據信息。因爲時序較爲複雜,因此通常CPU最好集成NAND控制器。另外因爲NandFlash沒有掛接在地址總線上,因此若是想用NandFlash做爲系統的啓動盤,就須要CPU具有特殊的功能,如s3c2410在被選擇爲NandFlash啓動方式時會在上電時自動讀取NandFlash的4k數據到地址0的SRAM中。若是CPU不具有這種特殊功能,用戶不能直接運行NandFlash上的代碼,那能夠採起其餘方式,好比好多使用NandFlash的開發板除了使用NandFlash之外,還用上了一塊小的NorFlash來運行啓動代碼。 開發

二、容量和成本對比 get

相比起NandFlash來講,NorFlash的容量要小,通常在1~16MByte左右,一些新工藝採用了芯片疊加技術能夠把NorFlash的容量作得大一些。在價格方面,NorFlash相比NandFlash來講較高,如目前市場上一片4Mbyte的AM29lv320 NorFlash零售價在20元左右,而一片128MByte的k9f1g08 NandFlash零售價在30元左右。 flash

NandFlash生產過程更爲簡單,NAND結構能夠在給定的模具尺寸內提供更高的容量,這樣也就相應地下降了價格。 產品

三、可靠性性對比 it

NAND器件中的壞塊是隨機分佈的,之前也曾有過消除壞塊的努力,但發現成品率過低,代價過高,根本不划算。NAND器件須要對介質進行初始化掃描以發現壞塊,並將壞塊標記爲不可用。在已製成的器件中,若是經過可靠的方法不能進行這項處理,將致使高故障率。而壞塊問題在NorFlash上是不存在的。 
在Flash的位翻轉(一個bit位發生翻轉)現象上,NAND的出現概率要比NorFlash大得多。這個問題在Flash存儲關鍵文件時是致命的,因此在使用NandFlash時建議同時使用EDC/ECC等校驗算法。

四、壽命對比

在NAND閃存中每一個塊的最大擦寫次數是一百萬次,而NOR的擦寫次數是十萬次。閃存的使用壽命同時和文件系統的機制也有關,要求文件系統具備損耗平衡功能。

五、升級對比

NorFlash的升級較爲麻煩,由於不一樣容量的NorFlash的地址線需求不同,因此在更換不一樣容量的NorFlash芯片時不方便。一般咱們會經過在電路板的地址線上作一些跳接電阻來解決這樣的問題,針對不一樣容量的NorFlash。

而不一樣容量的NandFlash的接口是固定的,因此升級簡單。

六、讀寫性能對比

寫操做:任何flash器件的寫入操做都只能在空或已擦除的單元內進行。NAND器件執行擦除操做是十分簡單的,而NOR則要求在進行擦除前先要將目標塊內全部的位都寫爲1。擦除NOR器件時是以64~128KB的塊進行的,執行一個擦除/寫入操做的時間約爲5s。擦除NAND器件是以8~32KB的塊進行的,執行一個擦除/寫入操做最多隻須要4ms。

讀操做:NOR的讀速度比NAND稍快一些。

七、文件系統比較

Linux系統中採用MTD來管理不一樣類型的Flash芯片,包括NandFlash和NorFlash。支持在Flash上運行的經常使用文件系統有cramfs、jffs、jffs二、yaffs、yaffs2等。cramfs文件系統是隻讀文件系統。若是想在Flash上實現讀寫操做,一般在NorFlash上咱們會選取jffs及jffs2文件系統,在NandFlash上選用yaffs或yaffs2文件系統。Yaffs2文件系統支持大頁(大於512字節/頁)的NandFlash存儲器。

參考文章:《NAND和NORFLASH技術設計師在使用閃存時須要慎重選擇》M-Systems公司 Arie TAL 

相關文章
相關標籤/搜索