新聞中心

        NAND和NOR flash詳解

        作者: 時(shí)間:2008-02-27 來源:摘自 C51BBS論壇 收藏

         

                 NOR和NAND是現(xiàn)在市場上兩種主要的非易失閃存技術(shù)。Intel于1988年首先開發(fā)出NOR flash技術(shù),徹底改變了原先由EPROM和EEPROM一統(tǒng)天下的局面。緊接著,1989年,東芝公司發(fā)表了NAND flash結(jié)構(gòu),強(qiáng)調(diào)降低每比特的成本,更高的性能,并且象磁盤一樣可以通過接口輕松升級。但是經(jīng)過了十多年之后,仍然有相當(dāng)多的硬件工程師分不清NOR和NAND閃存。

          相“flash存儲器”經(jīng)常可以與相“NOR存儲器”互換使用。許多業(yè)內(nèi)人士也搞不清
        楚NAND閃存技術(shù)相對于NOR技術(shù)的優(yōu)越之處,因?yàn)榇蠖鄶?shù)情況下閃存只是用來存儲少量的代碼,這時(shí)NOR閃存更適合一些。而NAND則是高數(shù)據(jù)存儲密度的理想解決方案。
         
          NOR的特點(diǎn)是芯片內(nèi)執(zhí)行(XIP, eXecute In Place),這樣應(yīng)用程序可以直接在flash
        閃存內(nèi)運(yùn)行,不必再把代碼讀到系統(tǒng)RAM中。NOR的傳輸效率很高,在1~4MB的小容量時(shí)具有很高的成本效益,但是很低的寫入和擦除速度大大影響了它的性能。

          NAND結(jié)構(gòu)能提供極高的單元密度,可以達(dá)到高存儲密度,并且寫入和擦除的速度也
        很快。應(yīng)用NAND的困難在于flash的管理和需要特殊的系統(tǒng)接口。

        性能比較

          flash閃存是非易失存儲器,可以對稱為塊的存儲器單元塊進(jìn)行擦寫和再編程。任何
        flash器件的寫入操作只能在空或已擦除的單元內(nèi)進(jìn)行,所以大多數(shù)情況下,在進(jìn)行寫入操作之前必須先執(zhí)行擦除。NAND器件執(zhí)行擦除操作是十分簡單的,而NOR則要求在進(jìn)行擦除前先要將目標(biāo)塊內(nèi)所有的位都寫為0。

          由于擦除NOR器件時(shí)是以64~128KB的塊進(jìn)行的,執(zhí)行一個(gè)寫入/擦除操作的時(shí)間為5s
        ,與此相反,擦除NAND器件是以8~32KB的塊進(jìn)行的,執(zhí)行相同的操作最多只需要4ms。
          
                 執(zhí)行擦除時(shí)塊尺寸的不同進(jìn)一步拉大了NOR和NADN之間的性能差距,統(tǒng)計(jì)表明,對于給定的一套寫入操作(尤其是更新小文件時(shí)),更多的擦除操作必須在基于NOR的單元中進(jìn)行。這樣,當(dāng)選擇存儲解決方案時(shí),設(shè)計(jì)師必須權(quán)衡以下的各項(xiàng)因素。

          ● NOR的讀速度比NAND稍快一些。
          ● NAND的寫入速度比NOR快很多。
          ● NAND的4ms擦除速度遠(yuǎn)比NOR的5s快。
          ● 大多數(shù)寫入操作需要先進(jìn)行擦除操作。
          ● NAND的擦除單元更小,相應(yīng)的擦除電路更少。

        接口差別

          NOR flash帶有SRAM接口,有足夠的地址引腳來尋址,可以很容易地存取其內(nèi)部的每
        一個(gè)字節(jié)。

          NAND器件使用復(fù)雜的I/O口來串行地存取數(shù)據(jù),各個(gè)產(chǎn)品或廠商的方法可能各不相同
        。8個(gè)引腳用來傳送控制、地址和數(shù)據(jù)信息。

          NAND讀和寫操作采用512字節(jié)的塊,這一點(diǎn)有點(diǎn)像硬盤管理此類操作,很自然地,基
        于NAND的存儲器就可以取代硬盤或其他塊設(shè)備。

        容量和成本

          NAND flash的單元尺寸幾乎是NOR器件的一半,由于生產(chǎn)過程更為簡單,NAND結(jié)構(gòu)可
        以在給定的模具尺寸內(nèi)提供更高的容量,也就相應(yīng)地降低了價(jià)格。

          NOR flash占據(jù)了容量為1~16MB閃存市場的大部分,而NAND flash只是用在8~128M
        B的產(chǎn)品當(dāng)中,這也說明NOR主要應(yīng)用在代碼存儲介質(zhì)中,NAND適合于數(shù)據(jù)存儲,NAND在CompactFlash、Secure Digital、PC Cards和MMC存儲卡市場上所占份額最大。

        可靠性和耐用性

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

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

          位交換
          所有flash器件都受位交換現(xiàn)象的困擾。在某些情況下(很少見,NAND發(fā)生的次數(shù)要
        比NOR多),一個(gè)比特位會發(fā)生反轉(zhuǎn)或被報(bào)告反轉(zhuǎn)了。

          一位的變化可能不很明顯,但是如果發(fā)生在一個(gè)關(guān)鍵文件上,這個(gè)小小的故障可能
        導(dǎo)致系統(tǒng)停機(jī)。如果只是報(bào)告有問題,多讀幾次就可能解決了。

          當(dāng)然,如果這個(gè)位真的改變了,就必須采用錯(cuò)誤探測/錯(cuò)誤更正(EDC/ECC)算法。位
        反轉(zhuǎn)的問題更多見于NAND閃存,NAND的供應(yīng)商建議使用NAND閃存的時(shí)候,同時(shí)使用EDC/ECC算法。

          這個(gè)問題對于用NAND存儲多媒體信息時(shí)倒不是致命的。當(dāng)然,如果用本地存儲設(shè)備
        來存儲操作系統(tǒng)、配置文件或其他敏感信息時(shí),必須使用EDC/ECC系統(tǒng)以確保可靠性。

          壞塊處理
          NAND器件中的壞塊是隨機(jī)分布的。以前也曾有過消除壞塊的努力,但發(fā)現(xiàn)成品率太
        低,代價(jià)太高,根本不劃算。

          NAND器件需要對介質(zhì)進(jìn)行初始化掃描以發(fā)現(xiàn)壞塊,并將壞塊標(biāo)記為不可用。在已制
        成的器件中,如果通過可靠的方法不能進(jìn)行這項(xiàng)處理,將導(dǎo)致高故障率。

        易于使用
          可以非常直接地使用基于NOR的閃存,可以像其他存儲器那樣連接,并可以在上面直
        接運(yùn)行代碼。

          由于需要I/O接口,NAND要復(fù)雜得多。各種NAND器件的存取方法因廠家而異。

          在使用NAND器件時(shí),必須先寫入驅(qū)動程序,才能繼續(xù)執(zhí)行其他操作。向NAND器件寫
        入信息需要相當(dāng)?shù)募记桑驗(yàn)樵O(shè)計(jì)師絕不能向壞塊寫入,這就意味著在NAND器件上自始至終都必須進(jìn)行虛擬映射。

        軟件支持
          當(dāng)討論軟件支持的時(shí)候,應(yīng)該區(qū)別基本的讀/寫/擦操作和高一級的用于磁盤仿真和
        閃存管理算法的軟件,包括性能優(yōu)化。

          在NOR器件上運(yùn)行代碼不需要任何的軟件支持,在NAND器件上進(jìn)行同樣操作時(shí),通常需要驅(qū)動程序,也就是內(nèi)存技術(shù)驅(qū)動程序(MTD),NAND和NOR器件在進(jìn)行寫入和擦除操作時(shí)都需要MTD。

          使用NOR器件時(shí)所需要的MTD要相對少一些,許多廠商都提供用于NOR器件的更高級軟件,這其中包括M-System的TrueFFS驅(qū)動,該驅(qū)動被Wind River System、Microsoft、QNX Software System、Symbian和Intel等廠商所采用。

          驅(qū)動還用于對DiskOnChip產(chǎn)品進(jìn)行仿真和NAND閃存的管理,包括糾錯(cuò)、壞塊處理和
        損耗平衡。


        關(guān)鍵詞: NAND NOR flash

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 成武县| 阜阳市| 南郑县| 汽车| 成武县| 洛南县| 固阳县| 汝阳县| 开江县| 翼城县| 饶平县| 鄯善县| 海盐县| 汝阳县| 永德县| 通海县| 兴隆县| 曲麻莱县| 关岭| 吴堡县| 奉节县| 泰顺县| 林西县| 泸州市| 沈丘县| 多伦县| 潼关县| 莒南县| 建湖县| 德令哈市| 雷波县| 贵溪市| 砚山县| 沁源县| 河南省| 宁阳县| 玉林市| 云安县| 泸西县| 崇左市| 贵定县|