Nand Flash與Nor Flash經(jīng)常在一些地方被提到,一直沒(méi)認(rèn)真去理解它們的區(qū)別,因此,今天花了一段時(shí)間仔細(xì)理解了一下,下面把我的筆記放在這里:) 1、NOR的特點(diǎn)是芯片內(nèi)執(zhí)行(XIP,eXecute In Place), 這樣應(yīng)用程序可以直接在flash閃存內(nèi)運(yùn)行,不必再把代碼讀到系統(tǒng)RAM中。優(yōu)點(diǎn)是可以直接從FLASH中運(yùn)行程序,但是工藝復(fù)雜,價(jià)格比較貴,NOR 的傳輸效率很高,在1~4MB的小容量時(shí)具有很高的成本效益,但是很低的寫(xiě)入和擦除速度大大影響了它的性能。 NAND結(jié)構(gòu)能提供極高的單元密度,可以達(dá)到高存儲(chǔ)密度,并且寫(xiě)入和擦除的速度也很快。應(yīng)用NAND的困難在于flash的管理和需要特殊的系統(tǒng)接口。優(yōu)點(diǎn):大存儲(chǔ)容量,而且便宜。缺點(diǎn),就是無(wú)法尋址直接運(yùn)行程序,只能存儲(chǔ)數(shù)據(jù)。另外NAND FLASH 非常容易出現(xiàn)壞區(qū),所以需要有校驗(yàn)的算法。 任何flash器件的寫(xiě)入操作只能在空或已擦除的單元內(nèi)進(jìn)行 (1)NAND器件執(zhí)行擦除操作是十分簡(jiǎn)單的,而NOR則要求在進(jìn)行擦除前先要將目標(biāo)塊內(nèi)所有的位都寫(xiě)為1。 (2) 擦除NOR器件時(shí)是以64~128KB的塊進(jìn)行的,執(zhí)行一個(gè)寫(xiě)入/擦除操作的時(shí)間為5s,NORFLASHSECTOR擦除時(shí)間視品牌、大小不同而不同, 比如,4MFLASH,有的SECTOR擦除時(shí)間為60ms,而有的需要最大6S。與此相反,擦除NAND器件是以8~32KB的塊進(jìn)行的,執(zhí)行相同的操 作最多只需要4ms (3)當(dāng)選擇存儲(chǔ)解決方案時(shí),設(shè)計(jì)師必須權(quán)衡以下的各項(xiàng)因素。 ●NOR的讀速度比NAND稍快一些。 ●NAND的寫(xiě)入速度比NOR快很多。 ●NAND的4ms擦除速度遠(yuǎn)比NOR的5s快。 ●大多數(shù)寫(xiě)入操作需要先進(jìn)行擦除操作。 ●NAND的擦除單元更小,相應(yīng)的擦除電路更少。 (4)接口差別 NORflash帶有SRAM接口,有足夠的地址引腳來(lái)尋址,可以很容易地存取其內(nèi)部的每一個(gè)字節(jié)。 NAND器件使用復(fù)雜的I/O口來(lái)串行地存取數(shù)據(jù),各個(gè)產(chǎn)品或廠商的方法可能各不相同。8個(gè)引腳用來(lái)傳送控制、地址和數(shù)據(jù)信息。NAND讀和寫(xiě)操作采用512字節(jié)的塊,這一點(diǎn)有點(diǎn)像硬盤(pán)管理此類操作,因此,基于NAND的存儲(chǔ)器就可以取代硬盤(pán)或其他塊設(shè)備。 (5)容量差別: NORflash占據(jù)了容量為1~16MB閃存市場(chǎng)的大部分,而NANDflash在嵌入式只是用在8~128MB的產(chǎn)品當(dāng)中,大多數(shù)平板電腦只搭載了NAND閃存介質(zhì),而且存儲(chǔ)容量大多為8GB、16GB和32GB,最大容量也僅有64GB,顯然,存儲(chǔ)容量太小根本不夠那些高要求用戶使用。正因?yàn)槿绱?,與智能手機(jī)、MP4播放器一樣,為了解決存儲(chǔ)問(wèn)題,許多平板電腦都會(huì)預(yù)留了存儲(chǔ)卡槽,用戶可以插入任意容量的SD卡作為存儲(chǔ)空間的補(bǔ)充。這也說(shuō)明NOR主要應(yīng)用在代碼存儲(chǔ)介質(zhì)中,NAND適合于數(shù)據(jù)存儲(chǔ)。 (6)可靠性和耐用性 -壽命(耐用性) 在NAND閃存中每個(gè)塊的最大擦寫(xiě)次數(shù)是一百萬(wàn)次,而NOR的擦寫(xiě)次數(shù)是十萬(wàn)次。NAND存儲(chǔ)器除了具有10比1的塊擦除周期優(yōu)勢(shì),典型的NAND塊尺寸要比NOR器件小8倍,每個(gè)NAND存儲(chǔ)器塊在給定的時(shí)間內(nèi)的刪除次數(shù)要少一些。 -位交換 所有flash器件都受位交換現(xiàn)象的困擾。位真的改變了,就必須采用錯(cuò)誤探測(cè)/錯(cuò)誤更正(EDC/ECC)算法。位反轉(zhuǎn)的問(wèn)題更多見(jiàn)于NAND閃存,在 使用NAND閃存的時(shí)候,應(yīng)使用EDC/ECC算法。用NAND存儲(chǔ)多媒體信息時(shí)倒不是致命的。當(dāng)然,如果用本地存儲(chǔ)設(shè)備來(lái)存儲(chǔ)操作系統(tǒng)、配置文件或其他 敏感信息時(shí),必須使用EDC/ECC系統(tǒng)以確保可靠性。 -壞塊處理 NAND器件中的壞塊是隨機(jī)分布的,NAND器件需要對(duì)介質(zhì)進(jìn)行初始化掃描以發(fā)現(xiàn)壞塊,并將壞塊標(biāo)記為不可用。在已制成的器件中,如果通過(guò)可靠的方法不能進(jìn)行這項(xiàng)處理,將導(dǎo)致高故障率。 (7)易于使用 可以非常直接地使用基于NOR的閃存。在使用NAND器件時(shí),必須先寫(xiě)入驅(qū)動(dòng)程序,才能繼續(xù)執(zhí)行其他操作。向NAND器件寫(xiě)入信息需要相當(dāng)?shù)募记?,因?yàn)樵O(shè)計(jì)師絕不能向壞塊寫(xiě)入,這就意味著在NAND器件上自始至終都必須進(jìn)行虛擬映射。 (8)軟件支持 在NOR器件上運(yùn)行代碼不需要任何的軟件支持,在NAND器件上進(jìn)行同樣操作時(shí),通常需要驅(qū)動(dòng)程序,也就是內(nèi)存技術(shù)驅(qū)動(dòng)程序(MTD),NAND和NOR器件在進(jìn)行寫(xiě)入和擦除操作時(shí)都需要MTD。 使用NOR器件時(shí)所需要的MTD要相對(duì)少一些,許多廠商都提供用于NOR器件的更高級(jí)軟件,這其中包括M-System的TrueFFS驅(qū)動(dòng),該驅(qū)動(dòng)被 WindRiverSystem、Microsoft、QNXSoftwareSystem、Symbian和Intel等廠商所采用。驅(qū)動(dòng)還用于對(duì) DiskOnChip產(chǎn)品進(jìn)行仿真和NAND閃存的管理,包括糾錯(cuò)、壞塊處理和損耗平衡。 (9)在掌上電腦里要使用NAND FLASH 存儲(chǔ)數(shù)據(jù)和程序,但是必須有NOR FLASH來(lái)啟動(dòng)。除了SAMSUNG處理器,其他用在掌上電腦的主流處理器還不支持直接由NAND FLASH 啟動(dòng)程序。因此,必須先用一片小的NOR FLASH 啟動(dòng)機(jī)器,在把OS等軟件從NAND FLASH 載入SDRAM中運(yùn)行才行. |
|