電子設備不可或缺的關鍵零組件:存儲器
所有使用者對「存儲器」這個名詞可是一點都不陌生,因為所有的電子產品都必須用到存儲器,且通常用到不只一種存儲器,說它是一種「戰略物資」也不為過!不過對於存儲器種類、規格與形式,很多人容易搞混,例如:身為「執行」程序(資料)的 DRAM ,以及「儲存」程序與資料的 Flash ROM 就是一例,這篇專輯將由淺入深為大家介紹各種新型存儲器的結構與運作模式。
存儲器的分類電的存儲器是指電寫電讀的存儲器,主要分為兩大類,如圖一所示:
揮發性存儲器(Volatile Memory,VM):電源開啟時資料存在,電源關閉則資料立刻流失(資料揮發掉),例如:SRAM、DRAM、SDRAM、DDR-SDRAM 等。
非揮發性存儲器(Non-Volatile Memory,NVM):電源開啟時資料存在,電源關閉資料仍然可以保留,例如:ROM、PROM、EPROM、EEPROM、Flash ROM、FRAM、MRAM、RRAM、PCRAM 等。
圖一:存儲器的分類。
存儲器的單元
存儲器的「單元」(Cell)是指用來存取資料的最小結構,如果含有一個電晶體(Transistor)與一個電容(Capacitor)則稱為「1T1C」;如果含有一個電晶體(Transistor)與一個電阻(Resistor)則稱為「1T1R」;如果含有一個二極體(Diode)與一個電阻(Resistor)則稱為「1D1R」。
存儲器的每個「單元」不一定只能儲存 1 個位的資料,由於我們對存儲器容量的要求越來越高,每個「單元」能儲存的資料越來越多,依照每個「單元」能儲存的資料位數又分為:單層單元(Single-Level Cell,SLC)、多層單元(Multi-Level Cell,MLC)、三層單元(Triple-Level Cell,TLC)、四層單元(Quad-Level Cell,QLC)等。
【延伸閱讀】對存儲器的 SLC、MLC、QLC、TLC 有興趣的人可以參考「知識力專家社交:存儲器的分類與階層」。存儲器階層(Memory hierarchy)要了解電子產品的各種存儲器配置,就必須先介紹「存儲器階層」(Memory hierarchy)觀念。存儲器階層是指如何將儲存容量不同、運算速度不同、單位價格不同的多種存儲器妥善分配,才能達到最大的經濟效益,使產品的運算速度合理、儲存容量合理、產品價格合理。
圖二為存儲器階層示意圖,由上而下依序為暫存器、快取存儲器、主存儲器、輔助存儲器:
暫存器(Register):在處理器內,用來設定處理器的功能,主要是「暫時儲存」設定值的地方。
快取存儲器(Cache memory):在處理器內,執行程序時「暫時儲存」程序與資料的地方,通常以 SRAM 製作。
主存儲器(Main memory):在處理器外,「暫時儲存」程序與資料的地方,通常以 DRAM 製作,目前已經改良成 SDRAM 或 DDR。
輔助存儲器(Assistant memory):在處理器外,「永久儲存」程序與資料的地方,包括:快閃記憶體、磁碟機、光碟機、磁帶機等。
不同種類的存儲器分別有不同的儲存容量、工作速度、單位價格:
儲存容量:輔助存儲器(GB)> 主存儲器(MB)> 快取存儲器(KB)> 暫存器(B)。
工作速度:輔助存儲器(1ms)< 主存儲器(10ns)< 快取存儲器(1ns)< 暫存器(1ns)。
單位價格:輔助存儲器 < 主存儲器 < 快取存儲器 < 暫存器。
【延伸閱讀】對存儲器階層的每一種類細節有興趣的人可以參考「知識力專家社交:存儲器的分類與階層」。圖二:存儲器階層示意圖。
存儲器的應用
所有的電子產品都必須用到存儲器,而且通常用到不只一種存儲器,由於存儲器的種類繁多,常常讓使用者混淆,我們簡單說明不同存儲器之間的差異,圖三為手機主要晶元的系統方塊圖(System block diagram),包括:應用處理器(Application processor)、基頻處理器(Baseband processor)、運動控制器(Motion Controller)。
應用處理器主要是執行操作系統(Operating System,OS)與應用程序(Application program,App),暫存器與快取存儲器目前都是內建在處理器內,其中暫存器用來設定處理器的功能,用來設定暫存器數值的程序,也就是用來趨動硬體的軟體程序又稱為「固件」(Firmware);快取存儲器是在執行程序時用來「暫時儲存」程序與資料的地方,由於在處理器內離運算單元比較近,可以縮短程序與資料來回的時間,加快程序的執行速度因此稱為「快取」(Cache)。
由於快取存儲器成本較高因此容量不大,如果執行程序時放不下,則可以退一步放在主存儲器內,可是目前主存儲器所使用的 SDRAM 或 DDR,屬於揮發性存儲器,電源關閉則資料立刻流失,因此關機後資料必須儲存在非揮發性的輔助存儲器內,早期輔助存儲器使用磁碟機、光碟機、磁帶機等,由於半導體製程的進步,目前大多使用快閃記憶體(Flash ROM),或所謂的固態硬碟(Solid State Disk,SSD),固態硬碟其實也是使快閃記憶體製作。
由於快取存儲器(SRAM)與主存儲器(SDRAM、DDR)是執行程序用來「暫時儲存」程序與資料的地方,與處理器內的運算單位直接使用匯流排(Bus)連接,一般都是用「位」(bit)來計算容量;而輔助存儲器是「永久儲存」程序與資料的地方,由於一個位組(Byte)可以儲存一個半型字,因此一般都是用「位組」(Byte)來計算容量。
圖三:手機主要晶元的系統方塊圖(System block diagram)。
靜態隨機存取存儲器(SRAM:Static RAM)
以 6 個電晶體(MOS)來儲存 1 個位(1bit)的資料,而且使用時「不需要」周期性地補充電源來保持記憶的內容,故稱為「靜態」(Static)。
SRAM 的構造較複雜(6 個電晶體儲存 1 個位的資料),不使用電容所以存取速度較快,但是成本也較高,因此一般都製作成對容量要求較低但是對速度要求較高的存儲器,例如:中央處理器(CPU)內建 256KB、512KB、1MB 的「快取存儲器」(Cache memory),一般都是使用 SRAM。
動態隨機存取存儲器(DRAM:Dynamic RAM)
以一個電晶體(MOS)加上一個電容(Capacitor)來儲存一個位(1bit)的資料,而且使用時「需要」周期性地補充電源來保持記憶的內容,故稱為「動態」(Dynamic)。
DRAM 構造較簡單(一個電晶體加上一個電容),由於電容充電放電需要較長的時間造成存取速度較慢,但是成本也較低,因此一般製作成對容量要求較高但是對速度要求較低的存儲器,例如:個人電腦主機板通常使用 1GB 以上的 DDR-SDRAM 就是屬於一種 DRAM。由於處理器的速度越來越快,傳統 DRAM 的速度已經無法滿足要求,因此目前都改良成 SDRAM 或 DDR-SDRAM 等兩種型式來使用。
※Python趕超R語言,成為數據科學、機器學習平台中最熱門的語言?
※AMD 攜手 AWS 推出雲端運算新一代應用程序
※蘋果 FaceID 臉部解鎖功能展演出包,股價翻黑
※新加坡人愛現金,政府推動電子支付傷腦筋
TAG:TechNews |