嵌入式中常見的儲存器總結(一)儲存器分類

小林菌發表於2020-10-18

儲存器有兩種,一種是斷電之後會丟失資訊,叫做易失性儲存器(volatile memory);一種是斷電後仍然可以儲存資訊,叫做非已失性儲存器(nonvolatile memory)。其中SRAM和DRAM是易失性儲存器,經常還會被統稱為RAM(Random-Access Memory),隨機訪問儲存器,也叫做主存記憶體。非易失性儲存器人們也稱為ROM(Read-Only Memory),這裡就不能僅僅以字面意思去理解,ROM字面意思是隻讀儲存器,但有很多ROM既可以讀也可以寫,ROM稱為外存。這些名詞似乎都無法準確進行概括去區分,甚至在不同的環境中會有不同的意思,對於剛學習計算機的人會有困惑,但是很多東西似乎也是約定俗成,只要我們知道他們的功能就不會理解錯誤。

例如怎麼理解記憶體和外存呢?我覺得一定是你已經明白了,你才知道。但你是怎麼明白的,一定不是從書上看到的概念:記憶體,存取速度快,容量小;外存,存取速度慢,容量大。我以前看到這樣的描述也覺得說了等於沒說。我就會想,為什麼速度快就是記憶體,有多快,比誰快,慢的就不能當記憶體嗎?直到我知道CPU是如何執行指令,程式的程式碼和資料如何被存放和載入的,計算機區域性性原理,儲存器層次結構,可能才對這些概念有一個更深的認識,知道為什麼這樣去設計,這些概念也會隨著技術的發展會有變化。本人也是能力有限,無法說明白這些儲存器更深層次的區別,不過也給大家提供一個思路。
在這裡插入圖片描述

記憶體(RAM)

隨機訪問儲存器分為兩類,靜態的(SRAM)和動態的(DRAM)。

SRAM

SRAM將每個位儲存在一個雙穩態的儲存器單元裡。每個單元是用一個六電晶體電路來實現的,在供電期間保留資料。這使得每個記憶體單元相對較大,並限制了SRAM在低密度記憶體中的使用。SRAM能夠提供更快的資料訪問,使用更少的待機電量,但往往比DRAM更昂貴。SRAM一般用來作為快取記憶體儲存器。

DRAM

DRAM為每個儲存器位使用一個電晶體和一個小電容。 由於電容不會無限期地保持電荷,因此必須經常對DRAM單元進行充電(重新整理)以避免丟失內容。 這些較小的儲存單元允許DRAM用於高密度,低成本的儲存器,但通常比SRAM慢。DRAM一般用來作為主存。

外存(ROM)

PROM

PROM,Programmable ROM,可程式設計只讀儲存器。只能被程式設計一次。PROM的每個儲存單元有一種熔絲,通過高壓電流將其熔絲“燒”斷以將其設定為1或0,這過程不可逆,因此資料只能燒寫一次。

EPROM

EPROM,Erasable Programmalbe ROM,可擦寫可程式設計只讀儲存器。EPROM對PROM來說是一個很大的改進,因為不僅可以燒寫所需的資料或程式,而且還可以進行多次燒寫。早期的EPROM有一個透明的石英視窗,將它們石英視窗暴露於紫外線(UV)中,可以將它們擦除。對EPROM寫資料是通過特殊裝置來完成的。
在這裡插入圖片描述

EEPROM

EEPROM,Electrically Erasable PROM,電可擦寫可程式設計只讀儲存器。這是對早期EPROM的改進,因為它不再需要紫外線來擦除儲存晶片,因此不需要特殊的裝置進行寫入。取而代之的是,只需要向晶片上的一個引腳施加特殊的電壓就可以了。EEPROM要求一次寫入或擦除一個位元組的資料。
在這裡插入圖片描述

FLASH

FLASH,Flash Memory,快閃記憶體。flash是基於EEPROM發展的,區別是EEPROM要求一次寫入或擦除一個位元組的資料,而快閃記憶體則允許以塊為單位寫入或擦除資料,這使快閃記憶體速度更快。

SPI flash

flash以介面不同可以分為傳統flash和SPI flash,傳統flash的介面不一,CLE、ALE、CE、RE等,使用的管腳數量也不一,因此難以使用。而後面的SPI flash的介面就SPI匯流排,統一介面可以方便隨時更換不同廠家的flash而不需要修改電路設計和程式碼,並且SPI flash使用的管腳數量比傳統的flash更少。

Nor、Nand

flash memory有兩種架構,Nor和Nand。
Nor,容量小,價格高,Nor通常用於程式碼儲存和執行。 Nor允許快速隨機訪問儲存器陣列中的任何位置,部件壽命期內所有儲存單元(bit)都是良好的以及可以直接從Nor快閃記憶體中執行程式碼。
在這裡插入圖片描述

Nand,容量大,價格低,通常用於資料儲存。 Nand快閃記憶體需要一段時間去初始化才能工作,部件壽命期內大概98%的儲存單元(bit)是良好的,意味著還有2%的儲存單元(bit)是故障,因此需要使用資料校驗演算法(ECC)。寫入和擦除時間比Nor快得多。
在這裡插入圖片描述

eMMC

eMMC,embedded Multi-Media Controller。是Nand和快閃記憶體控制器整合在同一晶片封裝。Nor和Nand快閃記憶體最初不需要單獨的硬體快閃記憶體控制器,並且將這部分此功能移交給軟體處理。硬體快閃記憶體控制器的主要功能一是糾錯和編碼(ECC);功能二實現了FTL(Flash Translation Layer,快閃記憶體轉換層),該FTL進行類似於磁碟的塊訪問並將其轉換為有意義的Nand操作,以及執行損耗均衡和塊節省。eMMC適用於高效能應用,例如用於智慧手機,平板電腦,導航系統和數位相機等行動式消費電子產品。
在這裡插入圖片描述

SD、TF

SD,Secure Digital Memory Card,數字安全記憶卡。SD卡和eMMC非常相似,區別就是eMMC一般焊接在主機板上,而SD卡是可以拔插的。
在這裡插入圖片描述
TF,TransFLash,也稱為Micro SD卡,其實本質上和SD卡是一個東西,只是外形不同,名稱不同,開發的公司不同而已。市面上還有TF卡插頭介面卡,可以直接轉換為SD卡。
在這裡插入圖片描述

HDD

磁碟,Hard Disk Drive,HDD。使用旋轉碟片為基礎的非易失性儲存器,它在平整的磁性表面儲存和檢索數字資料,資料通過離磁性表面很近的磁頭由電磁流來改變極性的方式被寫入到磁碟上,資料可以通過碟片被讀取,原理是磁頭經過碟片的上方時碟片本身的磁場導致讀取線圈中電氣訊號改變。(維基百科)
在這裡插入圖片描述

SSD

SSD,solid-state drive,固態硬碟。SSD也是和eMMC一樣由Nand和快閃記憶體控制器組成,可以理解eMMC通常是一個快閃記憶體晶片而SSD是多個快閃記憶體晶片,SSD容量會更大;SSD使用SATA、PCIe、M2等介面,傳輸速度比eMMC的SPI介面更快;eMMC常用於移動裝置中,SSD常用於PC。
在這裡插入圖片描述
部分參考:
[1] https://blog.csdn.net/sinat_27746419/article/details/73604520
[2] https://blog.csdn.net/u014470361/article/details/96130939
[3] https://www.gearbest.com/blog/new-gear/tf-card-vs-sd-card-what-is-it-and-9-easy-ways-to-help-you-tell-their-differences-6305
[4] https://www.cypress.com/file/202491/download

相關文章