欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
NOR & NAND

NAND與NOR FLASH的原理與異同

2 04月 2008

一、存儲數據的原理
兩種閃存都是用三端器件作為存儲單元,分別為源極、漏極和柵極,與場(chǎng)效應管的工作原理相同,主要是利用電場(chǎng)的效應來(lái)控制源極與漏極之間的通斷,柵極的 電流消耗極小,不同的是場(chǎng)效應管為單柵極結構,而FLASH為雙柵極結構,在柵極與硅襯底之間增加了一個(gè)浮置柵極。

11.jpg
浮置柵極是由氮化物夾在兩層二氧化硅材料之間構成的,中間的氮化物就是可以存儲電荷的電荷勢阱。上下兩層氧化物的厚度大于50埃,以避免發(fā)生擊穿。
二、浮柵的重放電
向數據單元內寫(xiě)入數據的過(guò)程就是向電荷勢阱注入電荷的過(guò)程,寫(xiě)入數據有兩種技術(shù),熱電子注入(hot electron injection)和F-N隧道效應(Fowler Nordheim tunneling),前一種是通過(guò)源極給浮柵充電,后一種是通過(guò)硅基層給浮柵充電。NOR型FLASH通過(guò)熱電子注入方式給浮柵充電,而NAND則通過(guò) F-N隧道效應給浮柵充電。
在寫(xiě)入新數據之前,必須先將原來(lái)的數據擦除,這點(diǎn)跟硬盤(pán)不同,也就是將浮柵的電荷放掉,兩種FLASH都是通過(guò)F-N隧道效應放電。

21.jpg

3.jpg
三、0和1
這方面兩種FLASH一樣,向浮柵中注入電荷表示寫(xiě)入了‘0‘,沒(méi)有注入電荷表示‘1‘,所以對FLASH清除數據是寫(xiě)1的,這與硬盤(pán)正好相反;
對于浮柵中有電荷的單元來(lái)說(shuō),由于浮柵的感應作用,在源極和漏極之間將形成帶正電的空間電荷區,這時(shí)無(wú)論控制極上有沒(méi)有施加偏置電壓,晶體管都將處于 導通狀態(tài)。而對于浮柵中沒(méi)有電荷的晶體管來(lái)說(shuō)只有當控制極上施加有適當的偏置電壓,在硅基層上感應出電荷,源極和漏極才能導通,也就是說(shuō)在沒(méi)有給控制極施 加偏置電壓時(shí),晶體管是截止的。
如果晶體管的源極接地而漏極接位線(xiàn),在無(wú)偏置電壓的情況下,檢測晶體管的導通狀態(tài)就可以獲得存儲單元中的數據,如果位線(xiàn)上的電平為低,說(shuō)明晶體管處于 導通狀態(tài),讀取的數據為0,如果位線(xiàn)上為高電平,則說(shuō)明晶體管處于截止狀態(tài),讀取的數據為1。由于控制柵極在讀取數據的過(guò)程中施加的電壓較小或根本不施加 電壓,不足以改變浮置柵極中原有的電荷量,所以讀取操作不會(huì )改變FLASH中原有的數據。
四、連接和編址方式
兩種FLASH具有相同的存儲單元,工作原理也一樣,為了縮短存取時(shí)間并不是對每個(gè)單元進(jìn)行單獨的存取操作,而是對一定數量的存取單元進(jìn)行集體操作, NAND型FLASH各存儲單元之間是串聯(lián)的,而NOR型FLASH各單元之間是并聯(lián)的;為了對全部的存儲單元有效管理,必須對存儲單元進(jìn)行統一編址。
NAND的全部存儲單元分為若干個(gè)塊,每個(gè)塊又分為若干個(gè)頁(yè),每個(gè)頁(yè)是512byte,就是512個(gè)8位數,就是說(shuō)每個(gè)頁(yè)有512條位線(xiàn),每條位線(xiàn)下 有8個(gè)存儲單元;那么每頁(yè)存儲的數據正好跟硬盤(pán)的一個(gè)扇區存儲的數據相同,這是設計時(shí)為了方便與磁盤(pán)進(jìn)行數據交換而特意安排的,那么塊就類(lèi)似硬盤(pán)的簇;容 量不同,塊的數量不同,組成塊的頁(yè)的數量也不同。在讀取數據時(shí),當字線(xiàn)和位線(xiàn)鎖定某個(gè)晶體管時(shí),該晶體管的控制極不加偏置電壓,其它的7個(gè)都加上偏置電壓 而導通,如果這個(gè)晶體管的浮柵中有電荷就會(huì )導通使位線(xiàn)為低電平,讀出的數就是0,反之就是1。
NOR的每個(gè)存儲單元以并聯(lián)的方式連接到位線(xiàn),方便對每一位進(jìn)行隨機存??;具有專(zhuān)用的地址線(xiàn),可以實(shí)現一次性的直接尋址;縮短了FLASH對處理器指令的執行時(shí)間。

4.gif
五、性能
1、速度

在寫(xiě)數據和擦除數據時(shí),NAND由于支持整塊擦寫(xiě)操作,所以速度比NOR要快得多,兩者相差近千倍;讀取時(shí),由于NAND要先向芯片發(fā)送地址信息進(jìn)行 尋址才能開(kāi)始讀寫(xiě)數據,而它的地址信息包括塊號、塊內頁(yè)號和頁(yè)內字節號等部分,要順序選擇才能定位到要操作的字節;這樣每進(jìn)行一次數據訪(fǎng)問(wèn)需要經(jīng)過(guò)三次尋 址,至少要三個(gè)時(shí)鐘周期;而NOR型FLASH的操作則是以字或字節為單位進(jìn)行的,直接讀取,所以讀取數據時(shí),NOR有明顯優(yōu)勢。
2、容量和成本
NOR型FLASH的每個(gè)存儲單元與位線(xiàn)相連,增加了芯片內位線(xiàn)的數量,不利于存儲密度的提高。所以在面積和工藝相同的情況下,NAND型FLASH的容量比NOR要大得多,生產(chǎn)成本更低,也更容易生產(chǎn)大容量的芯片。
3、易用性
NAND FLASH的I/O端口采用復用的數據線(xiàn)和地址線(xiàn),必須先通過(guò)寄存器串行地進(jìn)行數據存取,各個(gè)產(chǎn)品或廠(chǎng)商對信號的定義不同,增加了應用的難 度;NOR FLASH有專(zhuān)用的地址引腳來(lái)尋址,較容易與其它芯片進(jìn)行連接,另外還支持本地執行,應用程序可以直接在FLASH內部運行,可以簡(jiǎn)化產(chǎn)品設計。
4、可靠性
NAND FLASH相鄰單元之間較易發(fā)生位翻轉而導致壞塊出現,而且是隨機分布的,如果想在生產(chǎn)過(guò)程中消除壞塊會(huì )導致成品率太低、性?xún)r(jià)比很差,所以在出廠(chǎng)前要在高 溫、高壓條件下檢測生產(chǎn)過(guò)程中產(chǎn)生的壞塊,寫(xiě)入壞塊標記,防止使用時(shí)向壞塊寫(xiě)入數據;但在使用過(guò)程中還難免產(chǎn)生新的壞塊,所以在使用的時(shí)候要配合 EDC/ECC(錯誤探測/錯誤更正)和BBM(壞塊管理)等軟件措施來(lái)保障數據的可靠性。壞塊管理軟件能夠發(fā)現并更換一個(gè)讀寫(xiě)失敗的區塊,將數據復制到 一個(gè)有效的區塊。
5、耐久性
FLASH由于寫(xiě)入和擦除數據時(shí)會(huì )導致介質(zhì)的氧化降解,導致芯片老化,在這個(gè)方面NOR尤甚,所以并不適合頻繁地擦寫(xiě),NAND的擦寫(xiě)次數是100萬(wàn)次,而NOR只有10萬(wàn)次。
 
 
 

關(guān)于Nand Flash和Nor Flash的XIP

2 04月 2008

XIP - eXecute In Place,中文常譯為,就地執行。指代碼可以在當前(存儲器中)執行
關(guān)于Nor Flash的XIP :
NAND and NOR and XIP
"NOR的特點(diǎn)是芯片內執行(XIP, eXecute In Place),這樣應用程序可以直接在flash閃存內運行,不必再把代碼讀到系統RAM中。NOR的傳輸效率很高,在1~4MB的小容量時(shí)具有很高的成本效益,但是很低的寫(xiě)入和擦除速度大大影響了它的性能。
NAND結構能提供極高的單元密度,可以達到高存儲密度,并且寫(xiě)入和擦除的速度也很快。應用NAND的困難在于flash的管理和需要特殊的系統接口。 "
關(guān)于Nand Flash的XIP:
NAND FLASH 是不是無(wú)法做XIP?
問(wèn):NAND FLASH 是不是無(wú)法做XIP,只有 NOR FLASH才能?
答:所謂XIP,就是CODE是在FLASH上直接運行. NANDFLASH只是不適合做XIP,但并不是不能做XIP。
要一段CODE能夠正確的運行,要保證它的CODE是連續的,正確的.
由于一些電氣特性的原因,NOR FLASH能夠做到這一點(diǎn),不存在壞道或壞塊,所以能夠做XIP。
而對于NAND FLASH, 它只保證它的BLOCK 0是好的,其他的塊并不保證,雖然出錯的幾率比較低,但還是有出錯的可能,所以CODE可能無(wú)法連續正確地執行。
但只要你有額外的保障措施,比如說(shuō)在執行CODE之前去做一次ECC校驗,來(lái)確保CODE是連續正確的.那你也可以做XIP.事實(shí)上我就正在這么做,而且也證明是成功的
XiP定義(eXecute In Place)立即執行
XIP定義:
XIP即就地執行的意思,操作系統內核直接在Flash中運行,不需要拷貝到RAM。但是,Flash的存儲器訪(fǎng)問(wèn)周期要比RAM大得多,在使用XIP技術(shù)后可能會(huì )降低程序的運行速度,不過(guò)由于CPU的指令預取機制以及Cache機制,實(shí)際使用起來(lái)并不會(huì )明顯降低應用程序的運行速度。XIP的原理很簡(jiǎn)單,即指操作系統或應用程序直接從非易失性存儲器中執行。就當前的技術(shù)來(lái)說(shuō),這里的非易失性存儲器特指NOR型Flash,因為只有N0R型的Flash才可以隨機存取。文獻[4]中提供了一種通過(guò)增加Cache使NAND Flash也可以進(jìn)行XIP的方案,但需要增加硬件電路,不是一個(gè)通用的解決方案。
除了硬件提供支持以外,XIP還需要軟件的支持。操作系統內核和應用程序在運行時(shí),它在內存中的映像可以分為三個(gè)部分:代碼段、數據段和堆棧段。代碼段對應于執行程序中的Text Section,其中包括運行代碼和只讀數據,這個(gè)段在內存中一般被標記為只讀。數據段對應于運行文件中的Data Section和BSS Section(???),其中存放的是各種數據(經(jīng)過(guò)初始化的和未經(jīng)初始化的)和靜態(tài)變量,而堆棧段存放的則用于保存函數調用和局部變量。從以上分析可知,程序運行時(shí)在內存的映像分為兩類(lèi):一類(lèi)是只讀的,如代碼段;另一類(lèi)是可寫(xiě)的,如數據段。而Flash雖然是可寫(xiě)的,但并不能像寫(xiě)普通RAM一樣進(jìn)行。因此,當程序在Flash中運行時(shí),我們仍然需要把部分可寫(xiě)的數據段放在RAM 中。XIP是一種能夠直接在閃速存儲器中執行代碼而無(wú)須裝載到RAM中執行的機制。這樣減少了內核從閃速存儲器拷貝到RAM的時(shí)間,并采用非壓縮映像減少了內核自解壓的時(shí)間。由于閃速存儲器訪(fǎng)問(wèn)速度低于RAM,采用XIP技術(shù)的同時(shí),根據硬件環(huán)境對閃速存儲器和RAM使用量進(jìn)行平衡。
eXecute In Place - XIP
XIP (eXecute In Place ) is a useful option available with uClinux systems. Its main value lies in [...]
 
 
 
Nand-Flash/Nor-Flash存儲模塊設計
     隨著(zhù)嵌入式系統越來(lái)越廣泛的應用,嵌入式系統中的數據存儲和數據管理已經(jīng)成為一個(gè)重要的研究課題。Flash存儲器具有速度快、成本低等很多優(yōu)點(diǎn),因此在嵌入式系統中的應用也越來(lái)越多。為了合理地管理存儲數據,進(jìn)行數據共享,Flash的設計在A(yíng)RM嵌入式系統中對數據存儲和數據管理尤為重要。
1實(shí)例說(shuō)明
在嵌入式設備中,有兩種程序運行方式:一種是將程序加載到SDRAM中運行,另一種是程序直接在其所在的ROM/Flash存儲器中運行。一種比較常用的運行程序的方法是將該Flash存儲器作為一個(gè)硬盤(pán)使用,當程序需要運行時(shí),首先將其加載到SDRAM存儲器中,在SDRAM中運行。通常相對于:ROM而言,SDRAM訪(fǎng)問(wèn)速度較快,數據總線(xiàn)較寬,程序存SDRAM中的運行速度比在Flash中的運行速度要快。

 
ARM 中的存儲模塊示意圖如圖7-1所示。
其中,各功能模塊的含義如下。
(1)系統初始化——進(jìn)行系統的最小初始化,包括初始化系統時(shí)鐘、系統的中斷向量表、SDRAM及一些其他的重要I/O端口。
(2)映像文件下載——通過(guò)一定的方式,得到新的目標程序的映像文件,將該文件保存到系統的SDRAM中。要完成這部分工作,ARM嵌入式設備需要與外部的主機建立某種通道,大部分系統都是使用串行口,也可以使用以太網(wǎng)口或者并行口進(jìn)行通信。
 (2)Flash寫(xiě)入——根據不同的Flash存儲器,選擇合適的操作命令,將新的目標程序的映像文件寫(xiě)入到目標系統的Flash存儲器中,實(shí)現Flash存儲器操作的功能模塊。
在本實(shí)例里,Flash用于存放程序代碼、常量表和一些存系統掉電后需要保存的用戶(hù)數據等。
2 Flash原理
2.1 Nand-Flash與Nor-Flash區別
Flash主要分為Nor-Flash和Nand-Flash兩類(lèi),下面對二者進(jìn)行較為詳細的比較。
1. 性能比較
Flash閃存是非易失存儲器,可以對存儲器單元塊進(jìn)行擦寫(xiě)和再編程。任何Flash器件進(jìn)行寫(xiě)入操作前都必須先執行擦除操作。Nand-Flash器件執行擦除操作十分簡(jiǎn)單;而Nor-Flash則要求在進(jìn)行擦除前,先將目標塊內所有的位都寫(xiě)為0。擦除:Nor-Flash器件時(shí)是以64~128KB的塊進(jìn)行的,執行一個(gè)寫(xiě)入/擦除操作的時(shí)間為1~5s;擦除Nand-Flash器件是以8~32KB的塊進(jìn)行的,執行相同的操作最多只需要4ms。
執行擦除操作時(shí),塊尺寸的不同進(jìn)一步拉大了Nor-Flash和Nand-Flash之間的性能差距。統計表明,對于給定的一套寫(xiě)入操作(尤其是更新小文件時(shí)),更多的擦除操作必須在基于Nor-Flash的單元中進(jìn)行。因此,當選擇存儲解決方案時(shí),必須權衡以下的各項因素。
Nor-Flash的讀取速度比Nand-Flash稍快一些。
Nand-Flash的寫(xiě)入速度比Nor-Flash快很多。
Nand-Flash的擦除速度遠比Nor-Flash快。
大多數寫(xiě)入操作需要先進(jìn)行擦除操作。
Nand-Flash的擦除單元更小,相應的擦除電路更少。
2. 接口差別
Not-Flash帶有SRAM接口,有足夠的地址引腳來(lái)尋址,可以很容易地存取其內容的每一字節。
Nand-Flash器件使用復雜的I/O口來(lái)串行地存取數據,各個(gè)產(chǎn)品或廠(chǎng)商的方法可能各不相同。8個(gè)引腳用來(lái)傳送控制、地址和數據信息。Nand-Flash的讀和寫(xiě)操作采用512字節的塊,這一點(diǎn)有點(diǎn)像硬盤(pán)管理此類(lèi)操作。很自然地,基于Nand-Flash的存儲器就可以取代硬盤(pán)或其他塊設備。
3. 容量和成本
Nand-Flash的單元尺寸幾乎是Nor-Flash器件的一半。由于生產(chǎn)過(guò)程更為簡(jiǎn)單,NaIld-Flash結構可以在給定的模具尺寸內提供更高的容量,也就相應地降低了價(jià)格。
Nor-Flash占據了大部分容量為1~16MB的內存市場(chǎng),而Nand-Flash只是用在8~128MB的產(chǎn)品當中。
4. 可靠性和耐用性
采用Flash介質(zhì)時(shí),一個(gè)需要重點(diǎn)考慮的問(wèn)題是可靠性。對于需要擴展MTBF(平均無(wú)故障時(shí)間)的系統來(lái)說(shuō),Flash是非常合適的存儲方案??梢詮膲勖?耐用性)、位交換和壞塊處理三個(gè)方面來(lái)比較Nor-Flash和Nand-Flash的可靠性。
(1) 壽命(耐用性)
在Nand-Flash閃存中,每個(gè)塊的最大擦寫(xiě)次數是100萬(wàn)次,而Nor-Flash的擦寫(xiě)次數是10萬(wàn)次。Nand-Flash存儲器除了具有10:1的塊擦除周期優(yōu)勢外,典型的Nand-Flash塊尺寸要比Nor-Flash器件小8位,每個(gè)Nand-Flash存儲器塊在給定時(shí)間內的刪除次數要少一些。
(2) 位交換
  
所有的Flash器件都受位交換現象的困擾。在某些情況下(Nand-Flash發(fā)生的次數要比Nor-Flash多),一個(gè)比特位會(huì )發(fā)生反轉或被報告反轉了。一位的變化可能不很明顯,但是如果發(fā)生在一個(gè)關(guān)鍵文件上,這個(gè)小小的故障就可能導致系統停機。如果只是報告有問(wèn)題,則多讀幾次就可能解決。
位反轉的問(wèn)題更多見(jiàn)于Nand-Flash閃存,Nand-Flash的供應商建議使用Nand-Flash閃存時(shí),同時(shí)使用EDC/ECC算法。當然,如果用本地存儲設備來(lái)存儲操作系統、配置文件或其他敏感信息時(shí),則必須使用EDC/ECC(糾錯碼)系統以確??煽啃?。
(3) 壞塊處理
Nand-Flash器件中的壞塊是隨機分布的。以前做過(guò)消除壞塊的努力,但發(fā)現成品率太低,代價(jià)太高,根本不劃算。Nand-Flash器件需要對介質(zhì)進(jìn)行初始化掃描以發(fā)現壞塊,并將壞塊標記為不可用。在已制成的器件中,如果通過(guò)可靠的方法不能進(jìn)行這項處理,則將導致高故障率。
5. 易用性
可以非常直接地使用基于Nor-Flash的閃存,像其他存儲器那樣連接,并可以在上面直接運行代碼。由于需要I/O接口,Nand-Flash要復雜得多,各種Nand-Flash器件的存取方法因廠(chǎng)家而異。在使用Nand-Flash器件時(shí),必須先寫(xiě)入驅動(dòng)程序,才能繼續執行其他操作。向Nand-Flash器件寫(xiě)入信息需要相當的技巧,因為設計人員絕不能向壞塊寫(xiě)入,這就意味著(zhù)在Nand-Flash器件上自始至終都必須進(jìn)行虛擬映射。
6. 軟件支持
在Nor-Flash器件上運行代碼不需要任何的軟件支持。在Nand-Flash器件上進(jìn)行同樣操作時(shí),通常需要驅動(dòng)程序,也就是閃存技術(shù)驅動(dòng)程序(Memory Technology Devices,MTD)。Nand-Flash和Nor-Flash器件在進(jìn)行寫(xiě)入和擦除操作時(shí)都需要MTD,但使用Nor-Flash器件時(shí),所需要的MTD要相對少一些。許多廠(chǎng)商都提供用于Nor-Flash器件的更高級的軟件,在Linux系統中采用JFFS驅動(dòng),這在后文中將具體講述。
2.2 Flash驅動(dòng)
對于Flash芯片的驅動(dòng),Linux提供了完善的驅動(dòng)程序,只需要在內核配置里面選擇好相應的類(lèi)型即可。
在Linux中通過(guò)MTD子系統提供的抽象設備機制,來(lái)實(shí)現對Flash設備的管理控制和數據讀寫(xiě)。MTD設備是一類(lèi)特殊的存儲設備,如常用的Flash芯片、CFI卡等。MTD同時(shí)提供通過(guò)字符設備方式和塊設備方式來(lái)管理控制MTD設備的機制。
MTD核心層分為:用戶(hù)模塊接口層、MTD抽象層和MTD設備驅動(dòng)模塊層。MTD核心層通過(guò)設備驅動(dòng)模塊實(shí)現對存儲設備的物理訪(fǎng)問(wèn)功能,通過(guò)用戶(hù)模塊提供用戶(hù)空間直接訪(fǎng)問(wèn)的接口。
MTD的設備驅動(dòng)模塊層負責驅動(dòng)Flash硬件,只需實(shí)現實(shí)際設備上的訪(fǎng)問(wèn)控制,與內核交互的復雜工作則由MTD抽象層完成。其中也對Nand-Flash的驅動(dòng)進(jìn)行了抽象,還實(shí)現了錯誤檢測與糾錯(ECC)和壞塊處理等用戶(hù)模塊層提供從用戶(hù)空間直接訪(fǎng)問(wèn)的接口,上層應用只需通過(guò)MTD抽象層提供的字符設備方式或塊設備方式來(lái)訪(fǎng)問(wèn)MTD抽象設備,然后通過(guò)MTD的內部機制把這些請求交給實(shí)際的驅動(dòng)模塊去執行。MTD抽象層定義了抽象的MTD設備結構,對于具體設備的驅動(dòng)模塊,需要設計好公共函數的實(shí)際內容,并在檢測到實(shí)際設備后注冊一個(gè)MTD設備,然后就可通過(guò)MTD提供的字符設備訪(fǎng)問(wèn)方式或塊設備訪(fǎng)問(wèn)方式直接使用具體的硬件設備。
MTD程序編寫(xiě)在以后的章節里會(huì )詳細介紹。
3硬件電路設計
在系統中使用了兩種Flash芯片,其中Nor-Flash主要用于存放系統代碼,而Nand-Flash主要用于存放用戶(hù)信息。
3.1 Nor-FIash的設計
系統所用的Nor-Flash芯片是Intel公司的E28F128J3 Flash,如圖7-2所示。128Mbit的存儲空間由128個(gè)128KB(131072字節)的擦除塊組成。擦除塊是相互獨立的,每一塊的擦除操作都可以在1s內完成。每一塊可以獨立地被擦除100000次。這些塊可以分別設定為是可鎖的或是非可鎖的,由一個(gè)鎖定位來(lái)控制。還有一個(gè)128bit的保護寄存器可以復用。


該Flash采用25根地址線(xiàn)和16位數據線(xiàn),可以通過(guò)nBYTE這個(gè)信號來(lái)選擇是8位還是16位方式訪(fǎng)問(wèn)。該系統是采用16位方式訪(fǎng)問(wèn)的,因此該信號線(xiàn)接高電平,同時(shí)A0地址線(xiàn)不起作用,一同接高。nOE/nWE是讀寫(xiě)信號,由EP7312的讀寫(xiě)控制線(xiàn)直接控制。Flash的片選信號有3個(gè),它們組合后的結果如表7-1所示。

 

系統中將CEl、CE2信號接高,CE0由ARM的CS0片選線(xiàn)來(lái)控制。
3.2 Nand-Flash的設計
     系統中所采用的Nand-Flash芯片是Samsung公司的K9F2808U。該器件存儲容量為16M×8位,除此之外還有512KX 8位的空閑存儲區。該器件采用TSSOP48封裝,工作電壓為2.7~3.6V。8位I/O端口采用地址、數據和命令復用的方法,這樣既可減少引腳數,又可使接口電路簡(jiǎn)捷。
由于A(yíng)RM系統沒(méi)有Nand-Flash控制所需要的CLE、ALE信號,因此需要利用ARM的通用GPIO口。具體的連接電路如圖7-3所示。

命令鎖存使能(CLE),使輸入的命令發(fā)送到命令寄存器。當變?yōu)楦唠娖綍r(shí),在WE上升沿命令通過(guò)I/O口鎖存到命令寄存器。
地址鎖存使能(ALE),控制地址輸入到片內的地址寄存器中,地址是在WE的上升沿被鎖存的。
片選使能(CE),用于器件的選擇控制。在讀操作、CE變?yōu)楦唠娖綍r(shí),器件返回到  備用狀態(tài);然而,當器件在寫(xiě)操作或擦除操作過(guò)程中保持忙狀態(tài)時(shí),CE的變高將被忽略,不會(huì )返回到備用狀態(tài)。
寫(xiě)使能(WE),用于控制把命令、地址和數據在它的上升沿寫(xiě)入到I/O端口;而在  讀操作時(shí)必須保持高電平。
讀使能(RE),控制把數據放到I/O總線(xiàn)上,在它的下降沿tREA時(shí)間后數據有效;同時(shí)使內部的列地址自動(dòng)加1。
I/O端口,用于命令、地址和數據的輸入及讀操作時(shí)的數據輸出。當芯片未選中時(shí),                I/O口為高阻態(tài)。
工寫(xiě)保護(WP),禁止寫(xiě)操作和擦除操作。當它有效時(shí),內部的高壓生成器將會(huì )復位。
準備/忙(R/B),反映當前器件的狀態(tài)。低電平時(shí),表示寫(xiě)操作或擦除操作以及隨機讀正進(jìn)行中;當它變?yōu)楦唠娖綍r(shí),表示這些操作已經(jīng)完成。它采用了開(kāi)漏輸出結構,在芯片未選中時(shí)不會(huì )保持高阻態(tài)。
3.3 Nor-F1ash/Nand-FIash跳線(xiàn)選擇
由于A(yíng)RM提供了Nand-Flash Boot-loader技術(shù)和可選擇的多種啟動(dòng)方式,因此硬件設計中同時(shí)設計了Nor-Flash和Nand-Flash,通過(guò)跳線(xiàn)選擇啟動(dòng)方式,如圖7-4所示。


4軟件設計
     Flash 存儲器的支撐軟件包括基本的讀/寫(xiě)/擦除操作和上層的閃存管理軟件,采用的嵌入式Linux操作系統中通過(guò)MTD子系統提供的抽象設備機制,來(lái)實(shí)現對Flash設備的管理控制和數據讀寫(xiě)。
4.1 FIash數據存儲操作流程
     向Flash存儲器的特定寄存器寫(xiě)入地址和數據命令,就可對Flash存儲器進(jìn)行燒寫(xiě)、擦除等操作,但操作必須按照一定的順序,否則就會(huì )導致Flash存儲器復位而使操作命令無(wú)法完成。編程指令只能使“1”變?yōu)?#8220;0”,而擦除命令可使“0”變?yōu)?#8220;1”,因此正確的操作順序是先擦除,后編程,當Flash存儲器被擦除以后,讀出的內容應全為0xFF。
對Flash操作的程序流程如圖7-5所示。

系統啟動(dòng)后,對系統關(guān)鍵設備(包括ARM、sI)RAM、N0r-Flash和Nand-Flash等)進(jìn)行初始化操作,然后啟動(dòng)Boot-loader,將Nand-Flash上的Linux內核讀入SDRAM執行。
初始化時(shí),除了對Flash內部寄存器進(jìn)行初始化設置外,還需要設置ARM的寄存器。
4.2程序代碼說(shuō)明
對Flash存儲器的燒寫(xiě)、整片擦除、按扇區擦除及其他操作,都可以通過(guò)編程實(shí)現(見(jiàn)如下代碼)。對于編寫(xiě)連續燒寫(xiě)Flash存儲器多個(gè)存儲單元的程序,只需循環(huán)執行即可,但應在對每個(gè)單元燒寫(xiě)命令發(fā)出后進(jìn)行檢測,保證前一個(gè)單元燒寫(xiě)結束后再進(jìn)行下一個(gè)存儲單元的燒寫(xiě),當然也可采用延時(shí)等待的方法進(jìn)行連續的燒寫(xiě)。





在讀取Flash的時(shí)候不一定讀取一個(gè)block,可以按照實(shí)際需要的地址讀??;但是在寫(xiě)的時(shí)候一次需要擦除一個(gè)扇區,然后再寫(xiě)入。讀取子程序設定了一次讀取一個(gè)扇區,目的是為了按需要更改后再寫(xiě)入。
5實(shí)例總結
     ARM與Flash存儲器的接口電路設計與調試,以及對Flash存儲器的編程與擦除是ARM系統設計中的一項重要部分,Flash存儲器通常裝載著(zhù)嵌入式系統的Boot-loader程序和操作系統的核心代碼,因此Flash的穩定與否直接決定整個(gè)系統能否運作。
本章講述了兩種Flash芯片——Nor-Flash和Nand-Flash的特點(diǎn)、軟硬件設計,在對Flash的編程中,需要注意以下三個(gè)方面。
   在Flash編程之前應先擦除Flash,對Flash進(jìn)行擦除過(guò)程將持續一段時(shí)間(視不同的Flash芯片而定,具體的可以查找Flash芯片典型擦除時(shí)間,一般為20s左右),擦除后Flash的數據為全FF。
   對Flash編程的過(guò)程,將持續很長(cháng)時(shí)間,通常編程50KB的文件需要15分鐘左右(視不同的Flash芯片、上位機和操作系統而定)。
   擦除Flash操作不可恢復,對Flash編程需使用“初始化配置”,如關(guān)閉看門(mén)狗、關(guān)閉系統對Flash空間的緩沖、設置對Flash空間的操作時(shí)序等。
 
 


 

 
 

NAND和NOR flash詳解

作者:未知   時(shí)間:2007-11-10 18:20:04  來(lái)自:網(wǎng)上轉載  瀏覽次數:520  文字大?。骸?a href="javascript:fontZoom(16)">】【】【

NOR和NAND是現在市場(chǎng)上兩種主要的非易失閃存技術(shù)。Intel于1988年首先開(kāi)發(fā)出NOR flash技術(shù),徹底改變了原先由EPROM和EEPROM一統天下的局面。緊接著(zhù),1989年,東芝公司發(fā)表了NAND flash結構,強調降低每比特的成本,更高的性能,并且象磁盤(pán)一樣可以通過(guò)接口輕松升級。但是經(jīng)過(guò)了十多年之后,仍然有相當多的硬件工程師分不清NOR和NAND閃存。
  相“flash存儲器”經(jīng)??梢耘c相“NOR存儲器”互換使用。許多業(yè)內人士也搞不清楚NAND閃存技術(shù)相對于NOR技術(shù)的優(yōu)越之處,因為大多數情況下閃存只是用來(lái)存儲少量的代碼,這時(shí)NOR閃存更適合一些。而NAND則是高數據存儲密度的理想解決方案。  
  NOR的特點(diǎn)是芯片內執行(XIP, eXecute In Place),這樣應用程序可以直接在flash 閃存內運行,不必再把代碼讀到系統RAM中。NOR的傳輸效率很高,在1~4MB的小容量時(shí)具有很高的成本效益,但是很低的寫(xiě)入和擦除速度大大影響了它的性能。
  NAND結構能提供極高的單元密度,可以達到高存儲密度,并且寫(xiě)入和擦除的速度也很快。應用NAND的困難在于flash的管理和需要特殊的系統接口。

性能比較
  flash閃存是非易失存儲器,可以對稱(chēng)為塊的存儲器單元塊進(jìn)行擦寫(xiě)和再編程。任何flash器件的寫(xiě)入操作只能在空或已擦除的單元內進(jìn)行,所以大多數情況下,在進(jìn)行寫(xiě)入操作之前必須先執行擦除。NAND器件執行擦除操作是十分簡(jiǎn)單的,而NOR則要求在進(jìn)行擦除前先要將目標塊內所有的位都寫(xiě)為0。
  由于擦除NOR器件時(shí)是以64~128KB的塊進(jìn)行的,執行一個(gè)寫(xiě)入/擦除操作的時(shí)間為5s,與此相反,擦除NAND器件是以8~32KB的塊進(jìn)行的,執行相同的操作最多只需要4ms。

  執行擦除時(shí)塊尺寸的不同進(jìn)一步拉大了NOR和NADN之間的性能差距,統計表明,對于給定的一套寫(xiě)入操作(尤其是更新小文件時(shí)),更多的擦除操作必須在基于NOR的單元中進(jìn)行。這樣,當選擇存儲解決方案時(shí),設計師必須權衡以下的各項因素。
  ● NOR的讀速度比NAND稍快一些。
  ● NAND的寫(xiě)入速度比NOR快很多。
  ● NAND的4ms擦除速度遠比NOR的5s快。
  ● 大多數寫(xiě)入操作需要先進(jìn)行擦除操作。
  ● NAND的擦除單元更小,相應的擦除電路更少。

接口差別

  NOR flash帶有SRAM接口,有足夠的地址引腳來(lái)尋址,可以很容易地存取其內部的每一個(gè)字節。
  NAND器件使用復雜的I/O口來(lái)串行地存取數據,各個(gè)產(chǎn)品或廠(chǎng)商的方法可能各不相同。8個(gè)引腳用來(lái)傳送控制、地址和數據信息。
  NAND讀和寫(xiě)操作采用512字節的塊,這一點(diǎn)有點(diǎn)像硬盤(pán)管理此類(lèi)操作,很自然地,基于NAND的存儲器就可以取代硬盤(pán)或其他塊設備。



容量和成本
  NAND flash的單元尺寸幾乎是NOR器件的一半,由于生產(chǎn)過(guò)程更為簡(jiǎn)單,NAND結構可以在給定的模具尺寸內提供更高的容量,也就相應地降低了價(jià)格。
  NOR flash占據了容量為1~16MB閃存市場(chǎng)的大部分,而NAND flash只是用在8~128M
B的產(chǎn)品當中,這也說(shuō)明NOR主要應用在代碼存儲介質(zhì)中,NAND適合于數據存儲,NAND在CompactFlash、Secure Digital、PC Cards和MMC存儲卡市場(chǎng)上所占份額最大。



可靠性和耐用性
  采用flahs介質(zhì)時(shí)一個(gè)需要重點(diǎn)考慮的問(wèn)題是可靠性。對于需要擴展MTBF的系統來(lái)說(shuō),Flash是非常合適的存儲方案??梢詮膲勖?耐用性)、位交換和壞塊處理三個(gè)方面來(lái)比較NOR和NAND的可靠性。

  壽命(耐用性)
  在NAND閃存中每個(gè)塊的最大擦寫(xiě)次數是一百萬(wàn)次,而NOR的擦寫(xiě)次數是十萬(wàn)次。NAND存儲器除了具有10比1的塊擦除周期優(yōu)勢,典型的NAND塊尺寸要比NOR器件小8倍,每個(gè)NAND存儲器塊在給定的時(shí)間內的刪除次數要少一些。


  位交換
  所有flash器件都受位交換現象的困擾。在某些情況下(很少見(jiàn),NAND發(fā)生的次數要比NOR多),一個(gè)比特位會(huì )發(fā)生反轉或被報告反轉了。
  一位的變化可能不很明顯,但是如果發(fā)生在一個(gè)關(guān)鍵文件上,這個(gè)小小的故障可能導致系統停機。如果只是報告有問(wèn)題,多讀幾次就可能解決了。
  當然,如果這個(gè)位真的改變了,就必須采用錯誤探測/錯誤更正(EDC/ECC)算法。位反轉的問(wèn)題更多見(jiàn)于NAND閃存,NAND的供應商建議使用NAND閃存的時(shí)候,同時(shí)使用EDC/ECC算法。
  這個(gè)問(wèn)題對于用NAND存儲多媒體信息時(shí)倒不是致命的。當然,如果用本地存儲設備來(lái)存儲操作系統、配置文件或其他敏感信息時(shí),必須使用EDC/ECC系統以確??煽啃?。


  壞塊處理
  NAND器件中的壞塊是隨機分布的。以前也曾有過(guò)消除壞塊的努力,但發(fā)現成品率太低,代價(jià)太高,根本不劃算。
  NAND器件需要對介質(zhì)進(jìn)行初始化掃描以發(fā)現壞塊,并將壞塊標記為不可用。在已制成的器件中,如果通過(guò)可靠的方法不能進(jìn)行這項處理,將導致高故障率。

  

易于使用
  可以非常直接地使用基于NOR的閃存,可以像其他存儲器那樣連接,并可以在上面直接運行代碼。
  由于需要I/O接口,NAND要復雜得多。各種NAND器件的存取方法因廠(chǎng)家而異。
  在使用NAND器件時(shí),必須先寫(xiě)入驅動(dòng)程序,才能繼續執行其他操作。向NAND器件寫(xiě)入信息需要相當的技巧,因為設計師絕不能向壞塊寫(xiě)入,這就意味著(zhù)在NAND器件上自始至終都必須進(jìn)行虛擬映射。

軟件支持
  當討論軟件支持的時(shí)候,應該區別基本的讀/寫(xiě)/擦操作和高一級的用于磁盤(pán)仿真和閃存管理算法的軟件,包括性能優(yōu)化。
  在NOR器件上運行代碼不需要任何的軟件支持,在NAND器件上進(jìn)行同樣操作時(shí),通常需要驅動(dòng)程序,也就是內存技術(shù)驅動(dòng)程序(MTD),NAND和NOR器件在進(jìn)行寫(xiě)入和擦除操作時(shí)都需要MTD。
  使用NOR器件時(shí)所需要的MTD要相對少一些,許多廠(chǎng)商都提供用于NOR器件的更高級軟件,這其中包括M-System的TrueFFS驅動(dòng),該驅動(dòng)被Wind River System、Microsoft、QNX Software System、Symbian和Intel等廠(chǎng)商所采用。
  驅動(dòng)還用于對DiskOnChip產(chǎn)品進(jìn)行仿真和NAND閃存的管理,包括糾錯、壞塊處理和損耗平衡。
 
 
 

NAND閃存深入解析



From : globalsources

  對于許多消費類(lèi)音視頻產(chǎn)品而言,NAND閃存是一種比硬盤(pán)驅動(dòng)器更好的存儲方案,這在不超過(guò)4GB的低容量應用中表現得猶為明顯。隨著(zhù)人們持續追求功耗更低、重量更輕和性能更佳的產(chǎn)品,NAND正被證明極具吸引力。

  NAND閃存陣列分為一系列128kB的區塊(block),這些區塊是NAND器件中最小的可擦除實(shí)體。擦除一個(gè)區塊就是把所有的位(bit)設置為“1”(而所有字節(byte)設置為FFh)。有必要通過(guò)編程,將已擦除的位從“1”變?yōu)?#8220;0”。最小的編程實(shí)體是字節(byte)。一些NOR閃存能同時(shí)執行讀寫(xiě)操作(見(jiàn)下圖1)。雖然NAND不能同時(shí)執行讀寫(xiě)操作,它可以采用稱(chēng)為“映射(shadowing)”的方法,在系統級實(shí)現這一點(diǎn)。這種方法在個(gè)人電腦上已經(jīng)沿用多年,即將BIOS從速率較低的ROM加載到速率較高的RAM上。

  NAND的效率較高,是因為NAND串中沒(méi)有金屬觸點(diǎn)。NAND閃存單元的大小比NOR要小(4F2:10F2)的原因,是NOR的每一個(gè)單元都需要獨立的金屬觸點(diǎn)。NAND與硬盤(pán)驅動(dòng)器類(lèi)似,基于扇區(頁(yè)),適合于存儲連續的數據,如圖片、音頻或個(gè)人電腦數據。雖然通過(guò)把數據映射到RAM上,能在系統級實(shí)現隨機存取,但是,這樣做需要額外的RAM存儲空間。此外,跟硬盤(pán)一樣,NAND器件存在壞的扇區,需要糾錯碼(ECC)來(lái)維持數據的完整性。

  存儲單元面積越小,裸片的面積也就越小。在這種情況下,NAND就能夠為當今的低成本消費市場(chǎng)提供存儲容量更大的閃存產(chǎn)品。NAND閃存用于幾乎所有可擦除的存儲卡。NAND的復用接口為所有最新的器件和密度都提供了一種相似的引腳輸出。這種引腳輸出使得設計工程師無(wú)須改變電路板的硬件設計,就能從更小的密度移植到更大密度的設計上。

NAND與NOR閃存比較

  NAND閃存的優(yōu)點(diǎn)在于寫(xiě)(編程)和擦除操作的速率快,而NOR的優(yōu)點(diǎn)是具有隨機存取和對字節執行寫(xiě)(編程)操作的能力(見(jiàn)下圖圖2)。NOR的隨機存取能力支持直接代碼執行(XiP),而這是嵌入式應用經(jīng)常需要的一個(gè)功能。NAND的缺點(diǎn)是隨機存取的速率慢,NOR的缺點(diǎn)是受到讀和擦除速度慢的性能制約。NAND較適合于存儲文件。如今,越來(lái)越多的處理器具備直接NAND接口,并能直接從NAND(沒(méi)有NOR)導入數據。

  NAND的真正好處是編程速度快、擦除時(shí)間短。NAND支持速率超過(guò)5Mbps的持續寫(xiě)操作,其區塊擦除時(shí)間短至2ms,而NOR是750ms。顯然,NAND在某些方面具有絕對優(yōu)勢。然而,它不太適合于直接隨機存取。

  對于16位的器件,NOR閃存大約需要41個(gè)I/O引腳;相對而言,NAND器件僅需24個(gè)引腳。NAND器件能夠復用指令、地址和數據總線(xiàn),從而節省了引腳數量。復用接口的一項好處,就在于能夠利用同樣的硬件設計和電路板,支持較大的NAND器件。由于普通的TSOP-1封裝已經(jīng)沿用多年,該功能讓客戶(hù)能夠把較高密度的NAND器件移植到相同的電路板上。NAND器件的另外一個(gè)好處顯然是其封裝選項:NAND提供一種厚膜的2Gb裸片或能夠支持最多四顆堆疊裸片,容許在相同的TSOP-1封裝中堆疊一個(gè)8Gb的器件。這就使得一種封裝和接口能夠在將來(lái)支持較高的密度。

 

圖1 不同閃存單元的對比


圖2 NOR閃存的隨機存取時(shí)間為0.12ms,而NAND閃存的第一字節隨機存取速度要慢得多

NAND基本操作

以2Gb NAND器件為例,它由2048個(gè)區塊組成,每個(gè)區塊有64個(gè)頁(yè)(見(jiàn)圖3)。

圖3 2GB NAND閃存包含2,048個(gè)區塊
  每一個(gè)頁(yè)均包含一個(gè)2048字節的數據區和64字節的空閑區,總共包含2,112字節??臻e區通常被用于ECC、耗損均衡(wear leveling)和其它軟件開(kāi)銷(xiāo)功能,盡管它在物理上與其它頁(yè)并沒(méi)有區別。NAND器件具有8或16位接口。通過(guò)8或16位寬的雙向數據總線(xiàn),主數據被連接到NAND存儲器。在16位模式,指令和地址僅僅利用低8位,而高8位僅僅在數據傳輸周期使用。

  擦除區塊所需時(shí)間約為2ms。一旦數據被載入寄存器,對一個(gè)頁(yè)的編程大約要300μs。讀一個(gè)頁(yè)面需要大約25μs,其中涉及到存儲陣列訪(fǎng)問(wèn)頁(yè),并將頁(yè)載入16,896位寄存器中。

除了I/O總線(xiàn),NAND接口由6個(gè)主要控制信號構成:

 

1.芯片啟動(dòng)(Chip Enable, CE#):如果沒(méi)有檢測到CE信號,那么,NAND器件就保持待機模式,不對任何控制信號作出響應。

2.寫(xiě)使能(Write Enable, WE#): WE#負責將數據、地址或指令寫(xiě)入NAND之中。

3.讀使能(Read Enable, RE#): RE#允許輸出數據緩沖器。

4.指令鎖存使能(Command Latch Enable, CLE): 當CLE為高時(shí),在WE#信號的上升沿,指令被鎖存到NAND指令寄存器中。

5.地址鎖存使能(Address Latch Enable, ALE):當ALE為高時(shí),在WE#信號的上升沿,地址被鎖存到NAND地址寄存器中。

6.就緒/忙(Ready/Busy, R/B#):如果NAND器件忙,R/B#信號將變低。該信號是漏極開(kāi)路,需要采用上拉電阻。

 

  數據每次進(jìn)/出NAND寄存器都是通過(guò)16位或8位接口。當進(jìn)行編程操作的時(shí)候,待編程的數據進(jìn)入數據寄存器,處于在WE#信號的上升沿。在寄存器內隨機存取或移動(dòng)數據,要采用專(zhuān)用指令以便于隨機存取。

 

  數據寄存器輸出數據的方式與利用RE#信號的方式類(lèi)似,負責輸出現有的數據,并增加到下一個(gè)地址。WE#和RE#時(shí)鐘運行速度極快,達到30ns的水準。當RE#或CE#不為低的時(shí)候,輸出緩沖器將為三態(tài)。這種CE#和RE#的組合使能輸出緩沖器,容許NAND閃存與NOR、SRAM或DRAM等其它類(lèi)型存儲器共享數據總線(xiàn)。該功能有時(shí)被稱(chēng)為“無(wú)需介意芯片啟動(dòng)(chip enable don‘t care)”。這種方案的初衷是適應較老的NAND器件,它們要求CE#在整個(gè)周期為低(譯注:根據上下文改寫(xiě))。

圖4 輸入寄存器接收到頁(yè)編程(80h)指令時(shí),內部就會(huì )全部重置為1s,使得用戶(hù)可以只輸入他想以0位編程的數據字節

圖5 帶有隨機數據輸入的編程指令。圖中加亮的扇區顯示,該指令只需要后面跟隨著(zhù)數據的2個(gè)字節的地址
所有NAND操作開(kāi)始時(shí),都提供一個(gè)指令周期(表1)。


  當輸出一串WE#時(shí)鐘時(shí),通過(guò)在I/O位7:0上設置指令、驅動(dòng)CE#變低且CLE變高,就可以實(shí)現一個(gè)指令周期。注意:在WE#信號的上升沿上,指令、地址或數據被鎖存到NAND器件之中。如表1所示,大多數指令在第二個(gè)指令周期之后要占用若干地址周期。注意:復位或讀狀態(tài)指令例外,如果器件忙,就不應該發(fā)送新的指令。

以2Gb NAND器件的尋址方案為例,第一和第二地址周期指定列地址,該列地址指定頁(yè)內的起始字節(表2)。

  注意:因為最后一列的位置是2112,該最后位置的地址就是08h(在第二字節中)和3Fh(在第一字節中)。PA5:0指定區塊內的頁(yè)地址,BA16:6指定區塊的地址。雖然大多編程和讀操作需要完整的5字節地址,在頁(yè)內隨機存取數據的操作僅僅用到第一和第二字節。塊擦除操作僅僅需要三個(gè)最高字節(第三、第四和第五字節)來(lái)選擇區塊。

圖6 典型的存儲方法

圖7 頁(yè)讀緩存模式
  

  總體而言,NAND的基本操作包括:復位(Reset, FFh)操作、讀ID(Read ID, 00h)操作、讀狀態(tài)(Read Status, 70h)操作、編程(Program)操作、隨機數據輸入(Random data input, 85h)操作和讀(Read)操作等。

  將NAND連接到處理器

  選擇內置NAND接口的處理器或控制器的好處很多。如果沒(méi)有這個(gè)選擇,有可能在NAND和幾乎任何處理器之間設計一個(gè)“無(wú)粘接邏輯(glueless)”接 口。NAND和NOR閃存的主要區別是復用地址和數據總線(xiàn)。該總線(xiàn)被用于指定指令、地址或數據。CLE信號指定指令周期,而ALE信號指定地址周期。利用這兩個(gè)控制信號,有可能選擇指令、地址或數據周期。把ALE連接到處理器的第五地址位,而把CLE連接到處理器的第四地址位,就能簡(jiǎn)單地通過(guò)改變處理器輸出的地址,任意選擇指令、地址或數據。這容許CLE和ALE在合適的時(shí)間自動(dòng)設置為低。

  為了提供指令,處理器在數據總線(xiàn)上輸出想要的指令,并輸出地址0010h;為了輸出任意數量的地址周期,處理器僅僅要依次在處理器地址0020h之后輸出想要的NAND地址。注意,許多處理器能在處理器的寫(xiě)信號周?chē)付ㄈ舾蓵r(shí)序參數,這對于建立合適的時(shí)序是至關(guān)重要的。利用該技術(shù),你不必采用任何粘接邏輯,就可以直接從處理器存取指令、地址和數據。

 

多層單元  

  多層單元(MLC)的每一個(gè)單元存儲兩位,而傳統的SLC僅僅能存儲一位。MLC技術(shù)有顯著(zhù)的密度優(yōu)越性,然而,與SLC相比(表3),其速度或可靠性稍遜。因此,SLC被用于大多數媒體卡和無(wú)線(xiàn)應用,而MLC器件通常被用于消費電子和其它低成本產(chǎn)品。 
  如上所述,NAND需要ECC以確保數據完整性。NAND閃存的每一個(gè)頁(yè)面上都包括額外的存儲空間,它就是64個(gè)字節的空閑區(每512字節的扇區有16字節)。該區能存儲ECC代碼及其它像磨損評級或邏輯到物理塊映射之類(lèi)的信息。ECC能在硬件或軟件中執行,但是,硬件執行有明顯的性能優(yōu)勢。在編程操作期間,ECC單元根據扇區中存儲的數據來(lái)計算誤碼校正代碼。數據區的ECC代碼然后被分別寫(xiě)入到各自的空閑區。當數據被讀出時(shí),ECC代碼也被讀出;運用反操作可以核查讀出的數據是否正確。 
  有可能采用ECC算法來(lái)校正數據錯誤。能校正的錯誤的數量取決于所用算法的校正強度。在硬件或軟件中包含ECC,就提供了強大的系統級解決方案。最簡(jiǎn)單的硬件實(shí)現方案是采用簡(jiǎn)單的漢明(Simple Hamming)碼,但是,只能校正單一位錯誤。瑞德索羅門(mén)(Reed-Solomon)碼提供更為強大的糾錯,并被目前的控制器廣為采用。此外,BCH碼由于比瑞德索羅門(mén)方法的效率高,應用也日益普及。
  要用軟件執行NAND閃存的區塊管理。該軟件負責磨損評級或邏輯到物理映射。該軟件還提供ECC碼,如果處理器不包含ECC硬件的話(huà)。

  編程或擦除操作之后,重要的是讀狀態(tài)寄存器,因為它確認是否成功地完成了編程或擦除操作。如果操作失敗,要把該區塊標記為損壞且不能再使用。以前已編寫(xiě)進(jìn)去的數據要從損壞的區塊中搬出,轉移到新的(好的)存儲塊之中。2Gb NAND的規范規定,它可以最多有40個(gè)壞的區塊,這個(gè)數字在器件的生命周期(額定壽命為10萬(wàn)次編程/擦除周期)內都適用。一些有壞塊的NAND器件能夠出廠(chǎng),主要就歸根于其裸片面積大。管理器件的軟件負責映射壞塊并由好的存儲塊取而代之。  

  利用工廠(chǎng)對這些區塊的標記,軟件通過(guò)掃描塊可以確定區塊的好壞。壞塊標記被固定在空閑區的第一個(gè)位置(列地址2048)。如果在0或1頁(yè)的列地址2048上的數據是“non-FF”,那么,該塊要標記為壞,并映射出系統。初始化軟件僅僅需要掃描所有區塊確定以確定哪個(gè)為壞,然后建一個(gè)壞塊表供將來(lái)參考。

小心不要擦除壞塊標記,這一點(diǎn)很重要。工廠(chǎng)在寬溫和寬電壓范圍內測試了NAND;一些由工廠(chǎng)標記為壞的區塊可能在一定的溫度或電壓條件下仍然能工作,但是,將來(lái)可能會(huì )失效。如果壞塊信息被擦除,就無(wú)法再恢復數據。

作者:Jim Cooke
 
 
 
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
NAND flash和NOR flash的區別詳解
MTD的概念(轉貼)
Nand Flash與Nor Flash
uClinux平臺下的Flash存儲技術(shù)||uclinux|
各類(lèi)存儲器區別
ROM、RAM、DRAM、SRAM和FLASH的區別
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久