所有使用者對“存儲器”這個名詞可是一點都不陌生,因為所有的電子產品都必須用到存儲器,且通常用到不只一種存儲器。不過對于存儲器種類、規格與形式,很多人容易搞混。比如NAND Flash,產業新聞里常常提到的DRAM,還有SRAM、SDRAM、DDR 3、DDR 4、NOR Flash … 這些又是什么?
先來一段百度百科。
存儲器是用來存儲程序和數據的部件,對于計算機來說,有了存儲器,才有記憶功能,才能保證正常工作。存儲器的種類很多,按其用途可分為主存儲器和輔助存儲器,主存儲器又稱內存儲器(簡稱內存,港臺稱之為記憶體)。外儲存器是指除計算機內存及CPU緩存以外的儲存器,此類儲存器一般斷電后仍然能保存數據。常見的外存儲器有硬盤、軟盤、光盤、U盤等。
而簡單來說,DRAM就是我們一般在用的內存,而NAND Flash 閃存,它在做的事情其實是硬盤。
不熟悉PC知識的朋友常常在選購設備時問,硬盤和內存到底有什么差別?我硬盤容量明明有 1TB,但PC還是跑得很慢哎?
硬盤和內存的差異,在于把電源關掉后、空間中儲存的數據還會不會留著。就算關掉電源,硬盤的數據也不會消失。
但我們要運算數據時,如果 CPU 要直接從硬盤里面抓數據,時間會太久。所以”內存”會作為中間橋梁,先到硬盤里面復制一份進來、再讓 CPU 直接到內存中拿數據做運算。這樣會 比直接去硬盤抓數據,快約數百萬倍。
打開任務管理器,就可以看到現在執行中程序占掉的內存空間,很多人就在罵Chrome 耗費的運算資源很高,內存使用率高于其他瀏覽器,多開幾個分頁內存就被吃完了。
所以簡單來說,計算機在運作就像是辦公一樣,喝飲料、看書本、聽音響… 想一次使用越多東西、桌面(內存)就要越大。但其他一時間沒有要用到的東西,都會放在抽屜(硬盤)里面。所以硬盤就算再大,你一次想執行很多任務,還是得要看內存大小。
內存的處理速度比硬盤更快,但斷電之后數據會消失,且價格也比硬盤貴。
當然存儲器的層次結構里面還有更多細節。參見后文。
簡單來說,CPU 里面也有一個儲存空間,叫做 Register。要運算時、CPU 會從內存中把數據載入Register、再讓Register中存的數字做運算,運算完再將結果存回內存中。畢竟 CPU 和內存終究還是兩片不同的芯片,沒有在同一片芯片里直接抓數據快。
還有一個概念是 Cache,這是CPU 和內存之間的中間橋梁。
速度來講,就是:CPU里面的Register > Cache > 內存 > 硬盤。越上層(越靠近 CPU),速度就越快、價格越高、容量越低。
存儲器的分類
電的存儲器是指電寫電讀的存儲器,主要分為兩大類,如圖一所示:
易失性存儲器(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)等。
存儲器層次結構
要了解電子產品的各種存儲器配置,就必須先介紹“存儲器層次結構”(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)來計算容量。
靜態隨機存取存儲器(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 等兩種型式來使用。
同步動態隨機存取存儲器(SDRAM:Synchronous DRAM)
中央處理器(CPU)與主機板上的主存儲器(SDRAM)存取資料時的“工作時脈”(Clock)相同,故稱為“同步”(Synchronous)。由于 CPU 在存取資料時不需要“等待”(Wait)因此效率較高,SDRAM 的存取速度較 DRAM 快,所以早期電腦主機板上都是使用 SDRAM 來取代傳統 DRAM,不過目前也只有少數工業電腦仍然使用 SDRAM。
可以記住一個簡單的結論:SRAM 比較快、 DRAM 比較慢;SRAM 比較貴、DRAM 比較便宜。
這是我們平常在計算機中使用的內存,更精確的說法應該叫”內存模塊”(Memory Module)。一個內存模塊實際上就是由一塊小電路板、再加上幾塊的 DRAM 芯片構成。圖標中的內存模塊上一共有 8 個 DRAM 芯片。讓我們把一個 DRAM 芯片的內部結構剖開看看,會看到一個儲存數組(Memorry Array)。
CPU 會給這個儲存數組”行地址”和”列地址”,就可以選出一個”儲存單元”。常見的儲存單元包含了 4 bit 或 8 bit,每一個 bit 都會采用一個電路結構,我們稱為 DRAM 的一個”基本儲存單元”。
這個基本儲存單元中包含了一個晶體管匹配一個電容。然后就可以視電容器是否有充電電荷存在、來判別目前的記憶狀態。
“寫入內存”的動作,就是由外部的數據線、對電容進行充電或放電,從而完成寫入 1 或 0 的數字數據。
DRAM 使用一個晶體管(MOS)與一個電容來儲存一個位的資料(一個 0 或一個 1),如圖四(a)所示,當晶體管(MOS)不導通時沒有電子流過,電容沒有電荷,代表這一個位的資料是 0,如圖四(b)所示;當晶體管(MOS)導通時(在閘極施加正電壓),電子會由源極流向汲極,電容有電荷,代表這一個位的資料是 1,為了要將這些流過來的電荷“儲存起來”,因此必須使用一個微小的電容,如圖四(c)所示,DRAM 就是因為電容需要時間充電,所以速度比 SRAM 還慢。
由于電容會有漏電的現象,導致電位差不足而使記憶消失,因此除非電容經常周期性地充電,否則無法確保數據能長久保存起來。
由于每個 DRAM 基本儲存單元的電路結構非常的簡單,所以功耗低、價格也較低。這樣一來用低成本就能制造出大儲存容量的 DRAM 芯片。缺點就是讀寫的速度慢(電容要充電放電),影響了 DRAM 的性能。
SRAM 的結構則較為復雜,一共有六個晶體管構成。我們能分別用 M1、M2、M3 到 M6 進行標記。這六個晶體管合起來才能保存一個 bit。
SRAM 芯片和 DRAM 芯片不太一樣,不需要分成行地址和列地址分別選擇,而且 SRAM 的設計相對來說又更加靈活,一個地址對應的儲存單元數量可以是 8 bit、10 bit,或 32 bit、40 bit、64 bit 都行。
另外,晶體管的開關速度遠比電容充電放電的速度還快,所以相對于 DRAM、SRAM 的讀寫速度比 DRAM 快很多。
然而 SRAM 中要儲存一個 bit 就得用到六個晶體管。晶體管的數量一多、就會造成芯片的面積變大,從而帶來集成電路難以變得更小、還有價格更貴的問題。
(SRAM 的價格比起 DRMA 要高達 1000 倍以上。比如 2010 年世代––—SRAM 的每單位儲存價格是 $60/MB,DRAM 則是 $0.06/MB。)
同時每個晶體管都要耗電,晶體管越多、功耗就越高。考慮到價格高和功耗大,目前只能在一些很嚴苛的地方來使用 SRAM,比如上面提到的快取 (Cache)。
故目前”主存儲器”還是使用 DRAM 技術,但小塊用來拉速度的”快取”就是采用 SRAM。然而無論是 DRAM 還是 SRAM,一不供應電源就會喪失儲存的數據,所以都叫做揮發性內存。
鐵電隨機存取存儲器 FRAM
動態隨機存取存儲器(DRAM)是以一個晶體管加上一個電容來儲存一個位(1bit)的資料,由于傳統 DRAM 的電容都是使用“氧化矽”做為絕緣體,氧化矽的介電常數不夠大(K 值不夠大),因此不容易吸引(儲存)電子與電洞,造成必須不停地補充電子與電洞,所以稱為“動態”,只要電腦的電源關閉,電容所儲存的電子與電洞就會流失,DRAM 所儲存的資料也就會流失。
要解決這個問題,最簡單的就是使用介電常數夠大(K 值夠大)的材料來取代“氧化矽”為絕緣體,讓電子與電洞可以儲存在電容里不會流失。目前業界使用“鈦鋯酸鉛”(PZT)或“鉭鉍酸鍶”(SBT)這種介電常數很大(K 值很大)的“鐵電材料”(Ferroelectric material)來取代氧化矽,則可以儲存電子與電洞不會流失,讓原本“易失性”的動態隨機存取存儲器(DRAM)變成“非易失性”的存儲器稱為“鐵電隨機存取存儲器”(Ferroelectric RAM,FRAM)。
NAND Flash 又是什么呢?
繼續講講非易失性的部分:
Flash(閃存)由于具備了重量輕、體積小、功率低等優點,被應用在各類電子產品的硬盤上。Flash 又可以分成 NOR 型 Flash 和 NAND 型 Flash。
NOR Flash 比 NAND Flash 更早導入市場。讀取的速度較快,但寫入的速度慢、價格也比 NAND Flash 貴。
目前用來儲存操作系統的程序代碼或重要數據,比如拿來做 ROM。像是生產 NOR Flash 的臺廠旺宏就是因為打入任天堂 Switch 主機的 ROM 供應鏈,今年營收上看攀升。
NAND Flash 寫入的速度快、價格較低,故目前以 NAND Flash 最為普遍。現在的 USB 硬盤和手機儲存空間,就是用 NAND Flash 為主流技術。
另外,固態硬盤(Solid State Drive, SSD)也是以 NAND 型 Flash 為基礎所建構的儲存裝置。SSD 不像傳統硬盤(HDD)中有馬達、讀寫臂等零件。速度慢、功耗高,對震動又相當敏感,很難用在小型行動裝置中。
SSD 在讀寫數據時不會有噪音,耐震、傳輸速度快、重量又能縮減到 HDD 十分之一以上,現在已經成為個人計算機和筆記本電腦的主流儲存設備。
總結:
依照停止供應電源的話、是否還能保留數據,分成”易失性”與”非易失性”存儲。
易失性存儲分成 DRAM 和 SRAM。
SRAM 更快但價格更貴,所以主存儲器多用 DRAM、快取多用 SRAM。
非易失性存儲分成 ROM 和 Flash。主要用來作為硬盤。
Flash 又分成 NOR Flash 與 NAND Flash,現在硬盤多以 NAND Flash 構成的 SSD 為主。
-
存儲器
+關注
關注
38文章
7528瀏覽量
164189 -
cpu
+關注
關注
68文章
10901瀏覽量
212686 -
計算機
+關注
關注
19文章
7534瀏覽量
88459
發布評論請先 登錄
相關推薦
評論