一文讀懂RAM、ROM、SRAM、DRAM、SDRAM等內存概念

2021-02-13 芯路芯語

ROM和RAM指的都是半導體存儲器
ROM在系統停止供電的時候仍然可以保持數據
RAM通常都是在掉電之後就丟失數據,典型的就是計算機的內存。

一、ROM也有很多種:PROM(可編程的ROM)、EPROM(可擦除可編程ROM)、EEPROM

1、PROM是一次性的,早期的產品,現在已經不可能使用了;

2、EPROM是通過紫外光的照射擦出原先的程序,是一種通用的存儲器;

3、EEPROM是通過電子擦出,價格很高,寫入時間很長,寫入很慢; 

 舉個例子,手機軟體一般放在EEPROM中,我們打電話,有些最後撥打的號碼,暫時是存在SRAM中的,不是馬上寫入通訊記錄(通話記錄保存在EEPROM中),因為當時有很重要工作(通話)要做,如果寫入,漫長的等待是讓用戶忍無可忍的。

二、RAM有兩大類:靜態RAM(StaticRAM/SRAM)和動態RAM(Dynamic RAM/DRAM)

1、SRAM

不需要刷新電路,掉電丟失數據,而且一般不是行列地址復用的。

集成度比較低,不適合做容量大的內存,一般是用在處理器的緩存裡面。像S3C2440的ARM9處理器裡面就有4K的SRAM用來做CPU啟動時用的;

SRAM內部採用的是雙穩態電路的形式來存儲數據;

製造相同容量的SRAM比DRAM的成本高的多;

因此目前SRAM基本上只用於CPU內部的一級緩存以及內置的二級緩存。僅有少量的網絡伺服器以及路由器上能夠使用SRAM。

2、DRAM

掉電丟失數據。每隔一段時間就要刷新一次數據,才能保存數據。而且是行列地址復用的,許多都有頁模式。DRAM利用MOS管的柵電容上的電荷來存儲信息,一旦掉電信息會全部的丟失,由於柵極會漏電,所以每隔一定的時間就需要一個刷新機構給這些柵電容補充電荷,並且每讀出一次數據之後也需要補充電荷,這個就叫動態刷新,所以稱其為動態隨機存儲器。由於它只使用一個MOS管來存信息,所以集成度可以很高,容量能夠做的很大。SDRAM比它多了一個與CPU時鐘同步。

DRAM保留數據的時間很短,速度也比SRAM慢,不過它還是比任何的ROM都要快;

從價格上來說DRAM相比SRAM要便宜很多,計算機內存就是DRAM的;

DRAM分為很多種,常見的主要有FPRAM/FastPage、EDORAM、SDRAM、DDR RAM、RDRAM、SGRAM以及WRAM等,這裡介紹其中的一種DDR RAM。

一個DRAM的存儲單元存儲的是0還是1取決於電容是否有電荷,有電荷代表1,無電荷代表0。但時間一長,代表1的電容會放電,代表0的電容會吸收電荷,這就是數據丟失的原因;刷新操作定期對電容進行檢查,若電量大於滿電量的1/2,則認為其代表1,並把電容充滿電;若電量小於1/2,則認為其代表0,並把電容放電,藉此來保持數據的連續性。

2.1、DDR RAM(Data-Rate RAM)也稱作DDR SDRAM

2.2、SDRAM(Synchronous DRAM,同步動態隨機存儲器)

三、Flash(快閃記憶體)

它結合了ROM和RAM的長處,不僅具備電子可擦除可編程(EEPROM)的性能,還不會斷電丟失數據同時可以快速讀取數據(NVRAM的優勢),U盤和MP3裡用的就是這種存儲器。

在過去的20年裡,嵌入式系統一直使用ROM(EPROM)作為它們的存儲設備,然而近年來Flash全面代替了ROM(EPROM)在嵌入式系統中的地位,它用作存儲Bootloader以及作業系統或者程序代碼,或者直接當硬碟使用(U盤)。

採用的並行接口,有獨立的地址線和數據線,性能特點更像內存,是晶片內執行(XIP, eXecute In Place),這樣應用程式可以直接在flash快閃記憶體內運行,不必再把代碼讀到系統RAM中。

NAND採用的是串行的接口,地址線和數據線是共用的I/O線,類似電腦硬碟。CPU從裡面讀取數據的速度很慢,所以一般用NAND做快閃記憶體的話就必須把NAND裡面的數據先讀到內存裡面,然後CPU才能夠執行。無法尋址和直接運行程序,只能存儲數據。另外NAND FLASH非常容易出現壞區,所以需要有校驗的算法。

NOR Flash:用戶可以直接運行裝載在NOR FLASH裡面的代碼

目前Flash主要有NOR Flash和NADN Flash

1、類型

分為NOR(或非)、 NAND(與非)

2、接口理解

NOR(或非)----地址、數據總線分開;

NAND(與非)----地址、數據總線共用。

3、讀寫單位:

NOR(或非)----字節;

NAND(與非)----頁

4、組成結構:

NOR(或非)----扇區、字節;

NAND(與非)----塊、頁;

5、擦除單位:

NOR(或非)----扇區;

NAND(與非)----塊;

6、讀寫擦除速度

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

NAND的寫入/擦除速度比NOR快很多。

flash快閃記憶體是非易失存儲器,可以對稱為塊的存儲器單元塊進行擦寫和再編程。任何flash器件的寫入操作只能在空或已擦除的單元內進行,所以大多數情況下,在進行寫入操作之前必須先執行擦除。NAND器件執行擦除操作是十分簡單的,而NOR則要求在進行擦除前先要將目標塊內所有的位都寫為0。由於擦除NOR器件時是以64~128KB的塊進行的,執行一個寫入/擦除操作的時間為5s,與此相反,擦除NAND器件是以8~32KB的塊進行的,執行相同的操作最多只需要4ms。

NAND的擦除單元更小,相應的擦除電路更少。

(註:NOR FLASH SECTOR擦除時間視品牌、大小不同而不同,比如,4M FLASH,有的SECTOR擦除時間為60ms,而有的需要最大6s。)

7、容量

NOR flash佔據了容量為1~16MB快閃記憶體市場的大部分

NAND flash只是用在8~128MB的產品當中,這也說明NOR主要應用在代碼存儲介質中,NAND適合於數據存儲

8、可靠性和耐用性:

可以從壽命(耐用性)、位交換和壞塊處理三個方面來比較NOR和NAND的可靠性。

A)壽命(耐用性) 

在NAND快閃記憶體中每個塊的最大擦寫次數是一百萬次,而NOR的擦寫次數是十萬次。

NAND存儲器除了具有10比1的塊擦除周期優勢,典型的NAND塊尺寸要比NOR器件小8倍,每個NAND存儲器塊在給定的時間內的刪除次數要少一些。

B)位交換

所有flash器件都受位交換現象的困擾。在某些情況下(很少見,NAND發生的次數要比NOR多),一個比特(bit)位會發生反轉或被報告反轉了。

一位的變化可能不很明顯,但是如果發生在一個關鍵文件上,這個小小的故障可能導致系統停機。如果只是報告有問題,多讀幾次就可能解決了。

當然,如果這個位真的改變了,就必須採用錯誤探測/錯誤更正(EDC/ECC)算法。位反轉的問題更多見於NAND快閃記憶體,NAND的供應商建議使用NAND快閃記憶體的時候,同時使用EDC/ECC算法。

這個問題對於用NAND存儲多媒體信息時倒不是致命的。當然,如果用本地存儲設備來存儲作業系統、配置文件或其他敏感信息時,必須使用EDC/ECC系統以確保可靠性。

C)壞塊處理

NAND器件需要對介質進行初始化掃描以發現壞塊,並將壞塊標記為不可用。在已製成的器件中,如果通過可靠的方法不能進行這項處理,將導致高故障率。

9、易於使用:

基於NOR的快閃記憶體,可以像其他存儲器那樣連接,並可以在上面直接運行代碼。

由於NANDLFASH需要I/O接口,所以要複雜得多。各種NAND器件的存取方法因廠家而異。

在使用NAND器件時,必須先寫入驅動程序,才能繼續執行其他操作。向NAND器件寫入信息需要相當的技巧,因為設計師絕不能向壞塊寫入,這就意味著在NAND器件上自始至終都必須進行虛擬映射。

10、軟體支持: 

在NOR器件上運行代碼不需要任何的軟體支持;

在NAND器件上進行執行操作時,通常需要 驅動程序,也就是內存技術驅動程序(MTD);

NAND和NOR器件在進行寫入和擦除操作時都需要MTD。

11、尋址:

NAND每次讀取數據時都是指定塊地址、頁地址、列地址,列地址就是讀的頁內起始地址,每次都是先將數據讀入頁緩衝區內,再 由I/O輸入地址 在緩衝區內尋址,其實這裡列地址,只是指定起始地址的作用。NAND是以頁為基本單位 操作的。寫入數據也是首先在頁面緩衝區內緩衝,數據首先寫入這裡,再寫命令後,再統一寫入頁內。因此NAND頁緩衝區的作用就是,保證晶片的按頁的讀、寫操作,是I/O操作與晶片操作的接口、橋梁,因為數據是從I/O輸入的,又是每次一個字節,因此需要緩衝。即使每次改寫一個字節,都要重寫整個頁,因為它只支持頁寫,而且如果頁內有未擦除的部分,則無法編程,在寫入前必須保證頁是空的。

NOR的 讀、寫是字節為基本單位操作的,但擦除是以扇區操作的。

綜上所述在晶片操作上,NAND要比NOR快很多,因為NAND是頁操作的而NOR是字節操作的。

12、應用:
NAND 正是基於這種構造:塊、頁,無法字節尋址,頁讀寫本身就靠的是內部複雜的串、並行轉換 ,因此也沒有很多地址引腳,所以其地址、數據線共用,所以容量可以做的很大 。
NOR 是和SRAM一樣的可隨機存儲的,也不需要驅動,因此,其地址就有限,所以容量普遍較小,其實是受限於地址線。

基於以上幾點,在工業領域,NOR 用的較多,特別是程序存儲,少量數據存儲等。
在消費領域,大量數據存儲,NAND較多。

Flash ROM是利用浮置柵上的電容存儲電荷來保存信息,因為浮置柵不會漏電,所以斷電後信息仍然可以保存。也由於其機構簡單所以集成度可以做的很高,容量可以很大。Flash rom寫入前需要用電進行擦除,而且擦除不同與EEPROM可以以byte(字節)為單位進行,flash rom只能以sector(扇區)為單位進行。不過其寫入時可以byte為單位。flash rom主要用於bios,U盤,Mp3等需要大容量且斷電不丟數據的設備

存儲器局限性

快閃記憶體最關鍵的限制可能是寫/擦除周期數有限。

為應對這種限制,可採用固件或文件系統驅動器,對存儲器寫的次數進行逐次計數。這些軟體將動態地重新映射這些塊,在扇區間分享寫操作。換句話說,萬一寫操作失敗,軟體通過寫驗證和重新映射向未使用的扇區授權寫操作。

像RAM一樣,快閃記憶體可以一個字節或一個字一次進行讀或編程,但擦除必須是一次進行一個完整的塊,將塊中的所有位重新置位為1。這意味著需要花更多時間進行編程。例如,如果將一位(0)寫入一個塊,要對該塊重新編程,就必須完全擦除此塊,而不是僅僅重寫該位。

本文轉自:https://blog.csdn.net/EastTao/article/details/99631355?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.edu_weight&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.edu_weight

作者:九牧君

相關焦點

  • ram和rom的區別:RAM和ROM有什麼區別
    今天來聊聊一篇關於ram和rom的區別:RAM和ROM有什麼區別的文章,現在就為大家來簡單介紹下ram和rom的區別:RAM和ROM有什麼區別,希望對各位小夥伴們有所幫助。
  • rom和ram的作用和區別! 不要看錯手機和電腦內存
    rom和ram的作用和區別!ram的作用和區別!不要看錯手機和電腦內存在新手打怪升級的過程中,自然會遇到不少一上場就GG的情況。誰沒年輕過,對吧?回憶起當年那些小白專用的「妄言」,如「我電腦內存240積弊!」,「我手機內存32梯弊!」「ROM就是RAM,RAM就是ROM」,總不自覺地笑了起來。江山代有才人出,作為過來人,小編今天就給大家細數存儲領域中菜鳥常犯的錯誤,讓大家不要看錯,少走一些彎路。
  • ram和rom的區別 ram和rom有什麼區別
    ram和rom的區別  RAM是隨機存取存儲器的縮寫,也叫主存,是與CPU直接交換數據的內部存儲器  1、概念不同:RAM即隨機存儲內存,這種存儲器在斷電時將丟失其存儲內容,故主要用於存儲短時間使用的程序。
  • 什麼是ROM、RAM、DRAM、SRAM和FLASH的區別
    這是目前電腦中用 得最多的內存,而且它有著成本優勢,事實上擊敗了Intel的另外一種內存標準-Rambus DRAM。在很多高端的顯卡上,也配備了高速DDR RAM來提高帶寬,這可以大幅度提高3D加速卡的像素渲染能力。
  • 手機rom和ram的區別是什麼?
    關注 點擊上方↑藍色 手機世界 加關注3533手機世界 手機改變世界  手機rom和ram的區別是什麼?很多朋友都在問rom和ram有什麼區別,哪個比較好一點!想知道的朋友現在就隨小編一起來看看rom和ram的區別吧!希望可以幫到大家。
  • 一文讀懂SDRAM內存模組與基本概念
    DDR-DDR4內存模塊的差異以及對比;2. 邏輯BANK的概念與定義;3. 晶片的位寬的解釋。要解釋這個問題,首先要接觸到兩個概念:物理Bank與晶片位寬。1、邏輯Bank簡單地說,SDRAM的內部是一個存儲陣列。由於採用管道式存儲(如同排隊買票),就很難做到隨機訪問了。陣列就如同表格一樣,將數據&34;進去,你可以它想像成一張表格。
  • 精選知識:什麼是ROM、RAM、DRAM、SRAM和FLASH的區別
    這是目前電腦中用得最多的內存,而且它有著成本優勢,事實上擊敗了Intel的另外一種內存標準-Rambus DRAM。在很多高端的顯卡上,也配備了高速DDR RAM來提高帶寬,這可以大幅度提高3D加速卡的像素渲染能力。
  • ROM、RAM、DRAM、SRAM和FLASH究竟有何區別?
    RAM(Dynamic RAM/DRAM),DRAM保留數據的時間很短,速度也比SRAM慢,不過它還是比任何的ROM都要快,但從價格上來說DRAM相比SRAM要便宜很多,計算機內存就是DRAM的。這是目前電腦中用得最多的內存,而且它有著成本優勢,事實上擊敗了Intel的另外一種內存標準-Rambus DRAM。在很多高端的顯卡上,也配備了高速DDR RAM來提高帶寬,這可以大幅度提高3D加速卡的像素渲染能力。
  • memroy存儲廠家以及ROM、SDRAM、RAM、DRAM、SRAM、FLASH,EMMC的區別
    ROM在系統停止供電的時候仍然可以保持數據,而RAM通常都是在掉電 之後就丟失數據,典型的RAM就是計算機的內存。 RAM有兩大類,一種稱為靜態RAM(Static RAM/SRAM),SRAM速度非常快,是目前讀寫最快的存儲設備了,但是它也非常昂貴,所以只在要求很苛刻的地方使用,譬如CPU的一 級緩衝,二級緩衝。
  • 系統內存怎麼選?詳解SRAM與DRAM的前生今世
    由於它比DRAM更快且成本更高,因此通常作為CPU內存緩存或用於高端、高性能伺服器運行。SRAM系統內存通常為20-40ns(納秒)。 什麼是DRAM?每個DRAM單元使用一個電晶體另加一個電容器來存儲一個bit,因此DRAM具有非常高的密度。像SRAM一樣,DRAM也是易失性的。但與SRAM不同,DRAM每個單元必須周期性地進行刷新(預充電),因為電容器不可避免地存在漏電現象。
  • SRAM簡介及與DRAM/SDRAM的比較
    (一) DRAMDRAM就是我們常說的內存,這顯然就是狹義的內存概念了。後面我們說的內存也是這個狹義的概念--DRAM。常見的DRAM有許多規格,如FPM DRAM 、EDO DRAM、BEDO DRAM、SDRAM、DDR SDRAM、SLDRAM、RDRAM、DIRECT RDRAM等。1.
  • ram的特點是什麼
    ram是與CPU直接交換數據的內部存儲器。RAM存儲器工作時可以隨時從任何一個指定的地址寫入或讀出信息。它可以隨時讀寫(刷新時除外),而且它的速度很快,通常作為操作性系統或其他正在運行中的程序的臨時數據存儲介質。
  • ram和rom的區別之處
    存儲器可分為隨機存取存儲器(ram)和只讀存儲器(rom)兩大類。要說它倆有什麼區別,下面就由英尚微電子為大家解惑。 ROM和RAM都是一種存儲技術,只是兩者原理不同,RAM為隨機存儲,掉電不會保存數據,而ROM可以在掉電的情況下,依然保存原有的數據。抄ROM是Read Only Memory的意思,也就是說這種存儲器只能讀,不能寫。
  • DRAM SRAM SDRAM內存精華問題匯總
    答:這是由RAM的設計類型決定的,DRAM用了一個T和一個RC電路,導致電容會漏電和緩慢放電,所以需要經常刷新來保存數據  問題3:我們通常所說的內存用的是什麼呢?這三個產品跟我們實際使用有什麼關係?  答:內存(即隨機存貯器RAM)可分為靜態隨機存儲器SRAM,和動態隨機存儲器DRAM兩種。我們經常說的「  內存」是指DRAM。
  • 讓STM32的外部SRAM操作跟內部SRAM一樣
    前幾天看到開源電子論壇(openedv.com)有人在問這個問題,我特意去做了這個實驗,這樣用外部SRAM就跟用內部SRAM一樣,不用自己去申請內存,也不用考慮什麼內存地址,一切讓編譯器自己去解決。
  • ram容量是什麼意思掃盲介紹教程
    ram容量是什麼意思掃盲介紹教程 來源:www.18183.com作者:jinwei1990時間:2014-09-26 購買手機的時候,在手機配置上都會出現內存容量(512MB ROM+512MB RAM)等等這樣的說明,大家都知道RAM的意思就是運存的意思,但是對於rom
  • 詳述DRAM、SDRAM及DDR SDRAM的概念
    本文概括闡述了DRAM 的概念,及介紹了SDRAM、DDR SDRAM、DDR2 SDRAM、DDR3 SDRAM、DDR4 SDRAM、LPDDR、GDDR。DRAM讀取具有破壞性,也就是說,在讀操作中會破壞內存單元行中的數據。因此,必需在該行上的讀或寫操作結束時,把行數據寫回到同一行中。這一操作稱為預充電,是行上的最後一項操作。必須完成這一操作之後,才能訪問新的行,這一操作稱為關閉打開的行。對計算機內存訪問進行分析後表明,內存訪問中最常用的類型是讀取順序的內存地址。
  • DRAM、SDRAM及DDR SDRAM概念詳解
    SDRAM (同步DRAM)是為把DRAM操作同步到計算機系統其餘部分,而不需要根據CE# (晶片啟動活動低)、RAS#、CAS#和WE#邊沿轉換順序定義所有內存操作模式而設計的。  SDRAM增加了時鐘信號和內存命令的概念。內存命令的類型取決於SDRAM 時鐘上升沿上的CE#, RAS#,CAS# 和WE# 信號狀態。