1. 程式人生 > >NOR flash和NAND flash的區別

NOR flash和NAND flash的區別

最近學習flash時,說W25Q64是NOR flash。這個NOR flash和NAND flash的概念一直搞不清,下面是查詢的相關資料。

1、結構方面:

         NORflash採用記憶體的隨機讀取技術。各單元之間是並聯的,對儲存單元進行統一編址,所以可以隨機訪問任意一個字。

         既然是統一編址,NORflash就可以晶片內執行,即應用程式可直接在flash內執行,而無需先拷貝到RAM。

         NANDflash資料線和地址線共用I/O線,需額外聯接一些控制的輸入輸出。

2、NOR flash有更快的讀取速度

      NAND flash有更快的寫、擦除速度。

3、可靠性

         A、壽命(耐用性):flash寫入和擦除資料時會導致介質的氧化降解。

                   這方面NOR flash尤甚,所以NORflash不適合頻繁擦寫。

                   NOR的擦寫次數是10萬次,NAND的擦寫次數是100萬次。

            B、壞塊處理:NAND器件的壞塊是隨機分佈的,在使用過程中,難免會產生壞塊。所以在使用時要進行壞塊管理

                以保障資料可靠。

4、成本和容量

         在面積和工藝相同的情況下,NAND的容量比NOR大的多,成本更低。

5、易用性:

        NOR flash有專用的地址引腳來定址,較容易和其他晶片聯接,還支援本地執行。

         NAND flash的IO埠採用複用的資料線和地址線,必須先通過暫存器序列地進行資料存取。各廠商對訊號的定義不同,增加了應用的難度。

6、程式設計角度

         NOR flash採用統一編址(有獨立地址線),可隨機讀取每個“字”,但NOR flash不能像RAM以位元組改寫資料,只能按“頁”寫,故NOR flash不能代替RAM。擦除既可整頁擦除,也可整塊擦除。

        NAND flash共用地址線和資料線,頁是讀寫資料的最小單元,塊是擦除資料的最小單元。

         另外,flash進行寫操作時,只能將相應的位由1變0,而擦除才能把塊內所有位由0變1。所有寫入資料時,如果該頁已經存在資料,必須先擦除再寫。

    (想起來STM32的FLASH模擬EEPROM中,頁擦除後資料全是0XFF,就是擦除後頁內所有位由0變1吧)

         NOR  flash可直接通過程式程式設計,根據地址直接讀取,容量一般是M級別的

         NAND flash是根據資料塊來設計的,所有NAND flash容量更大,一般是G級別的。