存儲設備總結 ROM RAM FLASH EEPROM SRAM DRAM

注意每個字母代表的單詞

主要分爲ROM和RAM兩類,加了不同功能而已

ROM:(Read Only Memory)程序存儲器

只讀,永久存儲

在單片機中用來存儲程序數據及常量數據或變量數據,凡是c文件及h文件中所有代碼、全局變量、局部變量、’const’限定符定義的常量數據、startup.asm文件中的代碼(類似ARM中的bootloader或者X86中的BIOS,一些低端的單片機是沒有這個的)通通都存儲在ROM中。

RAM:(Random Access Memory)隨機訪問存儲器

掉電消失,可讀可寫

用來存儲程序中用到的變量。凡是整個程序中,所用到的需要被改寫的量,都存儲在RAM中,“被改變的量”包括全局變量、局部變量、堆棧段。數據是CPU寫入讀出的,不是人爲寫入的。

ROM是隻讀存儲器,CPU只能從裏面讀數據,而不能往裏面寫數據,掉電後數據依然保存在存儲器中;RAM是隨機存儲器,CPU既可以從裏面讀出數據,又可以往裏面寫入數據,掉電後數據不保存,這是條永恆的真理,始終記掛在心。

http://m.elecfans.com/article/622818.html

EEPROM

rom最初不能編程,出廠什麼內容就永遠什麼內容,不靈活。後來出現了prom,可以自己寫入一次,要是寫錯了,只能換一片,自認倒黴。人類文明不斷進步,終於出現了可多次擦除寫入的EPROM,每次擦除要把芯片拿到紫外線上照一下,想一下你往單片機上下了一個程序之後發現有個地方需要加一句話,爲此你要把單片機放紫外燈下照半小時,然後才能再下一次,這麼折騰一天也改不了幾次。歷史的車輪不斷前進,偉大的EEPROM出現了,拯救了一大批程序員,終於可以隨意的修改rom中的內容了。

EEPROM的全稱是“電可擦除可編程只讀存儲器”
Electrically Erasable Programmable Read-Only Memory

認識一下單詞

  1. E Electrically 用電的方式
  2. E Erasable 可擦寫的
  3. P Programmable 可編程的
  4. ROM

特點:
EEPROM容量都比較小,通常用來存儲一些小容量數據,例如系統的配置信息。像網卡的配置信息、PCI橋的配置信息都存儲在93C46之類的芯片中。這種存儲器一個比較好的特點是可以進行字節級編程,但是讀寫性能都很差。如果要進行大數據存儲,是不能採用此類芯片的。

FLASH(閃電)

Flash Memory(閃存)

rom和ram各有特點不可兼得,技術在進步,eeprom可以兼得了,但容量太小,速度也不快。於是技術又進步,出現了FLASH,都兼得了。

和EEPROM相比,Flash存儲芯片的一個特點是存儲容量大,並且以塊單元進行數據擦除操作,以Page頁的方式進行數據讀寫。該類芯片都採用IO接口的方式與CPU相連,即通過命令的方式進行讀寫、擦除操作。

它結合了ROM和RAM的長處,不僅具備電子可擦除可編程(EEPROM)的性能,還不會斷電丟失數據同時可以快速讀取數據(NVRAM 的優勢),U盤和MP3裏用的就是這種存儲器。在過去的20年裏,嵌入式系統一直使用ROM(EPROM)作爲它們的存儲設備,然而近年來Flash全面代替了ROM(EPROM)在嵌入式系統中的地位,用作存儲Bootloader以及操作系統或者程序代碼或者直接當硬盤使用(U盤)。

flash分爲nor flash和nand flash

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

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

由於nandflash引腳上覆用,因此讀取速度比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存放文件系統和內核。

EEPROM和flash的區別

SRAM 靜態存儲器

(Static Random-Access Memory,SRAM)

Static 靜態的

所謂的“靜態”,是指這種存儲器只要保持通電,裏面儲存的數據就可以恆常保持。

每個SRAM單元使用六晶體管電路(six-transistor circuit)和鎖存器(latch)存儲一個bit。(DRAM使用晶體管和電容器。)SRAM是易失性的,但如果系統通電,SRAM會保留存儲的數據而無需重複充電。它對電噪聲相當不敏感——電噪聲是會對所需信號產生干擾的,不需要的電信號。由於它比DRAM更快且成本更高,因此通常作爲CPU內存緩存或用於高端、高性能服務器運行。SRAM系統內存通常爲20-40ns(納秒)。

DRAM 動態隨機存取存儲器

(Dynamic Random Access Memory)

Dynamic 動態的

DRAM 只能將數據保持很短的時間。爲了保持數據,DRAM使用電容存儲,所以必須隔一段時間刷新(refresh)一次,如果存儲單元沒有被刷新,存儲的信息就會丟失。
每個DRAM單元使用一個晶體管另加一個電容器來存儲一個bit,因此DRAM具有非常高的密度。像SRAM一樣,DRAM也是易失性的。但與SRAM不同,DRAM每個單元必須週期性地進行刷新(預充電),因爲電容器不可避免地存在漏電現象。它對電噪聲很敏感。DRAM速度通常在60ns到100ns之間——仍然很快,但比SRAM慢。一般速度爲20-40GB / s,連續的單元充電,使DRAM比SRAM具有更高的時延和帶寬延遲。

SRAM和DRAM組成的器件數量差別,造成了價格的差異
在這裏插入圖片描述
https://blog.csdn.net/qq_17753903/article/details/82895415

DRAM一般用作計算機中的主存儲器,即內存條。

SRAM一般用來作爲計算機中的告訴緩衝存儲器,即CPU或GPU中的Cache。

又在此基礎上發展出其他的存儲器

SDRAM——同步DRAM(SDRAM)是一種與CPU的時鐘週期同步的DRAM,因此存儲器的控制器確切地知道所請求的數據何時可以訪問。這減少了訪問時間並提高了內存性能。

DDR——雙倍數據速率SDRAM(DDR SDRAM,大家習慣稱DDR)是最新一代SDRAM。DDR提高了速度,降低了功耗,引入了刷新機制,並增加了CRC等安全功能。例如,DDR3傳輸IO數據的速度比其自身單元的速度快8倍,從而實現更高的吞吐量和更快的速度。(但它並沒有降低時延)單芯片容量可以達到8GB,在實際應用中可有效翻倍至16GB。

SGRAM——同步圖形RAM(Synchronous Graphics Random-Access Memory)是一個同步時鐘的DRAM。SGRAM可以同時打開兩個內存頁面,以較低的成本模擬雙端口。

VRAM——即Video RAM,是一種用於存儲計算機圖像數據的DRAM。VRAM充當用戶顯示監視器和處理器之間的幀緩衝器。處理器最初從主存儲RAM讀取視頻數據並將其寫入視頻RAM格式。幀緩衝器將數字視頻數據轉換爲模擬信號併發送到顯示器。舊的VRAM是雙端口的,這意味着當CPU處理器將一個新的幀寫入視頻RAM時,監視器將從視頻中讀取並更新其顯示。

MDRAM——多BANK動態隨機存取存儲器(Multibank Dynamic RAM),是一種高性能VRAM。傳統的VRAM通過呈現整個幀緩衝區以進行數據訪問,而MDRAM將內存劃分爲32KB的BANK以進行併發訪問。

EDRAM——增強型DRAM,將SRAM和DRAM結合起來,爲2級緩存提供服務。通常是256字節的SRAM與DRAM配對。數據讀取操作首先檢查SRAM以獲取所請求的數據,如果數據未存儲在SRAM中,再檢查DRAM。

WRAM——Window RAM(與Microsoft Windows無關)是一種高性能的雙端口VRAM。它的架構比傳統的VRAM產生大約25%的帶寬,成本更低。它通過高性能數據讀取實現此功能,用於文本繪製和塊填充等操作。它採用真彩色(24位色),非常適合高分辨率圖形顯示器。

EDO DRAM——擴展數據輸出DRAM(EDO DRAM),預先讀取下一塊存儲器,同時將前一塊發送到CPU,這使它的速度比標準DRAM快25%。

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