那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

詳細(xì)剖析NorFlash和NandFlash的區(qū)別

MCU開發(fā)加油站 ? 2018-01-31 10:25 ? 次閱讀

Flash編程原理都是只能將1寫為0,而不能將0寫成1。所以在Flash編程之前,必須將對(duì)應(yīng)的塊擦除,而擦除的過程就是將所有位都寫為1的過程,塊內(nèi)的所有字節(jié)變?yōu)?xFF。因此可以說(shuō),編程是將相應(yīng)位寫0的過程,而擦除是將相應(yīng)位寫1的過程,兩者的執(zhí)行過程完全相反。

(1)閃存芯片讀寫的基本單位不同

應(yīng)用程序?qū)orFlash芯片操作以“字”為基本單位。為了方便對(duì)大容量NorFlash閃存的管理,通常將NOR閃存分成大小為128KB或64KB的邏輯塊,有時(shí)塊內(nèi)還分扇區(qū)。讀寫時(shí)需要同時(shí)指定邏輯塊號(hào)和塊內(nèi)偏移。應(yīng)用程序?qū)andFlash芯片操作是以“塊”為基本單位.NAND閃存的塊比較小,一般是8KB,然后每塊又分成頁(yè),頁(yè)大小一般是512字節(jié)。要修改NandFlash芯片中一個(gè)字節(jié),必須重寫整個(gè)數(shù)據(jù)塊。

(2)NorFlash閃存是隨機(jī)存儲(chǔ)介質(zhì),用于數(shù)據(jù)量較小的場(chǎng)合;NandFlash閃存是連續(xù)存儲(chǔ)介質(zhì),適合存放大的數(shù)據(jù)。

(3)由于NorFlash地址線和數(shù)據(jù)線分開,所以NorFlash芯片可以像SDRAM一樣連在數(shù)據(jù)線上。NOR芯片的使用類似于通常內(nèi)存芯片,傳輸效率高,可執(zhí)行程序可以在芯片內(nèi)執(zhí)行(XI P, eXecute In Place),這樣應(yīng)用程序可以直接在flash閃存內(nèi)運(yùn)行,不必再把代碼讀到系統(tǒng)RAM中.由于NorFlash的這個(gè)特點(diǎn),嵌入式系統(tǒng)中經(jīng)常將NOR芯片做啟動(dòng)芯片使用。NandFlash共用地址和數(shù)據(jù)總線,需要額外聯(lián)結(jié)一些控制的輸入輸出,所以直接將NAND芯片做啟動(dòng)芯片比較難。

(4)NandFlash閃存芯片因?yàn)楣灿玫刂泛蛿?shù)據(jù)總線的原因,不允許對(duì)一個(gè)字節(jié)甚至一個(gè)塊進(jìn)行的數(shù)據(jù)清空,只能對(duì)一個(gè)固定大小的區(qū)域進(jìn)行清零操作;NorFlash芯片可以對(duì)字進(jìn)行操作。所以在處理小數(shù)據(jù)量的I/O操作的時(shí)候的速度要快與NorFlash的速度。比如一塊NorFlash芯片通常寫一個(gè)字需要10us,在32位總線上寫512字節(jié)需要1280us;NandFlash閃存寫512字節(jié)需要的時(shí)間包括:512×每字節(jié)50ns+10us的尋頁(yè)時(shí)間+200us的片擦寫時(shí)間=234us。

(5)NandFlash閃存的容量比較大,最大容量己達(dá)到8G字節(jié).為了方便管理,NandFlash的存儲(chǔ)空間使用了塊和頁(yè)兩級(jí)存儲(chǔ)體系,也就是說(shuō)它的存儲(chǔ)空間是二維的,比如K9F5608UOA閃存塊的大小為16K,每頁(yè)大小是512字節(jié),每頁(yè)還16字節(jié)空閑區(qū)用來(lái)存放錯(cuò)誤校驗(yàn)碼空間(也稱為out-of-band,OOB空間)。在進(jìn)行寫操作時(shí),NandFlash閃存每次將一個(gè)字節(jié)的數(shù)據(jù)放入內(nèi)部的緩存區(qū),然后再發(fā)出“寫指令”進(jìn)行寫操作。由于對(duì)NandFlash閃存的操作都是以塊和頁(yè)為單位的,所以在向NandFlash閃存進(jìn)行大量數(shù)據(jù)的讀寫時(shí),NAND的速度要快于NOR閃存。

(6)可靠性

NorFlash閃存的可靠性要高于NandFlash閃存,是因?yàn)镹orFlash型閃存的接口簡(jiǎn)單,數(shù)據(jù)操作少,位交換操作少,因此可靠性高,極少出現(xiàn)壞區(qū)塊,一般用在對(duì)可靠性要求高的地方。NandFlash型閃存接口和操作均相對(duì)復(fù)雜,位交換操作也很多,關(guān)鍵性數(shù)據(jù)更是需安錯(cuò)誤探測(cè)/錯(cuò)誤更正(EDC/ECC)算法來(lái)確保數(shù)據(jù)的完整性,因此出現(xiàn)問題的幾率要大得多,壞區(qū)塊也是不可避免的,而且由于壞區(qū)塊是隨機(jī)分布的,連糾錯(cuò)也無(wú)法做到。

(7)NANDFlash一般地址線和數(shù)據(jù)線共用,對(duì)讀寫速度有一定影響;NORFlash閃存數(shù)據(jù)線和地址線分開,相對(duì)而言讀寫速度快一些。

NANDFlash和NORFlash芯片的共性

首先表現(xiàn)在向芯片中寫數(shù)據(jù)必須先將芯片中對(duì)應(yīng)的內(nèi)容清空,然后再寫入,即先擦后寫。只不過NORFlash芯片只用擦寫一個(gè)字,而NAND需要擦寫整個(gè)塊。其次,閃存擦寫的次數(shù)都是有限的。當(dāng)閃存使用接近使用壽命時(shí),經(jīng)常會(huì)出現(xiàn)寫操作失敗;到達(dá)使用壽命時(shí),閃存內(nèi)部存放的數(shù)據(jù)雖然可以讀,但不能再進(jìn)行寫操作了。所以為了防止上面問題的發(fā)生,不能對(duì)某個(gè)特定的區(qū)域反復(fù)進(jìn)行寫操作。通常NANDFlash可擦寫次數(shù)高于NORFlash芯片,但是由于NANDFlash通常是整塊擦寫,塊內(nèi)的頁(yè)面中如果有一位失效整個(gè)塊就會(huì)失效,而且由于擦寫過程復(fù)雜,失敗的概率相對(duì)較高,所以從整體上來(lái)說(shuō)NOR的壽命較長(zhǎng)。

另一個(gè)共性是閃存的讀寫操作不僅僅是一個(gè)物理操作,實(shí)際上在閃存上存放數(shù)據(jù)必須使用算法實(shí)現(xiàn),這個(gè)模塊一般在驅(qū)動(dòng)程序的MTD'(Memory Technology Drivers)模塊中或者在FTLZ (Flash Translation Layer)層內(nèi)實(shí)現(xiàn),具體算法和芯片的生產(chǎn)廠商以及芯片型號(hào)有關(guān)系。通過比較可以發(fā)現(xiàn),NAND更適用于復(fù)雜的文件應(yīng)用,但是由于NAND芯片的使用相對(duì)復(fù)雜,所以對(duì)文件系統(tǒng)有較高的要求。

(8)接口對(duì)比

NorFlash帶有通用的SRAM接口,可以輕松地掛接在CPU的地址、數(shù)據(jù)總線上,對(duì)CPU的接口要求低。NorFlash的特點(diǎn)是芯片內(nèi)執(zhí)行(XIP,eXecute In Place),這樣應(yīng)用程序可以直接在flash閃存內(nèi)運(yùn)行,不必再把代碼讀到系統(tǒng)RAM中。如uboot中的ro段可以直接在NorFlash上運(yùn)行,只需要把rw和zi段拷貝到RAM中運(yùn)行即可。

NandFlash器件使用復(fù)雜的I/O口來(lái)串行地存取數(shù)據(jù),8個(gè)引腳用來(lái)傳送控制、地址和數(shù)據(jù)信息。由于時(shí)序較為復(fù)雜,所以一般CPU最好集成NandFlash控制器.另外由于NandFlash沒有掛接在地址總線上,所以如果想用NandFlash作為系統(tǒng)的啟動(dòng)盤,就需要CPU具備特殊的功能,如s3c2410在被選擇為NandFlash啟動(dòng)方式時(shí)會(huì)在上電時(shí)自動(dòng)讀取NandFlash的4k數(shù)據(jù)到地址0的SRAM中.如果CPU不具備這種特殊功能,用戶不能直接運(yùn)行NandFlash上的代碼,那可以采取其他方式,比如好多使用NandFlash的開發(fā)板除了使用NandFlash以外,還用上了一塊小的NorFlash來(lái)運(yùn)行啟動(dòng)代碼。

(9)容量和成本對(duì)比

相比起NandFlash來(lái)說(shuō),NorFlash的容量要小,一般在1~16MByte左右,一些新工藝采用了芯片疊加技術(shù)可以把NorFlash的容量做得大一些。在價(jià)格方面,NorFlash相比NandFlash來(lái)說(shuō)較高,如目前市場(chǎng)上一片4Mbyte的AM29lv320 NorFlash零售價(jià)在20元左右,而一片128MByte的k9f1g08 NandFlash零售價(jià)在30元左右。 NandFlash生產(chǎn)過程更為簡(jiǎn)單,NAND結(jié)構(gòu)可以在給定的模具尺寸內(nèi)提供更高的容量,這樣也就相應(yīng)地降低了價(jià)格。

(10)

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

在Flash的位翻轉(zhuǎn)(一個(gè)bit位發(fā)生翻轉(zhuǎn))現(xiàn)象上,NAND的出現(xiàn)幾率要比NorFlash大得多.這個(gè)問題在Flash存儲(chǔ)關(guān)鍵文件時(shí)是致命的,所以在使用NandFlash時(shí)建議同時(shí)使用EDC/ECC等校驗(yàn)算法。

(11)升級(jí)對(duì)比

NorFlash的升級(jí)較為麻煩,因?yàn)椴煌萘康腘orFlash的地址線需求不一樣,所以在更換不同容量的NorFlash芯片時(shí)不方便。通常我們會(huì)通過在電路板的地址線上做一些跳接電阻來(lái)解決這樣的問題,針對(duì)不同容量的NorFlash。 而不同容量的NandFlash的接口是固定的,所以升級(jí)簡(jiǎn)單。

(12)讀寫性能對(duì)比

寫操作:任何flash器件的寫入操作都只能在空或已擦除的單元內(nèi)進(jìn)行。

NAND器件執(zhí)行擦除操作是十分簡(jiǎn)單的,而NOR則要求在進(jìn)行擦除前先要將目標(biāo)塊內(nèi)所有的位都寫為1。

擦除NOR器件時(shí)是以64~128KB的塊進(jìn)行的,執(zhí)行一個(gè)擦除/寫入操作的時(shí)間約為5s。擦除NAND器件是以8~32KB的塊進(jìn)行的,執(zhí)行一個(gè)擦除/寫入操作最多只需要4ms.

讀操作:NOR的讀速度比NAND稍快一些。

(13)文件系統(tǒng)比較

Linux系統(tǒng)中采用MTD來(lái)管理不同類型的Flash芯片,包括NandFlash和NorFlash。支持在Flash上運(yùn)行的常用文件系統(tǒng)有cramfs、jffs、jffs2、yaffs、yaffs2等。cramfs文件系統(tǒng)是只讀文件系統(tǒng)。如果想在Flash上實(shí)現(xiàn)讀寫操作,通常在NorFlash上我們會(huì)選取jffs及jffs2文件系統(tǒng),在NandFlash上選用yaffs或yaffs2文件系統(tǒng)。Yaffs2文件系統(tǒng)支持大頁(yè)(大于512字節(jié)/頁(yè))的NandFlash存儲(chǔ)器。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 閃存
    +關(guān)注

    關(guān)注

    16

    文章

    1801

    瀏覽量

    115115
  • 讀寫
    +關(guān)注

    關(guān)注

    0

    文章

    28

    瀏覽量

    15580
  • nandflash
    +關(guān)注

    關(guān)注

    0

    文章

    48

    瀏覽量

    20273
  • NORFlash
    +關(guān)注

    關(guān)注

    0

    文章

    24

    瀏覽量

    9276

原文標(biāo)題:NorFlash和NandFlash區(qū)別

文章出處:【微信號(hào):mcugeek,微信公眾號(hào):MCU開發(fā)加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    S3c2440處理器中nor flash啟動(dòng)和nand flash啟動(dòng)問題

    要知道這一點(diǎn),首先要明白nandflashnorflash區(qū)別,首先,norflash是隨機(jī)存儲(chǔ)介質(zhì),也就是說(shuō),對(duì)norflash的操作
    的頭像 發(fā)表于 09-24 11:35 ?5191次閱讀
    S3c2440處理器中nor flash啟動(dòng)和nand flash啟動(dòng)問題

    NorFlashNandFlash對(duì)比

    本帖最后由 ORCAD__PCB 于 2012-8-9 14:24 編輯 NorFlashNandFlash對(duì)比
    發(fā)表于 08-09 14:22

    2440nandflash下載和啟動(dòng)的問題

    嗎,我的疑惑是:程序不是已經(jīng)存到nandflash了嗎,上電后硬件自動(dòng)copy 4K到內(nèi)存,應(yīng)該重啟也可執(zhí)行的,nandflash要怎么下載才能重啟繼續(xù)運(yùn)行?2)開關(guān)打到norflash g運(yùn)行原來(lái)
    發(fā)表于 10-24 21:20

    請(qǐng)問stm32內(nèi)部集成的flash是norflash還是nandflash?

    stm32內(nèi)部集成的flash是norflash還是nandflash?
    發(fā)表于 06-06 03:37

    請(qǐng)問tftp 30000000 lcd.bin是下載到nandflash還是norflash

    tftp 30000000 lcd.bin是下載到nandflash還是norflash
    發(fā)表于 08-28 23:51

    請(qǐng)問把uImage燒到norflash的命令是什么?

    我的nandflash已經(jīng)壞了,只有norflash可以進(jìn)入u-boot, 以前老師視頻里面的,方法都是 把uImage燒到 nandfalsh里面的,但是我現(xiàn)在的nandflash已經(jīng)壞了,我想請(qǐng)問,把uImage燒到
    發(fā)表于 09-19 03:11

    請(qǐng)問CC2530的Flash是NorFlash還是NandFlash

    我想問一下CC2530的Flash 是NorFlash還是NandFlash?謝謝!
    發(fā)表于 04-01 09:43

    求大神詳細(xì)剖析GM的VOLT車

    求大神詳細(xì)剖析GM的VOLT車
    發(fā)表于 05-18 06:14

    幾種掉電不丟數(shù)據(jù)的存儲(chǔ)設(shè)備的區(qū)別

    首先談一下幾種掉電不丟數(shù)據(jù)的存儲(chǔ)設(shè)備的區(qū)別:1.Norflash:可擦寫,貴,在Norflash上可以直接運(yùn)行代碼!2.Nandflash:可擦寫,便宜,只能用于存儲(chǔ)數(shù)據(jù);3.磁盤:就
    發(fā)表于 11-03 07:02

    ARM的程序是不是直接可以從nandFlash或者norflash直接運(yùn)行

    ARM的程序是不是直接可以從nandFlash或者norflash直接運(yùn)行?理論上不用RAM也可以,是吧?不過nandFlash要初始化才能使用,對(duì)吧?那么,有沒有不用初始化就能使用的空間呢,就像單片機(jī)。
    發(fā)表于 11-23 14:32

    如何對(duì)STM32MP1 QUADSPI上的NorFlashNandFlash進(jìn)行配置呢

    我正在設(shè)計(jì)一個(gè)基于 STM32MP1 的電路板,這是我第一次使用 QUADSPI。我需要在 NorFlash (MLO + U-boot) 上啟動(dòng),我的 Linux 文件系統(tǒng)將在 NandFlash
    發(fā)表于 12-19 08:51

    NorFlashNandFlash對(duì)比分析哪個(gè)好?

    1、接口對(duì)比 NorFlash帶有通用的SRAM接口,可以輕松地掛接在CPU的地址、數(shù)據(jù)總線上,對(duì)CPU的接口要求低。 NandFlash器件使用復(fù)雜的I/O口來(lái)串行地存取數(shù)據(jù),8個(gè)引腳用來(lái)傳送控制
    發(fā)表于 06-26 08:13

    NorFlashNandFlash、eMMC閃存三者對(duì)比

    NAND Flash式東芝在1989年的國(guó)際固態(tài)電路研討會(huì)(ISSCC)上發(fā)表的, 要在NandFlash上面讀寫數(shù)據(jù),要外部加主控和電路設(shè)計(jì)。
    發(fā)表于 09-19 09:11 ?2.4w次閱讀

    Linux經(jīng)常出現(xiàn)的3道基礎(chǔ)面試題快來(lái)復(fù)習(xí)吧

    一請(qǐng)問uboot啟動(dòng)過程都做了些什么?二為什么uboot要關(guān)掉cache? 三nandflashnorflash區(qū)別,對(duì)norflash的操作方式的理解?
    的頭像 發(fā)表于 12-31 10:40 ?3573次閱讀

    sd nand與nand flash的區(qū)別

    大家知道目前主流的存儲(chǔ)芯片大致可以分為NORFlashNANDFlash。容量需要大一點(diǎn)的話,就會(huì)用采用NANDFlash。但用NANDFlash會(huì)有哪些問題呢?第一,
    的頭像 發(fā)表于 07-07 15:37 ?935次閱讀
    sd nand與nand flash的<b class='flag-5'>區(qū)別</b>?
    天天百家乐官网游戏| 威尼斯人娱乐城老品牌lm0 | 帝王百家乐官网的玩法技巧和规则| bet365官网bet365gwylc| 赌百家乐的体会| 赤峰市| 百家乐电影网| 希尔顿百家乐官网娱乐城 | 大发888 软件| 百家乐游戏机分析仪| 澳门百家乐官网娱乐城送彩金| 大发888娱乐场解码器| 百家乐官网定位胆技巧| 百家乐官网历史路单| 冠赌球网| 百家乐现金网开户平台| 百家乐官网沙| 澳门百家乐官方网站| 哪里有百家乐代理| 老k百家乐官网游戏| 菲律宾凤凰娱乐| 澳门百家乐论| 皇冠网百家乐平台| 百家乐官网赌钱| 皇冠网代理| 威尼斯人娱乐城真钱百家乐| 百家乐视频打牌| 百家乐官网10个人| 一搏娱乐| 百家乐存200送200| 百家乐技巧大全| 百家乐官网官网站| 百家乐官网美女荷官| 德州扑克底牌| 百家乐微乐| 百家乐棋牌公式| 赌博百家乐官网秘籍| bet365地址| 發中發百家乐的玩法技巧和规则| 百家乐有破解的吗| 百家乐官网辅助器|