《電子技術(shù)應用》
您所在的位置:首頁 > 其他 > 業(yè)界動態(tài) > 一文讀懂RAM、ROM、SRAM、DRAM、SDRAM等內(nèi)存概念

一文讀懂RAM、ROM、SRAM、DRAM、SDRAM等內(nèi)存概念

2020-10-09
來源:芯路芯語
關(guān)鍵詞: ROM RAM

  ROMRAM指的都是半導體存儲器

  ROM在系統(tǒng)停止供電的時候仍然可以保持數(shù)據(jù)

  RAM通常都是在掉電之后就丟失數(shù)據(jù),典型的就是計算機的內(nèi)存。

  一、ROM也有很多種:PROM(可編程的ROM)、EPROM(可擦除可編程ROM)、EEPROM

  1、PROM是一次性的,早期的產(chǎn)品,現(xiàn)在已經(jīng)不可能使用了;

  2、EPROM是通過紫外光的照射擦出原先的程序,是一種通用的存儲器;

  3、EEPROM是通過電子擦出,價格很高,寫入時間很長,寫入很慢;

  舉個例子,手機軟件一般放在EEPROM中,我們打電話,有些最后撥打的號碼,暫時是存在SRAM中的,不是馬上寫入通訊記錄(通話記錄保存在EEPROM中),因為當時有很重要工作(通話)要做,如果寫入,漫長的等待是讓用戶忍無可忍的。

  二、RAM有兩大類:靜態(tài)RAM(StaticRAM/SRAM)和動態(tài)RAM(Dynamic RAM/DRAM)

  1、SRAM

  不需要刷新電路,掉電丟失數(shù)據(jù),而且一般不是行列地址復用的。

  集成度比較低,不適合做容量大的內(nèi)存,一般是用在處理器的緩存里面。像S3C2440的ARM9處理器里面就有4K的SRAM用來做CPU啟動時用的;

  SRAM內(nèi)部采用的是雙穩(wěn)態(tài)電路的形式來存儲數(shù)據(jù);

  制造相同容量的SRAM比DRAM的成本高的多;

  因此目前SRAM基本上只用于CPU內(nèi)部的一級緩存以及內(nèi)置的二級緩存。僅有少量的網(wǎng)絡服務器以及路由器上能夠使用SRAM。

  2、DRAM

  掉電丟失數(shù)據(jù)。每隔一段時間就要刷新一次數(shù)據(jù),才能保存數(shù)據(jù)。而且是行列地址復用的,許多都有頁模式。DRAM利用MOS管的柵電容上的電荷來存儲信息,一旦掉電信息會全部的丟失,由于柵極會漏電,所以每隔一定的時間就需要一個刷新機構(gòu)給這些柵電容補充電荷,并且每讀出一次數(shù)據(jù)之后也需要補充電荷,這個就叫動態(tài)刷新,所以稱其為動態(tài)隨機存儲器。由于它只使用一個MOS管來存信息,所以集成度可以很高,容量能夠做的很大。SDRAM比它多了一個與CPU時鐘同步。

  DRAM保留數(shù)據(jù)的時間很短,速度也比SRAM慢,不過它還是比任何的ROM都要快;

  從價格上來說DRAM相比SRAM要便宜很多,計算機內(nèi)存就是DRAM的;

  DRAM分為很多種,常見的主要有FPRAM/FastPage、EDORAM、SDRAM、DDR RAM、RDRAM、SGRAM以及WRAM等,這里介紹其中的一種DDR RAM。

  一個DRAM的存儲單元存儲的是0還是1取決于電容是否有電荷,有電荷代表1,無電荷代表0。但時間一長,代表1的電容會放電,代表0的電容會吸收電荷,這就是數(shù)據(jù)丟失的原因;刷新操作定期對電容進行檢查,若電量大于滿電量的1/2,則認為其代表1,并把電容充滿電;若電量小于1/2,則認為其代表0,并把電容放電,藉此來保持數(shù)據(jù)的連續(xù)性。

  2.1、DDR RAM(Data-Rate RAM)也稱作DDR SDRAM

  這種改進型的RAM和SDRAM是基本一樣的,不同之處在于它可以在一個時鐘讀寫兩次數(shù)據(jù),這樣就使得數(shù)據(jù)傳輸速度加倍了。這是目前電腦中用得最多的內(nèi)存。在很多高端的顯卡上,也配備了高速DDR RAM來提高帶寬,這可以大幅度提高3D加速卡的像素渲染能力。

  2.2、SDRAM(Synchronous DRAM,同步動態(tài)隨機存儲器)

  即數(shù)據(jù)的讀寫需要時鐘來同步。

  其存儲單元不是按線性排列的,是分頁的。

  DRAM和SDRAM由于實現(xiàn)工藝問題,容量較SRAM大。但是讀寫速度不如SRAM。

  一般的嵌入式產(chǎn)品里面的內(nèi)存都是用的SDRAM。

  三、Flash(閃存)

  它結(jié)合了ROM和RAM的長處,不僅具備電子可擦除可編程(EEPROM)的性能,還不會斷電丟失數(shù)據(jù)同時可以快速讀取數(shù)據(jù)(NVRAM的優(yōu)勢),U盤和MP3里用的就是這種存儲器。

  在過去的20年里,嵌入式系統(tǒng)一直使用ROM(EPROM)作為它們的存儲設備,然而近年來Flash全面代替了ROM(EPROM)在嵌入式系統(tǒng)中的地位,它用作存儲Bootloader以及操作系統(tǒng)或者程序代碼,或者直接當硬盤使用(U盤)。

  采用的并行接口,有獨立的地址線和數(shù)據(jù)線,性能特點更像內(nèi)存,是芯片內(nèi)執(zhí)行(XIP, eXecute In Place),這樣應用程序可以直接在flash閃存內(nèi)運行,不必再把代碼讀到系統(tǒng)RAM中。

  NAND采用的是串行的接口,地址線和數(shù)據(jù)線是共用的I/O線,類似電腦硬盤。CPU從里面讀取數(shù)據(jù)的速度很慢,所以一般用NAND做閃存的話就必須把NAND里面的數(shù)據(jù)先讀到內(nèi)存里面,然后CPU才能夠執(zhí)行。無法尋址和直接運行程序,只能存儲數(shù)據(jù)。另外NAND FLASH非常容易出現(xiàn)壞區(qū),所以需要有校驗的算法。

  NOR Flash:用戶可以直接運行裝載在NOR FLASH里面的代碼

  目前Flash主要有NOR Flash和NADN Flash

  1、類型

  分為NOR(或非)、 NAND(與非)

  2、接口理解

  NOR(或非)----地址、數(shù)據(jù)總線分開;

  NAND(與非)----地址、數(shù)據(jù)總線共用。

  3、讀寫單位:

  NOR(或非)----字節(jié);

  NAND(與非)----頁

  4、組成結(jié)構(gòu):

  NOR(或非)----扇區(qū)、字節(jié);

  NAND(與非)----塊、頁;

  5、擦除單位:

  NOR(或非)----扇區(qū);

  NAND(與非)----塊;

  6、讀寫擦除速度

  NOR的讀速度比NAND稍快一些。

  NAND的寫入/擦除速度比NOR快很多。

  flash閃存是非易失存儲器,可以對稱為塊的存儲器單元塊進行擦寫和再編程。任何flash器件的寫入操作只能在空或已擦除的單元內(nèi)進行,所以大多數(shù)情況下,在進行寫入操作之前必須先執(zhí)行擦除。NAND器件執(zhí)行擦除操作是十分簡單的,而NOR則要求在進行擦除前先要將目標塊內(nèi)所有的位都寫為0。由于擦除NOR器件時是以64~128KB的塊進行的,執(zhí)行一個寫入/擦除操作的時間為5s,與此相反,擦除NAND器件是以8~32KB的塊進行的,執(zhí)行相同的操作最多只需要4ms。

  NAND的擦除單元更小,相應的擦除電路更少。

  (注:NOR FLASH SECTOR擦除時間視品牌、大小不同而不同,比如,4M FLASH,有的SECTOR擦除時間為60ms,而有的需要最大6s。)

  7、容量

  NOR flash占據(jù)了容量為1~16MB閃存市場的大部分

  NAND flash只是用在8~128MB的產(chǎn)品當中,這也說明NOR主要應用在代碼存儲介質(zhì)中,NAND適合于數(shù)據(jù)存儲

  8、可靠性和耐用性:

  可以從壽命(耐用性)、位交換和壞塊處理三個方面來比較NOR和NAND的可靠性。

  A)壽命(耐用性)

  在NAND閃存中每個塊的最大擦寫次數(shù)是一百萬次,而NOR的擦寫次數(shù)是十萬次。

  NAND存儲器除了具有10比1的塊擦除周期優(yōu)勢,典型的NAND塊尺寸要比NOR器件小8倍,每個NAND存儲器塊在給定的時間內(nèi)的刪除次數(shù)要少一些。

  B)位交換

  所有flash器件都受位交換現(xiàn)象的困擾。在某些情況下(很少見,NAND發(fā)生的次數(shù)要比NOR多),一個比特(bit)位會發(fā)生反轉(zhuǎn)或被報告反轉(zhuǎn)了。

  一位的變化可能不很明顯,但是如果發(fā)生在一個關(guān)鍵文件上,這個小小的故障可能導致系統(tǒng)停機。如果只是報告有問題,多讀幾次就可能解決了。

  當然,如果這個位真的改變了,就必須采用錯誤探測/錯誤更正(EDC/ECC)算法。位反轉(zhuǎn)的問題更多見于NAND閃存,NAND的供應商建議使用NAND閃存的時候,同時使用EDC/ECC算法。

  這個問題對于用NAND存儲多媒體信息時倒不是致命的。當然,如果用本地存儲設備來存儲操作系統(tǒng)、配置文件或其他敏感信息時,必須使用EDC/ECC系統(tǒng)以確??煽啃?。

  C)壞塊處理

  NAND器件需要對介質(zhì)進行初始化掃描以發(fā)現(xiàn)壞塊,并將壞塊標記為不可用。在已制成的器件中,如果通過可靠的方法不能進行這項處理,將導致高故障率。

  9、易于使用:

  基于NOR的閃存,可以像其他存儲器那樣連接,并可以在上面直接運行代碼。

  由于NANDLFASH需要I/O接口,所以要復雜得多。各種NAND器件的存取方法因廠家而異。

  在使用NAND器件時,必須先寫入驅(qū)動程序,才能繼續(xù)執(zhí)行其他操作。向NAND器件寫入信息需要相當?shù)募记桑驗樵O計師絕不能向壞塊寫入,這就意味著在NAND器件上自始至終都必須進行虛擬映射。

  10、軟件支持:

  在NOR器件上運行代碼不需要任何的軟件支持;

  在NAND器件上進行執(zhí)行操作時,通常需要 驅(qū)動程序,也就是內(nèi)存技術(shù)驅(qū)動程序(MTD);

  NAND和NOR器件在進行寫入和擦除操作時都需要MTD。

  11、尋址:

  NAND每次讀取數(shù)據(jù)時都是指定塊地址、頁地址、列地址,列地址就是讀的頁內(nèi)起始地址,每次都是先將數(shù)據(jù)讀入頁緩沖區(qū)內(nèi),再 由I/O輸入地址 在緩沖區(qū)內(nèi)尋址,其實這里列地址,只是指定起始地址的作用。NAND是以頁為基本單位 操作的。寫入數(shù)據(jù)也是首先在頁面緩沖區(qū)內(nèi)緩沖,數(shù)據(jù)首先寫入這里,再寫命令后,再統(tǒng)一寫入頁內(nèi)。因此NAND頁緩沖區(qū)的作用就是,保證芯片的按頁的讀、寫操作,是I/O操作與芯片操作的接口、橋梁,因為數(shù)據(jù)是從I/O輸入的,又是每次一個字節(jié),因此需要緩沖。即使每次改寫一個字節(jié),都要重寫整個頁,因為它只支持頁寫,而且如果頁內(nèi)有未擦除的部分,則無法編程,在寫入前必須保證頁是空的。

  NOR的 讀、寫是字節(jié)為基本單位操作的,但擦除是以扇區(qū)操作的。

  綜上所述在芯片操作上,NAND要比NOR快很多,因為NAND是頁操作的而NOR是字節(jié)操作的。

  12、應用:

  NAND 正是基于這種構(gòu)造:塊、頁,無法字節(jié)尋址,頁讀寫本身就靠的是內(nèi)部復雜的串、并行轉(zhuǎn)換 ,因此也沒有很多地址引腳,所以其地址、數(shù)據(jù)線共用,所以容量可以做的很大 。

  NOR 是和SRAM一樣的可隨機存儲的,也不需要驅(qū)動,因此,其地址就有限,所以容量普遍較小,其實是受限于地址線。

  基于以上幾點,在工業(yè)領(lǐng)域,NOR 用的較多,特別是程序存儲,少量數(shù)據(jù)存儲等。

  在消費領(lǐng)域,大量數(shù)據(jù)存儲,NAND較多。

  Flash ROM是利用浮置柵上的電容存儲電荷來保存信息,因為浮置柵不會漏電,所以斷電后信息仍然可以保存。也由于其機構(gòu)簡單所以集成度可以做的很高,容量可以很大。Flash rom寫入前需要用電進行擦除,而且擦除不同與EEPROM可以以byte(字節(jié))為單位進行,flash rom只能以sector(扇區(qū))為單位進行。不過其寫入時可以byte為單位。flash rom主要用于bios,U盤,Mp3等需要大容量且斷電不丟數(shù)據(jù)的設備

  存儲器局限性

  閃存最關(guān)鍵的限制可能是寫/擦除周期數(shù)有限。

  為應對這種限制,可采用固件或文件系統(tǒng)驅(qū)動器,對存儲器寫的次數(shù)進行逐次計數(shù)。這些軟件將動態(tài)地重新映射這些塊,在扇區(qū)間分享寫操作。換句話說,萬一寫操作失敗,軟件通過寫驗證和重新映射向未使用的扇區(qū)授權(quán)寫操作。

  像RAM一樣,閃存可以一個字節(jié)或一個字一次進行讀或編程,但擦除必須是一次進行一個完整的塊,將塊中的所有位重新置位為1。這意味著需要花更多時間進行編程。例如,如果將一位(0)寫入一個塊,要對該塊重新編程,就必須完全擦除此塊,而不是僅僅重寫該位。

 

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。