概述ROM、RAM是可讀與可讀可寫(xiě)存儲(chǔ)器的一種框架,DRAM、SRAM、SDRAM是基于RAM框架的一種實(shí)現(xiàn) 一、ROM1. 介紹ROM全拼是Read Only Memory(只讀存儲(chǔ)器),它是只讀的,一旦出廠(chǎng)不能在寫(xiě),在出廠(chǎng)之前會(huì)預(yù)設(shè)好它的數(shù)據(jù),并且它是掉電不丟失的,又稱(chēng)為固定存儲(chǔ)器,它使用一些特定材料存儲(chǔ)數(shù)據(jù),這里以磁盤(pán)為列簡(jiǎn)單說(shuō)一下原理:磁盤(pán)里面使用一些磁材料存儲(chǔ)數(shù)據(jù),當(dāng)對(duì)內(nèi)部導(dǎo)體進(jìn)行導(dǎo)通時(shí)會(huì)導(dǎo)致內(nèi)部磁場(chǎng)發(fā)生變化,會(huì)讓內(nèi)部的磁極根據(jù)電流的方向而產(chǎn)生改變,發(fā)生的改變不會(huì)因?yàn)闆](méi)有電流而消失,這個(gè)改變是永久的,當(dāng)下次來(lái)讀時(shí)只需要將上次的變化轉(zhuǎn)化成對(duì)應(yīng)的電流變化,這個(gè)過(guò)程較為復(fù)雜,涉及到一些磁信號(hào)到電信號(hào)的轉(zhuǎn)換,速度相對(duì)于較慢,同時(shí)如果受到一些磁場(chǎng)較大的一些設(shè)備影響會(huì)導(dǎo)致里面的磁信號(hào)混亂,也就是數(shù)據(jù)混亂。 2. 硬件結(jié)構(gòu)以下是ROM的結(jié)構(gòu)圖 其實(shí)從圖中可以看到并沒(méi)有可寫(xiě)方面的結(jié)構(gòu),并且它是以字(1字=2字節(jié))為單位讀寫(xiě),可以看到里面有一個(gè)CS線(xiàn),這個(gè)線(xiàn)是接到外部CPU上的,CPU通過(guò)CS線(xiàn)來(lái)告訴內(nèi)存單元開(kāi)始工作了,然后通過(guò)地址總線(xiàn)將地址發(fā)送過(guò)去,然后通過(guò)控制總線(xiàn)發(fā)送控制命令,在通過(guò)數(shù)據(jù)總線(xiàn)接收數(shù)據(jù),ROM內(nèi)部有一個(gè)小型的控制芯片用于處理CPU傳遞過(guò)來(lái)的控制指令,它在出廠(chǎng)時(shí)設(shè)置的代碼就不支持寫(xiě)操作,同時(shí)也可以看到上面輸出線(xiàn)路時(shí)沒(méi)有設(shè)計(jì)輸入線(xiàn)路 下圖結(jié)構(gòu)為譯碼過(guò)程,同時(shí)可以看到?jīng)]有輸入緩沖器也沒(méi)有輸入接口,所以它只支持輸出 上面的NxM的意思是有N行,每行有M個(gè)單元,需要注意的是可以看到譯碼過(guò)程中前面的A0A1A2是地址的意思,內(nèi)存里是以二維數(shù)組為布局,A0A1為列,A2為行號(hào),后面的W0W1..是譯碼后的地址,它就相當(dāng)于指向了一個(gè)二維地址的實(shí)際地址,如有一個(gè)二維數(shù)組: short a[10][10]; 實(shí)際上它在內(nèi)存中是連續(xù)的 只是將連續(xù)的地址抽象化的進(jìn)行了分列,這樣方便管理,當(dāng)我們?cè)L問(wèn)a[1][0]時(shí)實(shí)際上就是對(duì)地址進(jìn)行了偏移遞增的處理,這樣只是讓我們更加方便的管理,ap[1][2]和a[12]沒(méi)有區(qū)別,所以在給ROM地址時(shí)ROM要求高多少位是列,低多少位是行,最后它會(huì)進(jìn)行譯碼成一個(gè)實(shí)際的地址,ROM會(huì)對(duì)內(nèi)部的單元生成一個(gè)二位的數(shù)組存儲(chǔ)這些地址,當(dāng)解析出行與列之后直接以這個(gè)為下標(biāo)索引就可以取出內(nèi)存單元的實(shí)際地址,然后對(duì)這個(gè)分配在這個(gè)地址上的引腳進(jìn)行操作。 它的每個(gè)單元以字為單位,也就是兩個(gè)字節(jié)代表位寬是16位的,那么要求數(shù)據(jù)總線(xiàn)與地址總線(xiàn)最低16位,當(dāng)然這個(gè)看ROM的設(shè)計(jì),有的ROM可能以字節(jié)為單位。 二、RAM1. 介紹RAM全拼是Random Access Memory(隨機(jī)存取存儲(chǔ)器),它可讀可寫(xiě),它是掉電丟失的,它里面的數(shù)據(jù)是非初始化的,使用之前需要對(duì)它進(jìn)行一次初始化,因?yàn)樯想姾鬅o(wú)法確定RAM里的數(shù)據(jù)是什么,為了防止使用時(shí)出現(xiàn)隨機(jī)數(shù)的情況需要對(duì)其進(jìn)行初始化為0,它是使用電容作為存儲(chǔ)單位,電容存儲(chǔ)的電荷會(huì)隨時(shí)間的流逝還消失,存儲(chǔ)器需要每隔一段時(shí)間給存儲(chǔ)器內(nèi)部的電容器進(jìn)行一行充電或者一直保持充電狀態(tài),會(huì)根據(jù)電容的電平值以及當(dāng)前使用的電平標(biāo)準(zhǔn)來(lái)提升電容的電荷,它的訪(fǎng)問(wèn)速度較快,因?yàn)樗恍枰x取電容里的電荷值然后轉(zhuǎn)化成對(duì)應(yīng)的數(shù)字電路就可以了,其實(shí)當(dāng)斷電的一瞬間其實(shí)里面還是有數(shù)據(jù)的,只不過(guò)隨著時(shí)間的流逝沒(méi)有芯片給這些電容器充電了會(huì)導(dǎo)致里面的電荷隨之流逝。 2. 硬件結(jié)構(gòu)可以看到結(jié)構(gòu)與ROM類(lèi)似,只不過(guò)多了一個(gè)輸入的接口電路,其次它是掉電丟失的,它的存儲(chǔ)單元在介紹里說(shuō)過(guò)是以電容存儲(chǔ)的,需要充電。 三、DRAMDRAM全拼Dynamic Random Access Memory(動(dòng)態(tài)隨機(jī)存儲(chǔ)器),它是基于RAM框架,有了上面的RAM框架的介紹,DRAM就比較容易理解了,DRAM使用MOS(金屬氧化物半導(dǎo)體)電容存儲(chǔ)電荷來(lái)儲(chǔ)存信息,因此必須通過(guò)不停的給電容充電來(lái)維持信息,DRAM只是RAM的一種實(shí)現(xiàn)手段,所謂的動(dòng)態(tài)就是指周期性的動(dòng)態(tài)給里面的電容充一次電,它需要在更新前獲取每個(gè)電容的電平信號(hào)是1還是0然后根據(jù)電路進(jìn)行對(duì)每個(gè)電容的刷新,上面說(shuō)過(guò)RAM是電容來(lái)存儲(chǔ)數(shù)據(jù)的,DRAM保存電容的方式就是動(dòng)態(tài)更新,當(dāng)控制信號(hào)來(lái)時(shí)若此時(shí)正在更新電荷則等待電荷更新完成去處理控制信號(hào) 四、SRAMSRAM全拼Static Random Access Memory(靜態(tài)隨機(jī)存儲(chǔ)器),SRAM與DRAM類(lèi)似,它不會(huì)動(dòng)態(tài)式的充電,它使用晶體管的特性來(lái)存儲(chǔ)數(shù)據(jù),晶體管是可以根據(jù)電流來(lái)控制自身開(kāi)合,利用這一特性可以通過(guò)外接線(xiàn)來(lái)獲取晶體管狀態(tài)來(lái)返回對(duì)應(yīng)數(shù)字信號(hào),這樣就不需要實(shí)時(shí)更新只需要一直向它發(fā)送特定的電流就可以了 五、DRAM與SRAM的區(qū)別SRAMSRAM成本要高,尺寸要求較大,因?yàn)镾RAM需要更多的引腳來(lái)存儲(chǔ)數(shù)據(jù),一個(gè)引腳用來(lái)接VDD電流控制晶體管開(kāi)合,一個(gè)引腳來(lái)取狀態(tài)并轉(zhuǎn)化對(duì)應(yīng)的數(shù)字信號(hào)等,但是它不需要?jiǎng)討B(tài)時(shí)的刷新對(duì)時(shí)鐘以及實(shí)時(shí)性沒(méi)有太大的要求,所以功耗較低,其次它速度要快于DRAM因?yàn)樗恍枰獎(jiǎng)討B(tài)刷新,在動(dòng)態(tài)刷新期間DRAM是不能存取數(shù)據(jù)的,所以平時(shí)見(jiàn)到的CPU一級(jí)與二級(jí)緩存,用的就是它,它可以隨時(shí)存取,價(jià)格較貴 DRAMDRAM對(duì)尺寸要求較小,對(duì)引腳要求較小,幾乎一根線(xiàn)就可以了,一根線(xiàn)用于取以及更新電荷,它需要?jiǎng)討B(tài)刷新,也就是需要時(shí)鐘來(lái)定時(shí)中斷,對(duì)實(shí)時(shí)性有要求,功耗較高,價(jià)格較為便宜 六、SDRAMSDRAM全拼Synchronous Dynamic Random Access Memory(同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器),注意它不是SRAM與DRAM的結(jié)合,它是同步的,基于DRAM結(jié)構(gòu)的,DRAM的輸入輸出不是同步的,是異步的,DRAM提供了一個(gè)異步接口,用于DRAM響應(yīng)工作,讀寫(xiě)等,SDRAM則提供了一個(gè)同步接口,用這個(gè)接口來(lái)完成同步操作 七、FLASHFLASH全拼是Flash Memory(閃存)、是一種非易失閃存技術(shù),可以隨機(jī)讀寫(xiě),同時(shí)也能掉電不丟失,至于具體如何保存數(shù)據(jù)需要看不同廠(chǎng)商對(duì)FLASH的設(shè)計(jì),若使用了磁鐵來(lái)存儲(chǔ)數(shù)據(jù)就需要注意一些不要將存儲(chǔ)器帶到可能對(duì)磁信號(hào)產(chǎn)生影響的一些地方 |
|