EEPROM和FLASH,NAND FLASH和NOR FLASH有什麼區別?

存儲器分爲兩大類:RAM和ROM,RAM就不講了,主要討論ROM。

ROM最初是不能編程的,出廠什麼內容就永遠什麼內容,不靈活。

後來出現了PROM,可以自己寫入一次,要是寫錯了,只能換一片,自認倒黴。人類文明不斷進步,終於出現了可多次擦除寫入的EPROM,每次擦除要把芯片拿到紫外線上照一下,想一下你往單片機上下了一個程序之後發現有個地方需要加一句話,爲此你要把單片機放紫外燈下照半小時,然後才能再下一次,這麼折騰一天也改不了幾次。

歷史的車輪不斷前進,偉大的EEPROM出現了,拯救了一大批程序員,終於可以隨意的修改ROM中的內容了。

EEPROM的全稱是“電可擦除可編程只讀存儲器”,即Electrically Erasable Programmable Read-Only Memory。是相對於紫外擦除的ROM來講的。但是今天已經存在多種EEPROM的變種,變成了一類存儲器的統稱。

狹義的EEPROM:

這種ROM的特點是可以隨機訪問和修改任何一個字節,可以往每個bit中寫入0或者1。這是最傳統的一種EEPROM,掉電後數據不丟失,可以保存100年,可以擦寫100w次。具有較高的可靠性,但是電路複雜/成本也高。因此目前的EEPROM都是幾十千字節到幾百千字節的,絕少有超過512K的。

例如我們常見的24C02:

廣義的EEPROM:

FLASH屬於廣義的EEPROM,因爲它也是電擦除的ROM。但是爲了區別於一般的按字節爲單位的擦寫的EEPROM,我們都叫它flash。

flash做的改進就是擦除時不再以字節爲單位,而是以塊爲單位,一次簡化了電路,數據密度更高,降低了成本。上M的rom一般都是flash。如W25Q128JVSIQ:

flash分爲nor flash和nand flash。

nor flash:

nor flash數據線和地址線分開,可以實現ram一樣的隨機尋址功能,可以讀取任何一個字節。但是擦除仍要按塊來擦。依然W25Q128JVSIQ

nand flash:

nand flash同樣是按塊擦除,但是數據線和地址線複用,不能利用地址線隨機尋址。讀取只能按頁來讀取。(nandflash按塊來擦除,按頁來讀,nor flash沒有頁),例如:W29N01HVSINA

由於nand flash引腳上覆用,因此讀取速度比nor flash慢一點,但是擦除和寫入速度比nor flash快很多。nand flash內部電路更簡單,因此數據密度大,體積小,成本也低。因此大容量的flash都是nand型的。小容量的2~12M的flash多是nor型的。

使用壽命上,nand flash的擦除次數是nor的數倍。而且nand flash可以標記壞塊,從而使軟件跳過壞塊。nor flash 一旦損壞便無法再用。

因爲nor flash可以進行字節尋址,所以程序可以在nor flash中運行。嵌入式系統多用一個小容量的nor flash存儲引導代碼,用一個大容量的nand flash存放文件系統和內核。


1.看明白了CAN的錯幀漏檢,車廠就不能敷衍你了!

2.Gartner發佈2021年重要戰略科技趨勢!

3.設計電路時,那些蠢哭我們青春的事...

4.Linux x86 和ARM什麼區別?

5.探討STM32啓動文件中的幾個問題~

6.在生產中使用Rust的著名公司及他們選擇的理由!

免責聲明:本文系網絡轉載,版權歸原作者所有。如涉及作品版權問題,請與我們聯繫,我們將根據您提供的版權證明材料確認版權並支付稿酬或者刪除內容。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章