所有使用者對(duì)“存儲(chǔ)器”這個(gè)名詞可是一點(diǎn)都不陌生,因?yàn)樗械?a target="_blank">電子產(chǎn)品都必須用到存儲(chǔ)器,且通常用到不只一種存儲(chǔ)器。不過(guò)對(duì)于存儲(chǔ)器種類、規(guī)格與形式,很多人容易搞混。比如NAND Flash,產(chǎn)業(yè)新聞里常常提到的DRAM,還有SRAM、SDRAM、DDR 3、DDR 4、NOR Flash … 這些又是什么?
先來(lái)一段百度百科。
存儲(chǔ)器是用來(lái)存儲(chǔ)程序和數(shù)據(jù)的部件,對(duì)于計(jì)算機(jī)來(lái)說(shuō),有了存儲(chǔ)器,才有記憶功能,才能保證正常工作。存儲(chǔ)器的種類很多,按其用途可分為主存儲(chǔ)器和輔助存儲(chǔ)器,主存儲(chǔ)器又稱內(nèi)存儲(chǔ)器(簡(jiǎn)稱內(nèi)存,港臺(tái)稱之為記憶體)。外儲(chǔ)存器是指除計(jì)算機(jī)內(nèi)存及CPU緩存以外的儲(chǔ)存器,此類儲(chǔ)存器一般斷電后仍然能保存數(shù)據(jù)。常見的外存儲(chǔ)器有硬盤、軟盤、光盤、U盤等。
而簡(jiǎn)單來(lái)說(shuō),DRAM就是我們一般在用的內(nèi)存,而NAND Flash 閃存,它在做的事情其實(shí)是硬盤。
不熟悉PC知識(shí)的朋友常常在選購(gòu)設(shè)備時(shí)問(wèn),硬盤和內(nèi)存到底有什么差別?我硬盤容量明明有 1TB,但PC還是跑得很慢哎?
硬盤和內(nèi)存的差異,在于把電源關(guān)掉后、空間中儲(chǔ)存的數(shù)據(jù)還會(huì)不會(huì)留著。就算關(guān)掉電源,硬盤的數(shù)據(jù)也不會(huì)消失。
但我們要運(yùn)算數(shù)據(jù)時(shí),如果 CPU 要直接從硬盤里面抓數(shù)據(jù),時(shí)間會(huì)太久。所以”內(nèi)存”會(huì)作為中間橋梁,先到硬盤里面復(fù)制一份進(jìn)來(lái)、再讓 CPU 直接到內(nèi)存中拿數(shù)據(jù)做運(yùn)算。這樣會(huì) 比直接去硬盤抓數(shù)據(jù),快約數(shù)百萬(wàn)倍。
打開任務(wù)管理器,就可以看到現(xiàn)在執(zhí)行中程序占掉的內(nèi)存空間,很多人就在罵Chrome 耗費(fèi)的運(yùn)算資源很高,內(nèi)存使用率高于其他瀏覽器,多開幾個(gè)分頁(yè)內(nèi)存就被吃完了。
所以簡(jiǎn)單來(lái)說(shuō),計(jì)算機(jī)在運(yùn)作就像是辦公一樣,喝飲料、看書本、聽音響… 想一次使用越多東西、桌面(內(nèi)存)就要越大。但其他一時(shí)間沒(méi)有要用到的東西,都會(huì)放在抽屜(硬盤)里面。所以硬盤就算再大,你一次想執(zhí)行很多任務(wù),還是得要看內(nèi)存大小。
內(nèi)存的處理速度比硬盤更快,但斷電之后數(shù)據(jù)會(huì)消失,且價(jià)格也比硬盤貴。
當(dāng)然存儲(chǔ)器的層次結(jié)構(gòu)里面還有更多細(xì)節(jié)。參見后文。
簡(jiǎn)單來(lái)說(shuō),CPU 里面也有一個(gè)儲(chǔ)存空間,叫做 Register。要運(yùn)算時(shí)、CPU 會(huì)從內(nèi)存中把數(shù)據(jù)載入Register、再讓Register中存的數(shù)字做運(yùn)算,運(yùn)算完再將結(jié)果存回內(nèi)存中。畢竟 CPU 和內(nèi)存終究還是兩片不同的芯片,沒(méi)有在同一片芯片里直接抓數(shù)據(jù)快。
還有一個(gè)概念是 Cache,這是CPU 和內(nèi)存之間的中間橋梁。
速度來(lái)講,就是:CPU里面的Register > Cache > 內(nèi)存 > 硬盤。越上層(越靠近 CPU),速度就越快、價(jià)格越高、容量越低。
存儲(chǔ)器的分類
電的存儲(chǔ)器是指電寫電讀的存儲(chǔ)器,主要分為兩大類,如圖一所示:
易失性存儲(chǔ)器(Volatile Memory,VM):電源開啟時(shí)資料存在,電源關(guān)閉則資料立刻流失(資料揮發(fā)掉),例如:SRAM、DRAM、SDRAM、DDR-SDRAM 等。
非易失性存儲(chǔ)器(Non-Volatile Memory,NVM):電源開啟時(shí)資料存在,電源關(guān)閉資料仍然可以保留,例如:ROM、PROM、EPROM、EEPROM、Flash ROM、FRAM、MRAM、RRAM、PCRAM 等。
存儲(chǔ)器的單元
存儲(chǔ)器的“單元”(Cell)是指用來(lái)存取資料的最小結(jié)構(gòu),如果含有一個(gè)晶體管
(Transistor)與一個(gè)電容(Capacitor)則稱為“1T1C”;如果含有一個(gè)晶體管(Transistor)與一個(gè)電阻(Resistor)則稱為“1T1R”;如果含有一個(gè)二極體(Diode)與一個(gè)電阻(Resistor)則稱為“1D1R”。
存儲(chǔ)器的每個(gè)“單元”不一定只能儲(chǔ)存 1 個(gè)位的資料,由于我們對(duì)存儲(chǔ)器容量的要求越來(lái)越高,每個(gè)“單元”能儲(chǔ)存的資料越來(lái)越多,依照每個(gè)“單元”能儲(chǔ)存的資料位數(shù)又分為:?jiǎn)螌訂卧⊿ingle-Level Cell,SLC)、多層單元(Multi-Level Cell,MLC)、三層單元(Triple-Level Cell,TLC)、四層單元(Quad-Level Cell,QLC)等。
存儲(chǔ)器層次結(jié)構(gòu)
要了解電子產(chǎn)品的各種存儲(chǔ)器配置,就必須先介紹“存儲(chǔ)器層次結(jié)構(gòu)”(Memory hierarchy)觀念。存儲(chǔ)器層次結(jié)構(gòu)是指如何將儲(chǔ)存容量不同、運(yùn)算速度不同、單位價(jià)格不同的多種存儲(chǔ)器妥善分配,才能達(dá)到最大的經(jīng)濟(jì)效益,使產(chǎn)品的運(yùn)算速度合理、儲(chǔ)存容量合理、產(chǎn)品價(jià)格合理。
圖二為存儲(chǔ)器階層示意圖,由上而下依序?yàn)闀捍嫫鳌⒖烊〈鎯?chǔ)器、主存儲(chǔ)器、輔助存儲(chǔ)器:
暫存器(Register,也譯為寄存器):在處理器內(nèi),用來(lái)設(shè)定處理器的功能,主要是“暫時(shí)儲(chǔ)存”設(shè)定值的地方。
快取存儲(chǔ)器(Cache memory,翻譯版本有緩存,快取緩存區(qū),快取存儲(chǔ)器;臺(tái)灣翻譯為快取。):在處理器內(nèi),執(zhí)行程序時(shí)“暫時(shí)儲(chǔ)存”程序與資料的地方,通常以 SRAM 制作。
主存儲(chǔ)器(Main memory):在處理器外,“暫時(shí)儲(chǔ)存”程序與資料的地方,通常以 DRAM 制作,目前已經(jīng)改良成 SDRAM 或 DDR。
輔助存儲(chǔ)器(Assistant memory):在處理器外,“永久儲(chǔ)存”程序與資料的地方,包括:快閃存儲(chǔ)器、磁盤機(jī)、光盤機(jī)、磁帶機(jī)等。
不同種類的存儲(chǔ)器分別有不同的儲(chǔ)存容量、工作速度、單位價(jià)格:
儲(chǔ)存容量:輔助存儲(chǔ)器(GB)> 主存儲(chǔ)器(MB)> 快取存儲(chǔ)器(KB)> 暫存器(B)。
工作速度:輔助存儲(chǔ)器(1ms)< 主存儲(chǔ)器(10ns)< 快取存儲(chǔ)器(1ns)< 暫存器(1ns)。
單位價(jià)格:輔助存儲(chǔ)器 < 主存儲(chǔ)器 < 快取存儲(chǔ)器 < 暫存器。
存儲(chǔ)器的應(yīng)用
所有的電子產(chǎn)品都必須用到存儲(chǔ)器,而且通常用到不只一種存儲(chǔ)器,由于存儲(chǔ)器的種類繁多,常常讓使用者混淆,我們簡(jiǎn)單說(shuō)明不同存儲(chǔ)器之間的差異,圖三為手機(jī)主要芯片的系統(tǒng)方塊圖(System block diagram),包括:應(yīng)用處理器(Application processor)、基帶處理器(Baseband processor)、運(yùn)動(dòng)控制器(Motion Controller)。
應(yīng)用處理器主要是執(zhí)行操作系統(tǒng)(Operating System,OS)與應(yīng)用程序(Application program,App),暫存器與快取存儲(chǔ)器目前都是內(nèi)建在處理器內(nèi),其中暫存器用來(lái)設(shè)定處理器的功能,用來(lái)設(shè)定暫存器數(shù)值的程序,也就是用來(lái)趨動(dòng)硬件的軟件程序又稱為“固件”(Firmware);快取存儲(chǔ)器是在執(zhí)行程序時(shí)用來(lái)“暫時(shí)儲(chǔ)存”程序與資料的地方,由于在處理器內(nèi)離運(yùn)算單元比較近,可以縮短程序與資料來(lái)回的時(shí)間,加快程序的執(zhí)行速度因此稱為“Cache”。
由于快取存儲(chǔ)器成本較高因此容量不大,如果執(zhí)行程序時(shí)放不下,則可以退一步放在主存儲(chǔ)器內(nèi),可是目前主存儲(chǔ)器所使用的 SDRAM 或 DDR,屬于易失性存儲(chǔ)器,電源關(guān)閉則資料立刻流失,因此關(guān)機(jī)后資料必須儲(chǔ)存在非易失性的輔助存儲(chǔ)器內(nèi),早期輔助存儲(chǔ)器使用磁盤機(jī)、光盤機(jī)、磁帶機(jī)等,由于半導(dǎo)體制程的進(jìn)步,目前大多使用快閃存儲(chǔ)器(Flash ROM),或所謂的固態(tài)硬盤(Solid State Disk,SSD),固態(tài)硬盤其實(shí)也是使快閃存儲(chǔ)器制作。
由于快取存儲(chǔ)器(SRAM)與主存儲(chǔ)器(SDRAM、DDR)是執(zhí)行程序用來(lái)“暫時(shí)儲(chǔ)存”程序與資料的地方,與處理器內(nèi)的運(yùn)算單位直接使用匯流排(Bus)連接,一般都是用“位”(bit)來(lái)計(jì)算容量;而輔助存儲(chǔ)器是“永久儲(chǔ)存”程序與資料的地方,由于一個(gè)位組(Byte)可以儲(chǔ)存一個(gè)半型字,因此一般都是用“位組”(Byte)來(lái)計(jì)算容量。
靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM:Static RAM)
以 6 個(gè)晶體管(MOS)來(lái)儲(chǔ)存 1 個(gè)位(1bit)的資料,而且使用時(shí)“不需要”周
期性地補(bǔ)充電源來(lái)保持記憶的內(nèi)容,故稱為“靜態(tài)”(Static)。
SRAM 的構(gòu)造較復(fù)雜(6 個(gè)晶體管儲(chǔ)存 1 個(gè)位的資料),不使用電容所以存取速度較快,但是成本也較高,因此一般都制作成對(duì)容量要求較低但是對(duì)速度要求較高的存儲(chǔ)器,例如:中央處理器(CPU)內(nèi)建 256KB、512KB、1MB 的“快取存儲(chǔ)器”(Cache memory),一般都是使用 SRAM。
動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM:Dynamic RAM)
以一個(gè)晶體管(MOS)加上一個(gè)電容(Capacitor)來(lái)儲(chǔ)存一個(gè)位(1bit)的資料,而且使用時(shí)“需要”周期性地補(bǔ)充電源來(lái)保持記憶的內(nèi)容,故稱為“動(dòng)態(tài)”(Dynamic)。
DRAM 構(gòu)造較簡(jiǎn)單(一個(gè)晶體管加上一個(gè)電容),由于電容充電放電需要較長(zhǎng)的時(shí)間造成存取速度較慢,但是成本也較低,因此一般制作成對(duì)容量要求較高但是對(duì)速度要求較低的存儲(chǔ)器,例如:個(gè)人電腦主機(jī)板通常使用 1GB 以上的 DDR-SDRAM 就是屬于一種 DRAM。由于處理器的速度越來(lái)越快,傳統(tǒng) DRAM 的速度已經(jīng)無(wú)法滿足要求,因此目前都改良成 SDRAM 或 DDR-SDRAM 等兩種型式來(lái)使用。
同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(SDRAM:Synchronous DRAM)
中央處理器(CPU)與主機(jī)板上的主存儲(chǔ)器(SDRAM)存取資料時(shí)的“工作時(shí)脈”(Clock)相同,故稱為“同步”(Synchronous)。由于 CPU 在存取資料時(shí)不需要“等待”(Wait)因此效率較高,SDRAM 的存取速度較 DRAM 快,所以早期電腦主機(jī)板上都是使用 SDRAM 來(lái)取代傳統(tǒng) DRAM,不過(guò)目前也只有少數(shù)工業(yè)電腦仍然使用 SDRAM。
可以記住一個(gè)簡(jiǎn)單的結(jié)論:SRAM 比較快、 DRAM 比較慢;SRAM 比較貴、DRAM 比較便宜。
這是我們平常在計(jì)算機(jī)中使用的內(nèi)存,更精確的說(shuō)法應(yīng)該叫”內(nèi)存模塊”(Memory Module)。一個(gè)內(nèi)存模塊實(shí)際上就是由一塊小電路板、再加上幾塊的 DRAM 芯片構(gòu)成。圖標(biāo)中的內(nèi)存模塊上一共有 8 個(gè) DRAM 芯片。讓我們把一個(gè) DRAM 芯片的內(nèi)部結(jié)構(gòu)剖開看看,會(huì)看到一個(gè)儲(chǔ)存數(shù)組(Memorry Array)。
CPU 會(huì)給這個(gè)儲(chǔ)存數(shù)組”行地址”和”列地址”,就可以選出一個(gè)”儲(chǔ)存單元”。常見的儲(chǔ)存單元包含了 4 bit 或 8 bit,每一個(gè) bit 都會(huì)采用一個(gè)電路結(jié)構(gòu),我們稱為 DRAM 的一個(gè)”基本儲(chǔ)存單元”。
這個(gè)基本儲(chǔ)存單元中包含了一個(gè)晶體管匹配一個(gè)電容。然后就可以視電容器是否有充電電荷存在、來(lái)判別目前的記憶狀態(tài)。
“寫入內(nèi)存”的動(dòng)作,就是由外部的數(shù)據(jù)線、對(duì)電容進(jìn)行充電或放電,從而完成寫入 1 或 0 的數(shù)字?jǐn)?shù)據(jù)。
DRAM 使用一個(gè)晶體管(MOS)與一個(gè)電容來(lái)儲(chǔ)存一個(gè)位的資料(一個(gè) 0 或一個(gè) 1),如圖四(a)所示,當(dāng)晶體管(MOS)不導(dǎo)通時(shí)沒(méi)有電子流過(guò),電容沒(méi)有電荷,代表這一個(gè)位的資料是 0,如圖四(b)所示;當(dāng)晶體管(MOS)導(dǎo)通時(shí)(在閘極施加正電壓),電子會(huì)由源極流向汲極,電容有電荷,代表這一個(gè)位的資料是 1,為了要將這些流過(guò)來(lái)的電荷“儲(chǔ)存起來(lái)”,因此必須使用一個(gè)微小的電容,如圖四(c)所示,DRAM 就是因?yàn)殡娙菪枰獣r(shí)間充電,所以速度比 SRAM 還慢。
由于電容會(huì)有漏電的現(xiàn)象,導(dǎo)致電位差不足而使記憶消失,因此除非電容經(jīng)常周期性地充電,否則無(wú)法確保數(shù)據(jù)能長(zhǎng)久保存起來(lái)。
由于每個(gè) DRAM 基本儲(chǔ)存單元的電路結(jié)構(gòu)非常的簡(jiǎn)單,所以功耗低、價(jià)格也較低。這樣一來(lái)用低成本就能制造出大儲(chǔ)存容量的 DRAM 芯片。缺點(diǎn)就是讀寫的速度慢(電容要充電放電),影響了 DRAM 的性能。
SRAM 的結(jié)構(gòu)則較為復(fù)雜,一共有六個(gè)晶體管構(gòu)成。我們能分別用 M1、M2、M3 到 M6 進(jìn)行標(biāo)記。這六個(gè)晶體管合起來(lái)才能保存一個(gè) bit。
SRAM 芯片和 DRAM 芯片不太一樣,不需要分成行地址和列地址分別選擇,而且 SRAM 的設(shè)計(jì)相對(duì)來(lái)說(shuō)又更加靈活,一個(gè)地址對(duì)應(yīng)的儲(chǔ)存單元數(shù)量可以是 8 bit、10 bit,或 32 bit、40 bit、64 bit 都行。
另外,晶體管的開關(guān)速度遠(yuǎn)比電容充電放電的速度還快,所以相對(duì)于 DRAM、SRAM 的讀寫速度比 DRAM 快很多。
然而 SRAM 中要儲(chǔ)存一個(gè) bit 就得用到六個(gè)晶體管。晶體管的數(shù)量一多、就會(huì)造成芯片的面積變大,從而帶來(lái)集成電路難以變得更小、還有價(jià)格更貴的問(wèn)題。
(SRAM 的價(jià)格比起 DRMA 要高達(dá) 1000 倍以上。比如 2010 年世代––—SRAM 的每單位儲(chǔ)存價(jià)格是 $60/MB,DRAM 則是 $0.06/MB。)
同時(shí)每個(gè)晶體管都要耗電,晶體管越多、功耗就越高。考慮到價(jià)格高和功耗大,目前只能在一些很嚴(yán)苛的地方來(lái)使用 SRAM,比如上面提到的快取 (Cache)。
故目前”主存儲(chǔ)器”還是使用 DRAM 技術(shù),但小塊用來(lái)拉速度的”快取”就是采用 SRAM。然而無(wú)論是 DRAM 還是 SRAM,一不供應(yīng)電源就會(huì)喪失儲(chǔ)存的數(shù)據(jù),所以都叫做揮發(fā)性內(nèi)存。
鐵電隨機(jī)存取存儲(chǔ)器 FRAM
動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)是以一個(gè)晶體管加上一個(gè)電容來(lái)儲(chǔ)存一個(gè)位(1bit)的資料,由于傳統(tǒng) DRAM 的電容都是使用“氧化矽”做為絕緣體,氧化矽的介電常數(shù)不夠大(K 值不夠大),因此不容易吸引(儲(chǔ)存)電子與電洞,造成必須不停地補(bǔ)充電子與電洞,所以稱為“動(dòng)態(tài)”,只要電腦的電源關(guān)閉,電容所儲(chǔ)存的電子與電洞就會(huì)流失,DRAM 所儲(chǔ)存的資料也就會(huì)流失。
要解決這個(gè)問(wèn)題,最簡(jiǎn)單的就是使用介電常數(shù)夠大(K 值夠大)的材料來(lái)取代“氧化矽”為絕緣體,讓電子與電洞可以儲(chǔ)存在電容里不會(huì)流失。目前業(yè)界使用“鈦鋯酸鉛”(PZT)或“鉭鉍酸鍶”(SBT)這種介電常數(shù)很大(K 值很大)的“鐵電材料”(Ferroelectric material)來(lái)取代氧化矽,則可以儲(chǔ)存電子與電洞不會(huì)流失,讓原本“易失性”的動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)變成“非易失性”的存儲(chǔ)器稱為“鐵電隨機(jī)存取存儲(chǔ)器”(Ferroelectric RAM,F(xiàn)RAM)。
NAND Flash 又是什么呢?
繼續(xù)講講非易失性的部分:
Flash(閃存)由于具備了重量輕、體積小、功率低等優(yōu)點(diǎn),被應(yīng)用在各類電子產(chǎn)品的硬盤上。Flash 又可以分成 NOR 型 Flash 和 NAND 型 Flash。
NOR Flash 比 NAND Flash 更早導(dǎo)入市場(chǎng)。讀取的速度較快,但寫入的速度慢、價(jià)格也比 NAND Flash 貴。
目前用來(lái)儲(chǔ)存操作系統(tǒng)的程序代碼或重要數(shù)據(jù),比如拿來(lái)做 ROM。像是生產(chǎn) NOR Flash 的臺(tái)廠旺宏就是因?yàn)榇蛉肴翁焯?Switch 主機(jī)的 ROM 供應(yīng)鏈,今年?duì)I收上看攀升。
NAND Flash 寫入的速度快、價(jià)格較低,故目前以 NAND Flash 最為普遍。現(xiàn)在的 USB 硬盤和手機(jī)儲(chǔ)存空間,就是用 NAND Flash 為主流技術(shù)。
另外,固態(tài)硬盤(Solid State Drive, SSD)也是以 NAND 型 Flash 為基礎(chǔ)所建構(gòu)的儲(chǔ)存裝置。SSD 不像傳統(tǒng)硬盤(HDD)中有馬達(dá)、讀寫臂等零件。速度慢、功耗高,對(duì)震動(dòng)又相當(dāng)敏感,很難用在小型行動(dòng)裝置中。
SSD 在讀寫數(shù)據(jù)時(shí)不會(huì)有噪音,耐震、傳輸速度快、重量又能縮減到 HDD 十分之一以上,現(xiàn)在已經(jīng)成為個(gè)人計(jì)算機(jī)和筆記本電腦的主流儲(chǔ)存設(shè)備。
總結(jié):
依照停止供應(yīng)電源的話、是否還能保留數(shù)據(jù),分成”易失性”與”非易失性”存儲(chǔ)。
易失性存儲(chǔ)分成 DRAM 和 SRAM。
SRAM 更快但價(jià)格更貴,所以主存儲(chǔ)器多用 DRAM、快取多用 SRAM。
非易失性存儲(chǔ)分成 ROM 和 Flash。主要用來(lái)作為硬盤。
Flash 又分成 NOR Flash 與 NAND Flash,現(xiàn)在硬盤多以 NAND Flash 構(gòu)成的 SSD 為主。
-
存儲(chǔ)器
+關(guān)注
關(guān)注
38文章
7509瀏覽量
163971 -
cpu
+關(guān)注
關(guān)注
68文章
10874瀏覽量
212109 -
計(jì)算機(jī)
+關(guān)注
關(guān)注
19文章
7513瀏覽量
88166
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論