




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、NOR Flash 和 NAND Flash是現(xiàn)在市場上兩種主要的非易失閃存技術。Intel于1988年首先開發(fā)出NOR Flash 技術,徹底改變了原先由EPROM(Electrically Programmable Read-Only-Memory電可編程序只讀存儲器)和EEPROM(電可擦只讀存儲器Electrically Erasable Programmable Read - Only Memory)一統(tǒng)天下的局面。緊接著,1989年,東芝公司發(fā)表了NAND Flash 結(jié)構(gòu),強調(diào)降低每比特的成本,有更高的性能,并且像磁盤一樣可以通過接口輕松升級。NOR Flash 的特點是芯片內(nèi)執(zhí)
2、行(XIP ,eXecute In Place),這樣應用程序可以直接在Flash閃存內(nèi)運行,不必再把代碼讀到系統(tǒng)RAM中。NOR 的傳輸效率很高,在14MB的小容量時具有很高的成本效益,但是很低的寫入和擦除速度大大影響到它的性能。NAND的結(jié)構(gòu)能提供極高的單元密度,可以達到高存儲密度,并且寫入和擦除的速度也很快。應用NAND的困難在于Flash的管理和需要特殊的系統(tǒng)接口。通常讀取NOR的速度比NAND稍快一些,而NAND的寫入速度比NOR快很多,在設計中應該考慮這些情況。ARM嵌入式Linux系統(tǒng)開發(fā)從入門到精髓 李亞峰 歐文盛 等編著 清華大學出版社 P52 注釋 NOR和NAND詳解NO
3、R和NAND是現(xiàn)在市場上兩種主要的非易失閃存技術。Intel于1988年首先開發(fā)出NOR flash技術,徹底改變了原先由EPROM和EEPROM一統(tǒng)天下的局面。緊接著,1989年,東芝公司發(fā)表了NAND flash結(jié)構(gòu),強調(diào)降低每比特的成本,更高的性能,并且象磁盤一樣可以通過接口輕松升級。但是經(jīng)過了十多年之后,仍然有相當多的硬件工程師分不清NOR和NAND閃存。 相“flash存儲器”經(jīng)??梢耘c相“NOR存儲器”互換使用。許多業(yè)內(nèi)人士也搞不清楚NAND閃存技術相對于NOR技術的優(yōu)越之處,因為大多數(shù)情況下閃存只是用來存儲少量的代碼,這時NOR閃存更適合一些。而NAND則是高數(shù)據(jù)存儲密度的理想解
4、決方案。 NOR的特點是芯片內(nèi)執(zhí)行(XIP, eXecute In Place),這樣應用程序可以直接在flash閃存內(nèi)運行,不必再把代碼讀到系統(tǒng)RAM中。NOR的傳輸效率很高,在14MB的小容量時具有很高的成本效益,但是很低的寫入和擦除速度大大影響了它的性能。 NAND結(jié)構(gòu)能提供極高的單元密度,可以達到高存儲密度,并且寫入和擦除的速度也很快。應用NAND的困難在于flash的管理需要特殊的系統(tǒng)接口。 性能比較flash閃存是非易失存儲器,可以對稱為塊的存儲器單元塊進行擦寫和再編程。任何flash器件的寫入操作只能在空或已擦除的單元內(nèi)進行,所以大多數(shù)情況下,在進行寫入操作之前必須先執(zhí)行擦除。N
5、AND器件執(zhí)行擦除操作是十分簡單的,而NOR則要求在進行擦除前先要將目標塊內(nèi)所有的位都寫為0。 由于擦除NOR器件時是以64128KB的塊進行的,執(zhí)行一個寫入/擦除操作的時間為5s,與此相反,擦除NAND器件是以832KB的塊進行的,執(zhí)行相同的操作最多只需要4ms。 執(zhí)行擦除時塊尺寸的不同進一步拉大了NOR和NADN之間的性能差距,統(tǒng)計表明,對于給定的一套寫入操作(尤其是更新小文件時),更多的擦除操作必須在基于NOR的單元中進行。這樣,當選擇存儲解決方案時,設計師必須權衡以下的各項因素。 l 、NOR的讀速度比NAND稍快一些。 2、 NAND的寫入速度比NOR快很多。 3 、NAND的4ms
6、擦除速度遠比NOR的5s快。 4 、大多數(shù)寫入操作需要先進行擦除操作。 5 、NAND的擦除單元更小,相應的擦除電路更少。 接口差別NOR flash帶有SRAM接口,有足夠的地址引腳來尋址,可以很容易地存取其內(nèi)部的每一個字節(jié)。 NAND器件使用復雜的I/O口來串行地存取數(shù)據(jù),各個產(chǎn)品或廠商的方法可能各不相同。8個引腳用來傳送控制、地址和數(shù)據(jù)信息。 NAND讀和寫操作采用512字節(jié)的塊,這一點有點像硬盤管理此類操作,很自然地,基于NAND的存儲器就可以取代硬盤或其他塊設備。 容量和成本NAND flash的單元尺寸幾乎是NOR器件的一半,由于生產(chǎn)過程更為簡單,NAND結(jié)構(gòu)可以在給定的模具尺寸內(nèi)
7、提供更高的容量,也就相應地降低了價格。 NOR flash占據(jù)了容量為116MB閃存市場的大部分,而NAND flash只是用在8128MB的產(chǎn)品當中,這也說明NOR主要應用在代碼存儲介質(zhì)中,NAND適合于數(shù)據(jù)存儲,NAND在CompactFlash、Secure Digital、PC Cards和MMC(多媒體存儲卡Multi Media Card)存儲卡市場上所占份額最大。 可靠性和耐用性采用flash介質(zhì)時一個需要重點考慮的問題是可靠性。對于需要擴展MTBF(平均故障間隔時間Mean Time Between Failures)的系統(tǒng)來說,F(xiàn)lash是非常合適的存儲方案。可以從壽命(耐用
8、性)、位交換和壞塊處理三個方面來比較NOR和NAND的可靠性。 壽命(耐用性) 在NAND閃存中每個塊的最大擦寫次數(shù)是一百萬次,而NOR的擦寫次數(shù)是十萬次。NAND存儲器除了具有10比1的塊擦除周期優(yōu)勢,典型的NAND塊尺寸要比NOR器件小8倍,每個NAND存儲器塊在給定的時間內(nèi)的刪除次數(shù)要少一些。 位交換所有flash器件都受位交換現(xiàn)象的困擾。在某些情況下(很少見,NAND發(fā)生的次數(shù)要比NOR多),一個比特位會發(fā)生反轉(zhuǎn)或被報告反轉(zhuǎn)了。 一位的變化可能不很明顯,但是如果發(fā)生在一個關鍵文件上,這個小小的故障可能導致系統(tǒng)停機。如果只是報告有問題,多讀幾次就可能解決了。 當然,如果這個位真的改變了,
9、就必須采用錯誤探測/錯誤更正(EDC/ECC)算法。位反轉(zhuǎn)的問題更多見于NAND閃存,NAND的供應商建議使用NAND閃存的時候,同時使用EDC/ECC算法。 這個問題對于用NAND存儲多媒體信息時倒不是致命的。當然,如果用本地存儲設備來存儲操作系統(tǒng)、配置文件或其他敏感信息時,必須使用EDC/ECC系統(tǒng)以確保可靠性。 壞塊處理NAND器件中的壞塊是隨機分布的。以前也曾有過消除壞塊的努力,但發(fā)現(xiàn)成品率太低,代價太高,根本不劃算。 NAND器件需要對介質(zhì)進行初始化掃描以發(fā)現(xiàn)壞塊,并將壞塊標記為不可用。在已制成的器件中,如果通過可靠的方法不能進行這項處理,將導致高故障率。 易于使用可以非常直接地使用
10、基于NOR的閃存,可以像其他存儲器那樣連接,并可以在上面直接運行代碼。 由于需要I/O接口,NAND要復雜得多。各種NAND器件的存取方法因廠家而異。 在使用NAND器件時,必須先寫入驅(qū)動程序,才能繼續(xù)執(zhí)行其他操作。向NAND器件寫入信息需要相當?shù)募记?,因為設計師絕不能向壞塊寫入,這就意味著在NAND器件上自始至終都必須進行虛擬映射。 軟件支持當討論軟件支持的時候,應該區(qū)別基本的讀/寫/擦操作和高一級的用于磁盤仿真和閃存管理算法的軟件,包括性能優(yōu)化。 在NOR器件上運行代碼不需要任何的軟件支持,在NAND器件上進行同樣操作時,通常需要驅(qū)動程序,也就是內(nèi)存技術驅(qū)動程序(MTD),NAND和NOR
11、器件在進行寫入和擦除操作時都需要MTD(Memory Technology Devices)。 使用NOR器件時所需要的MTD要相對少一些,許多廠商都提供用于NOR器件的更高級軟件,這其中包括M-System的TrueFFS驅(qū)動,該驅(qū)動被Wind River System、Microsoft、QNX Software System、Symbian和Intel等廠商所采用。 驅(qū)動還用于對DiskOnChip產(chǎn)品進行仿真和NAND閃存的管理,包括糾錯、壞塊處理和損耗平衡。Nand Flash數(shù)據(jù)存儲規(guī)則與數(shù)據(jù)讀寫方法(一)貼子發(fā)表于:2010/1/12 9:38:11 歡迎參與調(diào)查 談到Nand
12、Flash的數(shù)據(jù)存儲方式,關于NAND Flash的數(shù)據(jù)讀寫方法方面的文章不多,這篇文章詳細講述了Nand Flash數(shù)據(jù)存儲方式和數(shù)據(jù)讀寫方法,并用具體的芯片為例作了詳細的解釋。 NAND Flash 的數(shù)據(jù)是以bit 的方式保存在memory cell,一般來說,一個cell 中只能存儲一個bit。這些cell 以8 個或者16 個為單位,連成bit line,形成所謂的byte(x8)/word(x16),這就是NAND Device 的位寬。這些Line 會再組成Page,(Nand Flash 有多種結(jié)構(gòu),我使用的Nand Flash 是K9F1208,下面內(nèi)容針對三星的K9F120
13、8U0M),每頁528Byte,每32 個page 形成一個Block, Sizeof(block)=16kByte 。1 block=16kbyte,512Mbit=64Mbyte,Numberof(block)=4096 1block=32page, 1page=528byte=512byte(Main Area)+16byte(Spare Area)Nand flash 以頁為單位讀寫數(shù)據(jù),而以塊為單位擦除數(shù)據(jù)。按照這樣的組織方式可以形成所謂的三類地址: -Block Address - Page Address -Column Address 。對于NAND Flash 來講,地址和命
14、令只能在I/O7:0上傳遞,數(shù)據(jù)寬度是8 位。512byte需要9bit來表示,對于528byte系列的NAND,這512byte被分成1st half和2nd half,各自的訪問由地址指針命令來選擇,A7:0就是所謂的column address。32 個page 需要5bit 來表示,占用A13:9,即該page 在塊內(nèi)的相對地址。Block的地址是由A14 以上的bit 來表示,例如512Mb 的NAND,共4096block,因此,需要12 個bit 來表示,即A25:14,如果是1Gbit 的528byte/page的NAND Flash,則block address用A26:24
15、表示。而page address就是blcok address|page address in block NAND Flash 的地址表示為: Block Address|Page Address in block|halfpage pointer|Column Address 地址傳送順序是Column Address,Page Address,Block Address。 由于地址只能在I/O7:0上傳遞,因此,必須采用移位的方式進行。 例如,對于512Mbit x8 的NAND flash,地址范圍是00x3FF_FFFF,只要是這個范圍內(nèi)的數(shù)值表示的地址都是有效的。以NAND_ADD
16、R 為例:第1 步是傳遞column address,就是NAND_ADDR7:0,不需移位即可傳遞到I/O7:0上,而halfpage pointer 即bit8 是由操作指令決定的,即指令決定在哪個halfpage 上進行讀寫。而真正的bit8 的值是dont care 的。第2 步就是將NAND_ADDR 右移9 位,將NAND_ADDR16:9傳到I/O7:0上第3 步將NAND_ADDR24:17放到I/O 上第4 步需要將NAND_ADDR25放到I/O 上 因此,整個地址傳遞過程需要4 步才能完成,即4-step addressing。如果NAND Flash 的容量是256Mb
17、it 以下,那么,block adress 最高位只到bit24,因此尋址 只需要3 步。 下面,就x16 的NAND flash 器件稍微進行一下說明。 由于一個page 的main area 的容量為256word,仍相當于512byte。但是,這個時候沒有所謂 的1st halfpage 和2nd halfpage 之分了,所以,bit8就變得沒有意義了,也就是這個時候 bit8 完全不用管,地址傳遞仍然和x8 器件相同。除了,這一點之外,x16 的NAND使用方法和 x8 的使用方法完全相同。正如硬盤的盤片被分為磁道,每個磁道又分為若干扇區(qū),一塊nand flash也分為若干block
18、,每個block分為如干page。一般而言,block、page之間的關系隨著芯片的不同而不同,典型的分配是這樣的:1block = 32page1page = 512bytes(datafield) + 16bytes(oob)需要注意的是,對于flash的讀寫都是以一個page開始的,但是在讀寫之前必須進行flash的擦寫,而擦寫則是以一個block為單位的。同時必須提醒的是,512bytes理論上被分為1st half 和2sd half,每個half各占256個字節(jié)。我們討論的K9F1208U0B總共有4096 個Blocks,故我們可以知道這塊flash的容量為4096 *(32 *528)= 69206016 Bytes = 66 MB ;但事實上每個Page上的最后16Bytes是用于存貯檢驗碼和其他信息用的,并不能存放實際的數(shù)據(jù),所以實際上我們可以操作的芯片容量為4096 *(32 *512) = 67108864 Bytes = 64 MB由 上圖所示,1個Page總共由528 Bytes組成,這528個字節(jié)按順序
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《迷彩服》的教案
- 《背影圖》的閱讀練習題及答案
- 鹵味合伙合同范本
- 半成品鋼材銷售合同范例
- 保險中介合同范本
- 廠家保養(yǎng)合同范例
- 勞務合同范本安徽
- 《天宮課堂》第二課學生心得體會
- 《賣火柴的小女孩》大班教案
- 人保勞動合同范本
- 畢業(yè)設計論文-貝類脫殼機設計
- 八項規(guī)定學習課件
- 《工程電磁場》配套教學課件
- 《過零丁洋》公開課件
- 從生產(chǎn)工藝角度詳解磷酸鐵鋰
- 全套橋梁施工技術交底記錄
- 《教師職業(yè)道德》全書word版
- 城市定制型商業(yè)醫(yī)療保險(惠民保)知識圖譜
- GB∕T 3836.31-2021 爆炸性環(huán)境 第31部分:由防粉塵點燃外殼“t”保護的設備
- AMDAR資料的分析和應用
- 橋梁缺陷與預防
評論
0/150
提交評論