flash

Nand flash編輯

 
本詞條缺乏 信息欄名片圖,補充相關內容使詞條更完整,還能快速升級,趕忙來 編輯吧!
Nand- flash內存是 flash內存的一種,其內部採用非線性 宏單元模式,爲固態大容量內存的實現提供了廉價有效的解決方案。Nand-flash 存儲器具備容量較大,改寫速度快等優勢,適用於大量數據的存儲,於是在業界獲得了愈來愈普遍的應用,如 嵌入式產品中包括數碼相機、MP3隨身聽記憶卡、體積小巧的U盤等。

目錄

1簡介git

2NOR與NAND的區別算法

性能比較  
接口差異  

3NAND特色編程

容量和成本  
物理構成  
可靠耐用性  
易於使用  
軟件支持  

4相關信息緩存

 
 

1簡介編輯

NOR和NAND是如今市場上兩種主要的非易失閃存技術。Intel於1988年首先開發出NOR flash技術,完全改變了原先由EPROM和EEPROM一統天下的局面。緊接着,1989年, 東芝公司發表了NAND flash結構,強調下降每比特的成本,更高的性能,而且象磁盤同樣能夠經過接口輕鬆升級。可是通過了十多年以後,仍然有至關多的 硬件工程師分不清NOR和 NAND閃存
「NAND 存儲器」常常能夠與相「NOR存儲器」互換使用。許多業內人士也搞不清 楚NAND閃存技術相對於NOR技術的優越之處,因 爲大多數狀況下閃存只是用來存儲少許的代碼而且須要屢次擦寫,這時NOR閃存更適合一些。而NAND則是高數據存儲密度的理想解決方案。
NOR的特色是芯片內執行(XIP, eXecute In Place),這樣 應用程序能夠直接在 flash 閃存內運行,沒必要再把代碼讀到系統RAM中。NOR的 傳輸效率很高,在1~4MB的小容量時具備很高的成本效益,可是很低的寫入和擦除 速度大大影響了它的性能。
NAND結構能提供極高的單元密度,能夠達到高存儲密度,而且寫入和擦除的速度也很快。應用NAND的困難在於 flash的管理須要特殊的系統接口。

2NOR與NAND的區別編輯

性能比較

flash閃存是非易失 存儲器,能夠對稱爲塊的存儲器單元塊進行擦寫和再 編程。任何 flash器件的寫入操做只能在空或已擦除的單元內進行,因此大多數狀況下,在進行寫入操做以前必須先執行擦除。NAND器件執行擦除 操做是十分簡單的,而NOR則要求在進行擦除前 先要將目標塊內全部的位都寫爲1。
因爲擦除NOR器件時是以64~128KB的塊進行的,執行一個寫入/擦除操做的時間爲5ms ,與此相反,擦除NAND器件是以8~32KB的塊進 行的,執行相同的操做最多隻須要4ms。
執行擦除時塊尺寸的不一樣進一步拉大了NOR和NAND之間的性能差距,統計代表,對於給定的一套寫入操做(尤爲是更新小文件時), 更多的擦除操做必須在基於NOR的單元中進行。這樣,當選擇存儲解決方案時, 設計師必 須權衡如下的各項因素。
● NOR的讀速度比NAND稍快一些。
● NAND的寫入速度比NOR快不少。
● NAND的擦除速度遠比NOR快。
● NAND的擦除單元更小,相應的擦除電路更加簡單。
● NAND的實際應用方式要比NOR複雜的多。
● NOR能夠直接使用,並在上面直接運行代碼,而NAND須要I/O接口,所以使用時須要驅動。

接口差異

NOR flash帶有SRAM接口,有足夠的地址 引腳來尋址,能夠很容易地存取其內部的每 一個字節。
NAND器件使用複雜的I/O口來串行地存取數據,各個產品或廠商的方法可能各不相同 。8個 引腳用來傳送控制、地址和數據信息。
NAND讀和寫操做採用512 字節的塊,這一點有點像硬盤管理此類操做,很天然地,基於NAND的 存儲器就能夠取代硬盤或其餘塊設備。NOR的特色是芯片內執行(XIP, eXecute In Place),這樣 應用程序能夠直接在flash閃存內運行,沒必要再把代碼讀到系統RAM中。
NOR的 傳輸效率很高,在1~4MB的小容量時具備很高的成本效益,可是很低的寫入和擦除速度大大影響了它的性能。
NAND結構能提供極高的單元密度,能夠達到高存儲密度,而且寫入和擦除的速度也很快。應用NAND的困難在於 flash的管理須要特殊的系統接口。

3NAND特色編輯

容量和成本

NAND flash的單元尺寸幾乎是NOR器件的一半,因爲生產過程更爲簡單,NAND結構可 以在給定的模具尺寸內提供更高的容量,也就 相應地下降了價格。
NOR flash佔據了容量爲1~16MB閃存市場的大部分,而NAND flash只是用在8~128M B的產品當中,這也說明NOR主要應用在代碼存 儲介質中,NAND適合於數據存儲,NAND在CompactFlash、Secure Digital、PC Cards和M MC存儲卡市場上所佔份額最大。

物理構成

NAND Flash 的數據是以bit的方式保存在memory cell,通常來講,一個cell 中只能存儲一個bit。這些cell 以8個或者16個爲單位,連成bit line,造成所謂的byte(x8)/word(x16),這就是NAND Device的位寬。這些Line會再組成Page,(NAND Flash 有多種結構,我使用的NAND Flash 是K9F1208,下面內容針對三星的K9F1208U0M),每頁528Bytes(512byte(Main Area)+16byte(Spare Area)),每32個page造成一個Block(32*528B)。具體一片 flash上有多少個Block視須要所定。我所使用的三星k9f1208U0M具備4096個block,故總容量爲4096*(32*528B)=66MB,可是其中的2MB是用來保存ECC校驗碼等額外數據的,故實際中可以使用的爲64MB。
NAND flash以頁爲單位讀寫數據,而以塊爲單位擦除數據。按照這樣的組織方式能夠造成所謂的三類地址:
Column Address:Starting Address of the Register. 翻成中文爲列地址,地址的低8位
Page Address :頁地址
Block Address :塊地址
對於NAND Flash來說,地址和命令只能在I/O[7:0]上傳遞,數據寬度是8位。

可靠耐用性

採用 flash介質時一個須要重點考慮的問題是可靠性。對於須要擴展MTBF的系統來講 ,Flash是很是合適的存儲方案。能夠從壽命(耐用性)、位交換和壞塊處理三個方面來比較NOR和NAND的可靠性。
壽命(耐用性)
在NAND閃存中每一個塊的最大擦寫次數是一百萬次,而NOR的擦寫次數是十萬次。NAND
存儲器除了具備10比1的塊擦除週期優點,典型 的NAND塊尺寸要比NOR器件小8倍,每一個NAND存儲器塊在給定的時間內的刪除次數要少一 些。
位交換
全部 flash器件都受位交換現象的困擾。在某些狀況下(不多見,NAND發生的次數要比NOR多),一個比特位會發生反轉或被報告反轉了。
一位的變化可能不很明顯,可是若是發生在一個關鍵文件上,這個小小的故障可能 致使系統停機。若是隻是報告有問題,多讀幾回 就可能解決了。
固然,若是這個位真的改變了,就必須採用錯誤 探測/錯誤更正(EDC/ECC)算法。位 反轉的問題更多見於NAND閃存,NAND的供應商建 議使用NAND閃存的時候,同時使用EDC/ECC算法。
這個問題對於用NAND存儲 多媒體信息時倒不是致命的。固然,若是用本地存儲設備來存儲 操做系統、配置文件或其餘敏感信息時, 必須使用EDC/ECC系統以確保可靠性。
壞塊處理
NAND器件中的壞塊是隨機分佈的。之前也曾有過消除壞塊的努力,但發現成品率過低,代價過高,根本不划算。
NAND器件須要對介質進行初始化掃描以發現壞塊,並將壞塊標記爲不可用。在已制 成的器件中,若是經過可靠的方法不能進行這項 處理,將致使高故障率。

易於使用

能夠很是直接地使用基於NOR的閃存,能夠像其餘 存儲器那樣鏈接,並能夠在上面直 接運行代碼。
因爲須要I/O接口,NAND要複雜得多。各類NAND器件的存取方法因廠家而異。
在使用NAND器件時,必須先寫入驅動程序,才能繼續執行其餘操做。向NAND器件寫 入信息須要至關的技巧,由於 設計師毫不能向壞 塊寫入,這就意味着在NAND器件上自始至終都必須進行虛擬映射。

軟件支持

當討論 軟件支持的時候,應該區別基本的讀/寫/擦操做和高一級的用於磁盤仿真和 閃存管理算法的軟件,包括 性能優化
在NOR器件上運行代碼不須要任何的 軟件支持,在NAND器件上進行一樣操做時,一般 須要 驅動程序,也就是內存技術驅動程序(MTD ),NAND和NOR器件在進行寫入和擦除操做時都須要MTD。
使用NOR器件時所須要的MTD要相對少一些,許多廠商都提供用於NOR器件的更高級軟 件,這其中包括M-System的TrueFFS驅動,該驅 動被Wind River System、Microsoft、QNX Software System、Symbian和Intel等廠商所採用。
驅動還用於對DiskOnChip產品進行仿真和NAND閃存的管理,包括糾錯、壞塊處理和 損耗平衡。(糾正一點:NOR擦除時,是所有寫1,不是寫0,並且,NOR FLASH SECTOR擦除時間視品牌、 大小不一樣而不一樣,好比,4M FLASH,有的SECTOR擦除時間爲60ms,而有的須要最大6S。)NOR FLASH的主要供應商是INTEL ,MICRO等廠商,曾經是FLASH的主流產品,但如今被 NAND FLASH擠的比較難受。它的優勢是能夠直接從FLASH中運行程序,可是工藝複雜,價格比 較貴。
NAND FLASH的主要供應商是SAMSUNG和東芝,在U盤、各類存儲卡、 MP3播放器裏面的都是這種 FLASH,因爲工藝上的不一樣,它比NOR FLASH擁有更大存儲容量,並且便宜。但也有缺點,就是
沒法尋址直接運行程序,只能存儲數據。另外NAND FLASH 很是容易出現壞區,因此須要有校驗的算法。
在掌上電腦裏要使用NAND FLASH 存儲數據和程序,可是必須有NOR FLASH來啓動。除了
SAMSUNG處理器,其餘用在掌上電腦的主流處理器還不支持直接由NAND FLASH 啓動程序。所以,
必須先用一片小的NOR FLASH 啓動機器,在把OS等 軟件從NAND FLASH 載入SDRAM中運行才行,挺麻煩的。

4相關信息編輯

NAND型閃存以塊爲單位進行擦除操做。閃存的寫入操做必須在空白區域進行,若是目標區域已經有數據,必須先擦除後寫入,所以擦除操做是閃存的基本操做。
而SRAM (Static RAM,靜態隨機存儲器) - 此類靜態RAM的運行速度很是快,也很是昂貴,其體積相對來講也比較大。今天咱們常說的CPU內的一級、二級緩存就是使用了此SRAM。英特爾的 Pentium III Coppermine CPU中結合有256KB的全速二級緩存,這實際上就是一種SRAM。很是不幸得就是 此種SRAM與其"夥伴"DRAM相比很是地昂貴,所以在CPU內只能使用少許的SRAM,以下降處理器的生產成本;不過因爲SRAM的特色---高速 度,所以對提升系統性能很是有幫助。處理器內的一級緩存,其運行頻率與CPU的時鐘同步;而二級緩存能夠整合在CPU中,也能夠位於如一些Slot-1 CPU的邊上。
相關文章
相關標籤/搜索