ROM、RAM、DRAM、SRAM和FLASH的区别
▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼
分享一個大神朋友的人工智能教程。零基礎(chǔ)!通俗易懂!風(fēng)趣幽默!還帶黃段子!希望你也加入到人工智能的隊(duì)伍中來!點(diǎn)擊瀏覽教程。寫得特別用心喔~→→→→→→大神朋友簡介:從事十幾年人工智能研究,**麻省理工博士學(xué)位**,目前在百度繼續(xù)進(jìn)行著人工智能的研究。。。
 ▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲
ROM和RAM指的都是半導(dǎo)體存儲器,ROM在系統(tǒng)停止供電的時(shí)候仍然可以保持?jǐn)?shù)據(jù),而RAM通常都是在掉電之后就丟失數(shù)據(jù),典型的RAM就是計(jì)算機(jī)的內(nèi)存。
?
RAM有兩大類,一種稱為靜態(tài)RAM(Static RAM/SRAM),SRAM速度非???/strong>,是目前讀寫最快的存儲設(shè)備了,但是它也非常昂貴,所以只在要求很苛刻的地方使用,譬如CPU的一級緩沖,二級緩沖。另一種稱為動態(tài)RAM(Dynamic RAM/DRAM),DRAM保留數(shù)據(jù)的時(shí)間很短,速度也比SRAM慢,不過它還是比任何的ROM都要快,但從價(jià)格上來說DRAM相比SRAM要便宜很多,計(jì)算機(jī)內(nèi)存就是DRAM的。
?
DRAM分為很多種,常見的主要有FPRAM/FastPage、EDORAM、SDRAM、DDR RAM、RDRAM、SGRAM以及WRAM等,這里介紹其中的一種DDR RAM。
?
DDR RAM(Date-Rate RAM)也稱作DDR SDRAM,這種改進(jìn)型的RAM和SDRAM是基本一樣的,不同之處在于它可以在一個時(shí)鐘讀寫兩次數(shù)據(jù),這樣就使得數(shù)據(jù)傳輸速度加倍了。這是目前電腦中用得最多的內(nèi)存。在很多高端的顯卡上,也配備了高速DDR RAM來提高帶寬,這可以大幅度提高3D加速卡的像素渲染能力。
?
內(nèi)存工作原理:
?
內(nèi)存是用來存放當(dāng)前正在使用的(即執(zhí)行中)的數(shù)據(jù)和程序,我們平常所提到的計(jì)算機(jī)的內(nèi)存指的是動態(tài)內(nèi)存(即DRAM),動態(tài)內(nèi)存中所謂的"動態(tài)",指的是當(dāng)我們將數(shù)據(jù)寫入DRAM后,經(jīng)過一段時(shí)間,數(shù)據(jù)會丟失,因此需要一個額外設(shè)電路進(jìn)行內(nèi)存刷新操作。
?
具體的工作過程是這樣的:一個DRAM的存儲單元存儲的是0還是1取決于電容是否有電荷,有電荷代表1,無電荷代表0。但時(shí)間一長,代表1的電容會放電,代表0的電容會吸收電荷,這就是數(shù)據(jù)丟失的原因;刷新操作定期對電容進(jìn)行檢查,若電量大于滿電量的1/2,則認(rèn)為其代表1,并把電容充滿電;若電量小于1/2,則認(rèn)為其代表0,并把電容放電,藉此來保持?jǐn)?shù)據(jù)的連續(xù)性。
?
ROM也有很多種,PROM是可編程的ROM,PROM和EPROM(可擦除可編程ROM)兩者區(qū)別是,PROM是一次性的,也就是軟件灌入后,就無法修改了,這種是早期的產(chǎn)品,現(xiàn)在已經(jīng)不可能使用了,而EPROM是通過紫外光的照射擦出原先的程序,是一種通用的存儲器。另外一種EEPROM是通過電子擦出,價(jià)格很高,寫入時(shí)間很長,寫入很慢。
?
舉個例子,手機(jī)軟件一般放在EEPROM中,我們打電話,有些最后撥打的號碼,暫時(shí)是存在SRAM中的,不是馬上寫入通訊記錄(通話記錄保存在EEPROM中),因?yàn)楫?dāng)時(shí)有很重要工作(通話)要做,如果寫入,漫長的等待是讓用戶忍無可忍的。
?
PSRAM,假靜態(tài)隨機(jī)存儲器。
?
基本原理:
?
PSRAM就是偽SRAM,內(nèi)部的內(nèi)存顆粒跟SDRAM的顆粒相似,但外部的接口跟SRAM相似,不需要SDRAM那樣復(fù)雜的控制器和刷新機(jī)制,PSRAM的接口跟SRAM的接口是一樣的。
?
PSRAM容量有8Mbit,16Mbit,32Mbit等等,容量沒有SDRAM那樣密度高,但肯定是比SRAM的容量要高很多的,速度支持突發(fā)模式,并不是很慢,Hynix,Coremagic, WINBOND .MICRON. CY?等廠家都有供應(yīng),價(jià)格只比相同容量的SDRAM稍貴一點(diǎn)點(diǎn),比SRAM便宜很多。
?
PSRAM主要應(yīng)用于手機(jī),電子詞典,掌上電腦,PDA,PMP.MP3/4,GPS接收器等消費(fèi)電子產(chǎn)品與SRAM(采用6T的技術(shù))相比,PSRAM采用的是1T+1C的技術(shù),所以在體積上更小,同時(shí),PSRAM的I/O接口與SRAM相同.在容量上,目前有4MB,8MB,16MB,32MB,64MB和128MB。比較于SDRAM,PSRAM的功耗要低很多。所以對于要求有一定緩存容量的很多便攜式產(chǎn)品是一個理想的選擇。
?
===================================================
FLASH存儲器又稱閃存,它結(jié)合了ROM和RAM的長處,不僅具備電子可擦除可編程(EEPROM)的性能,還不會斷電丟失數(shù)據(jù)同時(shí)可以快速讀取數(shù)據(jù)(NVRAM的優(yōu)勢),U盤和MP3里用的就是這種存儲器。在過去的20年里,嵌入式系統(tǒng)一直使用ROM(EPROM)作為它們的存儲設(shè)備,然而近年來Flash全面代替了ROM(EPROM)在嵌入式系統(tǒng)中的地位,它用作存儲Bootloader以及操作系統(tǒng)或者程序代碼,或者直接當(dāng)硬盤使用(U盤)。
?
目前Flash主要有NOR Flash和NADN Flash。
?
一、類型理解
 ? ?分為NOR(或非)??NAND(與非)
 二、接口理解
 ??NOR(或非)----地址、數(shù)據(jù)總線分開;
 ??NAND(與非)----地址、數(shù)據(jù)總線共用。
 三、讀寫單位:
 ??NOR(或非)----字節(jié);?
 ??NAND(與非)----頁。
 四、組成結(jié)構(gòu):
 ? ?NOR(或非)----扇區(qū)、字節(jié);
 ? ?NAND(與非)----塊、頁;
 五、擦除單位:
 ? ?NOR(或非)----扇區(qū);
 ? ?NAND(與非)----塊;
?
NOR Flash的讀取和我們常見的SDRAM的讀取是一樣,用戶可以直接運(yùn)行裝載在NOR FLASH里面的代碼,這樣可以減少SRAM的容量從而節(jié)約了成本。
?
NAND Flash沒有采取內(nèi)存的隨機(jī)讀取技術(shù),它的讀取是以一次讀取一塊的形式來進(jìn)行的,通常是一次讀取512個字節(jié),采用這種技術(shù)的Flash比較廉價(jià)。用戶不能直接運(yùn)行NAND Flash上的代碼,因此好多使用NAND Flash的開發(fā)板除了使用NAND Flah以外,還加上了一塊小的NOR Flash來運(yùn)行啟動代碼。
?
一般小容量的用NOR Flash,因?yàn)槠渥x取速度快,多用來存儲操作系統(tǒng)等重要信息,而大容量的用NAND FLASH,最常見的NAND FLASH應(yīng)用是嵌入式系統(tǒng)采用的DOC(Disk On Chip)和我們通常用的"閃盤",可以在線擦除。目前市面上的FLASH主要來自Intel,AMD,Fujitsu和Toshiba,而生產(chǎn)NAND Flash的主要廠家有Samsung和Toshiba。
===================================================================
NAND Flash和NOR Flash的比較
?
NOR和NAND是現(xiàn)在市場上兩種主要的非易失閃存技術(shù)。Intel于1988年首先開發(fā)出NOR flash技術(shù),徹底改變了原先由EPROM和EEPROM一統(tǒng)天下的局面。緊接著,1989年,東芝公司發(fā)表了NAND flash結(jié)構(gòu),強(qiáng)調(diào)降低每比特的成本,更高的性能,并且象磁盤一樣可以通過接口輕松升級。
?
大多數(shù)情況下閃存只是用來存儲少量的代碼,這時(shí)NOR閃存更適合一些。而NAND則是高數(shù)據(jù)存儲密度的理想解決方案。
?
NOR一般只用來存儲少量的代碼;NOR主要應(yīng)用在代碼存儲介質(zhì)中。NOR的特點(diǎn)是應(yīng)用簡單、無需專門的接口電路、傳輸效率高,它是屬于芯片內(nèi)執(zhí)行(XIP, eXecute In Place),這樣應(yīng)用程序可以直接在(NOR型)flash閃存內(nèi)運(yùn)行,不必再把代碼讀到系統(tǒng)RAM中。但是很低的寫入和擦除速度大大影響了它的性能。NOR flash帶有SRAM接口,有足夠的地址引腳來尋址,可以很容易地存取其內(nèi)部的每一個字節(jié)。NOR flash占據(jù)了容量為1~16MB閃存市場的大部分。
?
NAND結(jié)構(gòu)能提供極高的單元密度,可以達(dá)到高存儲密度,并且寫入和擦除的速度也很快。應(yīng)用NAND的困難在于nand flash的管理需要特殊的系統(tǒng)接口。
?
1、性能比較:
?
任何flash器件的寫入操作只能在空或已擦除的單元內(nèi)進(jìn)行,所以大多數(shù)情況下,在進(jìn)行寫入操作之前必須先執(zhí)行擦除。NAND器件執(zhí)行擦除操作是十分簡單的,而NOR則要求在進(jìn)行擦除前先要將目標(biāo)塊內(nèi)所有的位都寫為1。
?
由于擦除NOR器件時(shí)是以64~128KB的塊進(jìn)行的,執(zhí)行一個寫入/擦除操作的時(shí)間為5s,與此相反,擦除NAND器件是以8~32KB的塊進(jìn)行的,執(zhí)行相同的操作最多只需要4ms。
?
NOR的讀速度比NAND稍快一些。
NAND的寫入速度比NOR快很多。
NAND的4ms擦除速度遠(yuǎn)比NOR的5s快。
大多數(shù)寫入操作需要先進(jìn)行擦除操作。
NAND的擦除單元更小,相應(yīng)的擦除電路更少。
(注:NOR FLASH SECTOR擦除時(shí)間視品牌、大小不同而不同,比如,4M FLASH,有的SECTOR擦除時(shí)間為60ms,而有的需要最大6s。)
?
2、接口差別:
?
NOR flash帶有SRAM接口,有足夠的地址引腳來尋址,可以很容易地存取其內(nèi)部的每一個字節(jié)。
NAND器件使用復(fù)雜的I/O口來串行地存取數(shù)據(jù),各個產(chǎn)品或廠商的方法可能各不相同。8個引腳用來傳送控制、地址和數(shù)據(jù)信息。
NAND讀和寫操作采用512字節(jié)的塊,這一點(diǎn)有點(diǎn)像硬盤管理此類操作,很自然地,基于NAND的存儲器就可以取代硬盤或其他塊設(shè)備。
?
3、容量和成本:
?
NAND flash的單元尺寸幾乎是NOR器件的一半,由于生產(chǎn)過程更為簡單,NAND結(jié)構(gòu)可以在給定的模具尺寸內(nèi)提供更高的容量,也就相應(yīng)地降低了價(jià)格。
NOR flash占據(jù)了容量為1~16MB閃存市場的大部分,而NAND flash只是用在8~128MB的產(chǎn)品當(dāng)中,這也說明NOR主要應(yīng)用在代碼存儲介質(zhì)中,NAND適合于數(shù)據(jù)存儲。
?
4、可靠性和耐用性:
?
可以從壽命(耐用性)、位交換和壞塊處理三個方面來比較NOR和NAND的可靠性。
?
A)壽命(耐用性)
?
在NAND閃存中每個塊的最大擦寫次數(shù)是一百萬次,而NOR的擦寫次數(shù)是十萬次。NAND存儲器除了具有10比1的塊擦除周期優(yōu)勢,典型的NAND塊尺寸要比NOR器件小8倍,每個NAND存儲器塊在給定的時(shí)間內(nèi)的刪除次數(shù)要少一些。
?
B)位交換
?
所有flash器件都受位交換現(xiàn)象的困擾。在某些情況下(很少見,NAND發(fā)生的次數(shù)要比NOR多),一個比特(bit)位會發(fā)生反轉(zhuǎn)或被報(bào)告反轉(zhuǎn)了。
一位的變化可能不很明顯,但是如果發(fā)生在一個關(guān)鍵文件上,這個小小的故障可能導(dǎo)致系統(tǒng)停機(jī)。如果只是報(bào)告有問題,多讀幾次就可能解決了。
當(dāng)然,如果這個位真的改變了,就必須采用錯誤探測/錯誤更正(EDC/ECC)算法。位反轉(zhuǎn)的問題更多見于NAND閃存,NAND的供應(yīng)商建議使用NAND閃存的時(shí)候,同時(shí)使用EDC/ECC算法。
這個問題對于用NAND存儲多媒體信息時(shí)倒不是致命的。當(dāng)然,如果用本地存儲設(shè)備來存儲操作系統(tǒng)、配置文件或其他敏感信息時(shí),必須使用EDC/ECC系統(tǒng)以確保可靠性。
?
C)壞塊處理
?
NAND器件需要對介質(zhì)進(jìn)行初始化掃描以發(fā)現(xiàn)壞塊,并將壞塊標(biāo)記為不可用。在已制成的器件中,如果通過可靠的方法不能進(jìn)行這項(xiàng)處理,將導(dǎo)致高故障率。
?
5、易于使用:
?
可以非常直接地使用基于NOR的閃存,可以像其他存儲器那樣連接,并可以在上面直接運(yùn)行代碼。
由于nandflash需要I/O接口,所以要復(fù)雜得多。各種NAND器件的存取方法因廠家而異。
在使用NAND器件時(shí),必須先寫入驅(qū)動程序,才能繼續(xù)執(zhí)行其他操作。向NAND器件寫入信息需要相當(dāng)?shù)募记?#xff0c;因?yàn)?strong>設(shè)計(jì)師絕不能向壞塊寫入,這就意味著在NAND器件上自始至終都必須進(jìn)行虛擬映射。
?
6、軟件支持:
?
在NOR器件上運(yùn)行代碼不需要任何的軟件支持,在NAND器件上進(jìn)行執(zhí)行操作時(shí),通常需要?驅(qū)動程序,也就是內(nèi)存技術(shù)驅(qū)動程序(MTD),NAND和NOR器件在進(jìn)行寫入和擦除操作時(shí)都需要MTD。
使用NOR器件時(shí)所需要的MTD要相對少一些。驅(qū)動還用于對DiskOnChip產(chǎn)品進(jìn)行仿真和NAND閃存的管理,包括糾錯、壞塊處理和損耗平衡。
?
NOR FLASH的主要供應(yīng)商是INTEL ,MICRO等廠商,曾經(jīng)是FLASH的主流產(chǎn)品,但現(xiàn)在被NAND FLASH擠的比較難受。NOR的優(yōu)點(diǎn)是可以直接從FLASH中運(yùn)行程序,缺點(diǎn)是工藝復(fù)雜,價(jià)格比較貴。
?
NAND FLASH的主要供應(yīng)商是SAMSUNG和東芝,在U盤、各種存儲卡、MP3播放器里面的都是這種FLASH,由于工藝上的不同,Nand flash比NOR FLASH擁有更大存儲容量,而且便宜。但也有缺點(diǎn),就是無法尋址和直接運(yùn)行程序,只能存儲數(shù)據(jù)。另外NAND FLASH非常容易出現(xiàn)壞區(qū),所以需要有校驗(yàn)的算法。
?
在掌上電腦里要使用NAND FLASH存儲數(shù)據(jù)和程序,但是必須有NOR FLASH來啟動。除了SAMSUNG處理器支持nand?flash啟動程序,其他用在掌上電腦的主流處理器還不支持直接由NAND FLASH啟動程序。因此,必須先用一片小的NOR FLASH?啟動機(jī)器,在把OS等軟件從NAND FLASH載入SDRAM中運(yùn)行才行,挺麻煩的。
?
7、尋址:
NAND每次讀取數(shù)據(jù)時(shí)都是指定塊地址、頁地址、列地址,列地址就是讀的頁內(nèi)起始地址,每次都是先將數(shù)據(jù)讀入頁緩沖區(qū)內(nèi),再 由I/O輸入地址 在緩沖區(qū)內(nèi)尋址,其實(shí)這里列地址,只是指定起始地址的作用。NAND是?以頁?為基本單位 操作的。寫入數(shù)據(jù)也是首先在頁面緩沖區(qū)內(nèi)緩沖,數(shù)據(jù)首先寫入這里,再寫命令后,再統(tǒng)一寫入頁內(nèi)。因此NAND頁緩沖區(qū)的作用就是,保證芯片的按頁的讀、寫操作,是I/O操作與芯片操作的接口、橋梁,因?yàn)閿?shù)據(jù)是從I/O輸入的,又是每次一個字節(jié),因此需要緩沖。即使每次改寫一個字節(jié),都要重寫整個頁,因?yàn)樗恢С?/span>頁寫,而且如果頁內(nèi)有未擦除的部分,則無法編程,在寫入前必須保證頁是空的。
 NOR的?讀、寫?是字節(jié)為基本單位操作的,但擦除?是以扇區(qū)操作的。綜上所述在芯片操作上,NAND要比NOR快很多,因?yàn)镹AND是頁操作的而NOR是字節(jié)操作的。
 8、應(yīng)用:
 ? ?NAND 正是基于這種構(gòu)造:塊、頁,無法字節(jié)尋址,頁讀寫本身就靠的是內(nèi)部復(fù)雜的串、并行轉(zhuǎn)換 ,因此也沒有很多地址引腳,所以其地址、數(shù)據(jù)線共用,所以容量可以做的很大 。
 NOR 是和SRAM一樣的可隨機(jī)存儲的,也不需要驅(qū)動,因此,其地址就有限,所以容量普遍較小,其實(shí)是受限于地址線。
 ??基于以上幾點(diǎn),在工業(yè)領(lǐng)域,NOR 用的較多,特別是程序存儲,少量數(shù)據(jù)存儲等。
 ??在消費(fèi)領(lǐng)域,大量數(shù)據(jù)存儲,NAND較多。
?
?
存儲器局限性
?
閃存最關(guān)鍵的限制可能是寫/擦除周期數(shù)有限。多數(shù)商用基于快閃產(chǎn)品都保證能進(jìn)行高達(dá)100萬個寫周期。這一數(shù)字看起來似乎很大,對于NOR閃存,很可能是這樣,因?yàn)閷⒁粋€軟件或BIOS保存很長時(shí)間可能沒問題。不過,在典型的經(jīng)常進(jìn)行文件寫入、檢索和重寫的NAND應(yīng)用中,這些周期很快耗完,而大多數(shù)用戶可能不進(jìn)行計(jì)數(shù)。對于頻繁更新的關(guān)鍵數(shù)據(jù)的存儲,閃存可能不適合。
為應(yīng)對這種限制,可采用固件或文件系統(tǒng)驅(qū)動器,對存儲器寫的次數(shù)進(jìn)行逐次計(jì)數(shù)。這些軟件將動態(tài)地重新映射這些塊,在扇區(qū)間分享寫操作。換句話說,萬一寫操作失敗,軟件通過寫驗(yàn)證和重新映射向未使用的扇區(qū)授權(quán)寫操作。
像RAM一樣,閃存可以一個字節(jié)或一個字一次進(jìn)行讀或編程,但擦除必須是一次進(jìn)行一個完整的塊,將塊中的所有位重新置位為1。這意味著需要花更多時(shí)間進(jìn)行編程。例如,如果將一位(0)寫入一個塊,要對該塊重新編程,就必須完全擦除此塊,而不是僅僅重寫該位。
?
=========================================================================
?
?
DRAM利用MOS管的柵電容上的電荷來存儲信息,一旦掉電信息會全部的丟失,由于柵極會漏電,所以每隔一定的時(shí)間就需要一個刷新機(jī)構(gòu)給這些柵電容補(bǔ)充電荷,并且每讀出一次數(shù)據(jù)之后也需要補(bǔ)充電荷,這個就叫動態(tài)刷新,所以稱其為動態(tài)隨機(jī)存儲器。由于它只使用一個MOS管來存信息,所以集成度可以很高,容量能夠做的很大。SDRAM比它多了一個與CPU時(shí)鐘同步。
?
SRAM利用寄存器來存儲信息,所以一旦掉電,資料就會全部丟失,只要供電,它的資料就會一直存在,不需要動態(tài)刷新,所以叫靜態(tài)隨機(jī)存儲器。
?
以上主要用于系統(tǒng)內(nèi)存儲器,容量大,不需要斷電后仍保存數(shù)據(jù)的。
?
Flash ROM是利用浮置柵上的電容存儲電荷來保存信息,因?yàn)?strong>浮置柵不會漏電,所以斷電后信息仍然可以保存。也由于其機(jī)構(gòu)簡單所以集成度可以做的很高,容量可以很大。Flash rom寫入前需要用電進(jìn)行擦除,而且擦除不同與EEPROM可以以byte(字節(jié))為單位進(jìn)行,flash rom只能以sector(扇區(qū))為單位進(jìn)行。不過其寫入時(shí)可以byte為單位。flash rom主要用于bios,U盤,Mp3等需要大容量且斷電不丟數(shù)據(jù)的設(shè)備
?
總結(jié)
以上是生活随笔為你收集整理的ROM、RAM、DRAM、SRAM和FLASH的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: SRAM,SDRAM,DRAM,ROM,
- 下一篇: 初识网络的简单概念
