NAND flash和NOR flash的區別詳解

2021-07-13 07:26:18 字數 4990 閱讀 1251

我們使用的智慧型手機除了有乙個可用的空間(如蘋果8g、16g等),還有乙個ram容量,很多人都不是很清楚,為什麼需要二個這樣的晶元做儲存呢,這就是我們下面要講到的。這二種儲存裝置我們都統稱為「flash」,flash是一種儲存晶元,全名叫flash eeprom memory,通地過程式可以修改資料,即平時所說的「快閃儲存器」。flash又分為nand flash和nor flash二種。u盤和***裡用的就是這種儲存器。

相「flash儲存器」經常可以與相「nor儲存器」互換使用。許多業內人士也搞不清楚nand快閃儲存器技術相對於nor技術的優越之處,因為大多數情況下快閃儲存器只是用來儲存少量的**,這時nor快閃儲存器更適合一些。而nand則是高資料儲存密度的理想解決方案。nor flash 的讀取和我們常見的 sdram 的讀取是一樣,使用者可以直接執行裝載在 nor flash 裡面的**,這樣可以減少 sram 的容量從而節約了成本。 nand flash 沒有採取記憶體的隨機讀取技術,它的讀取是以一次讀取一塊的形式來進行的, 通常是一次讀取 512 個位元組,採用這種技術的 flash 比較廉價。使用者 不能直接執行 nand flash 上的**,因此好多使用 nand flash 的開發板除了使用 nand flah 以外,還作上了 一塊小的 nor flash 來執行啟動**。

nor flash是intel公司2023年開發出了nor flash技術。nor的特點是晶元內執行(xip, execute in place),這樣應用程式可以直接在flash 快閃儲存器內執行,不必再把**讀到系統ram中。nor的傳輸效率很高,在1~4mb的小容量時具有很高的成本效益,但是很低的寫入和擦除 速度大大影響了它的效能。

nand-flash記憶體是flash記憶體的一種,2023年,東芝公司發表了nand flash結構。其內部採用非線性巨集單元模式,為固態大容量記憶體的實現提供了廉價有效的解決方案。nand-flash儲存器具有容量較大,改寫速度快等優點,適用於大量資料的儲存,因而在業界得到了越來越廣泛的應用,如嵌入式產品中包括數位相機、***隨身聽記憶卡、體積小巧的u盤等。

nand flash和nor flash原理

一、儲存資料的原理

兩種快閃儲存器都是用三端器件作為儲存單元,分別為源極、漏極和柵極,與場效電晶體的工作原理 相同,主要是利用電場的效應來控制源極與漏極之間的通斷,柵極的 電流消耗極小,不同 的是場效電晶體為單柵極結構,而 flash 為雙柵極結構,在柵極與矽襯底之間增加了乙個浮 置柵極。[attach]158 [/attach]

浮置柵極是由氮化物夾在兩層二氧化矽材料之間構成的,中間的氮化物就是可以儲存電荷的 電荷勢阱。上下兩層氧化物的厚度大於 50 埃,以避免發生擊穿。

二、浮柵的重放電

向資料單元內寫入資料的過程就是向電荷勢阱注入電荷的過程,寫入資料有兩種技術,熱電 子注入(hot electron injection)和 f-n 隧道效應(fowler nordheim tunneling),前一種是通過源 極給浮柵充電,後一種是通過矽基層給浮柵充電。nor 型 flash 通過熱電子注入方式給浮 柵充電,而 nand 則通過 f-n 隧道效應給浮柵充電。

在寫入新資料之前,必須先將原來的資料擦除,這點跟硬碟不同,也就是將浮柵的電荷放掉, 兩種 flash 都是通過 f-n 隧道效應放電。

三、0 和 1

這方面兩種 flash 一樣,向浮柵中注入電荷表示寫入了'0',沒有注入電荷表示'1',所以對 flash 清除資料是寫 1 的,這與硬碟正好相反;

對於浮柵中有電荷的單元來說,由於浮柵的感應作用,在源極和漏極之間將形成帶正電的空 間電荷區,這時無論控制極上有沒有施加偏置電壓,電晶體都將處於 導通狀態。而對於浮 柵中沒有電荷的電晶體來說只有當控制極上施加有適當的偏置電壓,在矽基層上感應出電 荷,源極和漏極才能導通,也就是說在沒有給控制極施 加偏置電壓時,電晶體是截止的。 如果電晶體的源極接地而漏極接位線,在無偏置電壓的情況下,檢測電晶體的導通狀態就可 以獲得儲存單元中的資料,如果位線上的電平為低,說明電晶體處於 導通狀態,讀取的數 據為 0,如果位線上為高電平,則說明電晶體處於截止狀態,讀取的資料為 1。由於控制柵 極在讀取資料的過程中施加的電壓較小或根本不施加 電壓,不足以改變浮置柵極中原有的 電荷量,所以讀取操作不會改變 flash 中原有的資料。

四、連線和編址方式

兩種 flash 具有相同的儲存單元,工作原理也一樣,為了縮短訪問時間並不是對每個單元 進行單獨的訪問操作,而是對一定數量的訪問單元進行集體操作, nand 型 flash 各存 儲單元之間是串聯的,而 nor 型 flash 各單元之間是併聯的;為了對全部的儲存單元有 效管理,必須對儲存單元進行統一編址。

nand 的全部儲存單元分為若干個塊,每個塊又分為若干個頁,每個頁是 512byte,就是 512 個 8 位數,就是說每個頁有 512 條位線,每條位線下 有 8 個儲存單元;那麼每頁儲存的數 據正好跟硬碟的乙個扇區儲存的資料相同,這是設計時為了方便與磁碟進行資料交換而特意 安排的,那麼塊就類似硬碟的簇;容 量不同,塊的數量不同,組成塊的頁的數量也不同。 在讀取資料時,當字線和位線鎖定某個電晶體時,該電晶體的控制極不加偏置電壓,其它的 7  個都加上偏置電壓 而導通,如果這個電晶體的浮柵中有電荷就會導通使位線為低電平, 讀出的數就是 0,反之就是 1。

nor 的每個儲存單元以併聯的方式連線到位線,方便對每一位進行隨機訪問;具有專用的 位址線,可以實現一次性的直接定址;縮短了 flash 對處理器指令的執行時間。 五、效能

nand flash和nor flash的區別

一、nand flash和nor flash的效能比較

flash快閃儲存器是非易失儲存器,可以對稱為塊的儲存器單元塊進行擦寫和再程式設計。任何flash器件的寫入操作只能在空或已擦除的單元內進行,所以大多數情況下,在進行寫入操作之前必須先執行擦除。nand器件執行擦除操作是十分簡單的,而nor則要求在進行擦除前先要將目標塊內所有的位都寫為0。由於擦除nor器件時是以64~128kb的塊進行的,執行乙個寫入/擦除操作的時間為5s,與此相反,擦除nand器件是以8~32kb的塊進行的,執行相同的操作最多隻需要4ms。執行擦除時塊尺寸的不同進一步拉大了nor和nadn之間的效能差距,統計表明,對於給定的一套寫入操作(尤其是更新小檔案時),更多的擦除操作必須在基於nor的單元中進行。這樣,當選擇儲存解決方案時,設計師必須權衡以下的各項因素。

1、nor的讀速度比nand稍快一些。

2、nand的寫入速度比nor快很多。

3、nand的4ms擦除速度遠比nor的5s快。

4、大多數寫入操作需要先進行擦除操作。

5、nand的擦除單元更小,相應的擦除電路更少。

二、nand flash和nor flash的介面差別

nor flash帶有sram介面,有足夠的位址引腳來定址,可以很容易地訪問其內部的每乙個位元組。

nand器件使用複雜的i/o口來序列地訪問資料,各個產品或廠商的方法可能各不相同。8個引腳用來傳送控制、位址和資料資訊。nand讀和寫操作採用512位元組的塊,這一點有點像硬碟管理此類操作,很自然地,基於nand的儲存器就可以取代硬碟或其他塊裝置。

三、nand flash和nor flash的容量和成本

nand flash的單元尺寸幾乎是nor器件的一半,由於生產過程更為簡單,nand結構可以在給定的模具尺寸內提供更高的容量,也就相應地降低了**。

nor flash佔據了容量為1~16mb快閃儲存器市場的大部分,而nand flash只是用在8~128mb的產品當中,這也說明nor主要應用在**儲存介質中,nand適合於資料儲存,nand在compactflash、secure digital、pc cards和mmc儲存卡市場上所佔份額最大。

四、nand flash和nor flash的可靠性和耐用性

採用flahs介質時乙個需要重點考慮的問題是可靠性。對於需要擴充套件mtbf的系統來說,flash是非常合適的儲存方案。可以從壽命(耐用性)、位交換和壞塊處理三個方面來比較nor和nand的可靠性。

五、nand flash和nor flash的壽命(耐用性)

在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快閃儲存器的管理,包括糾錯、壞塊處理和損耗平衡。

nand flash啟動和nor flash啟動

1 nor flash啟動 cpu看到的0位址是在nor flash上 1 把bootloader燒寫在nor flash的0位址 2 上電時,從nor flash的0位址開始執行。3 比較大時需重定位,重定位時,把 從nor flash 複製到sdram上的鏈結位址 程式執行時應該位於的地方 2 ...

nand flash和nor flash啟動區別

1 介面區別 nor flash位址線和資料線分開,來了位址和控制訊號,資料就出來。nand flash位址線和資料線在一起,需要用程式來控制,才能出資料。通俗的說,就是光給位址不行,要先命令,再給位址,才能讀到nand的資料。而且都是在乙個匯流排完成的。結論是 arm無法從nand直接啟動。除非裝...

NANDFLASH 和NORFLASH的區別

nor和nand是現在市場上兩種主要的非易失快閃儲存器技術。intel於1988年首先開發出nor flash技術,徹底改變了原先由eprom和eeprom一統天下的局面。緊接著,1989年,東芝公司發表了nand flash結構,強調降低每位元的成本,更高的效能,並且象磁碟一樣可以通過介面輕鬆公升...