版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
存儲(chǔ)器及接口設(shè)計(jì)3.1概述存儲(chǔ)器(Memory)是計(jì)算機(jī)系統(tǒng)中用來存放程序和數(shù)據(jù)的硬件設(shè)備?,F(xiàn)代計(jì)算機(jī)系統(tǒng)中的全部信息,比如輸人的原始數(shù)據(jù)、計(jì)算機(jī)程序、中間運(yùn)行結(jié)果和最終運(yùn)行結(jié)果都保存在存儲(chǔ)器中,是計(jì)算機(jī)系統(tǒng)不可或缺的功能部件。計(jì)算機(jī)系統(tǒng)的存儲(chǔ)器可分為兩大類,即主存儲(chǔ)器(內(nèi)存)和輔助存儲(chǔ)器(外存),主存儲(chǔ)器的速度遠(yuǎn)快于輔助存儲(chǔ)器。主存通過總線與微處理器連接,用來存放正在執(zhí)行的程序和正在處理的數(shù)據(jù):輔存通過接口電路和主機(jī)連接,用來存放暫時(shí)沒有被執(zhí)行的程序和還沒有被處理的數(shù)據(jù)。CPU可以直接訪問內(nèi)存,但訪問外存時(shí)必須先把要訪問的信息從外存讀到內(nèi)存的速度雖然比外存快,但遠(yuǎn)遠(yuǎn)跟不上CPU的速度。為彌補(bǔ)主存和CPU之間的速度差異,可以在CPU和內(nèi)存之間增加高速緩沖存儲(chǔ)器(Cache)。另外,為了提高運(yùn)算速度,在CPU內(nèi)部還設(shè)置了少量容量相對(duì)較小的高速存儲(chǔ)部件,即寄存器(Register)。這些寄存器在程序運(yùn)行過程中可用來暫存指令、數(shù)據(jù)和地址等信息。這樣,在現(xiàn)代計(jì)算機(jī)系統(tǒng)中就形成了輔存、主存、高速緩存、寄存器這樣的4層存儲(chǔ)結(jié)構(gòu)。存儲(chǔ)器分類層次結(jié)構(gòu)如圖3.1所示。各級(jí)存儲(chǔ)器參數(shù)比較如表3.1所示。表3.1各級(jí)存儲(chǔ)器參數(shù)比較圖3.1存儲(chǔ)器分類層次結(jié)構(gòu)名稱位置速度容量價(jià)格寄存器CPU內(nèi)部與CPU同速幾十字節(jié)或字高CacheL1CPU內(nèi)部與CPU同速1~64KB高L2CPU內(nèi)部或外部與CPU同速或稍慢≤4MB高主存主板內(nèi)比Cache慢,比輔存快比L2大,比輔存小較高磁盤主板外,微機(jī)系統(tǒng)內(nèi)慢理論上無限大低移動(dòng)存儲(chǔ)器微機(jī)系統(tǒng)外慢理論上無限大低需要注意的是,一個(gè)存儲(chǔ)系統(tǒng)的容量往往比較大,單一存儲(chǔ)芯片的存儲(chǔ)單元的個(gè)數(shù)及數(shù)據(jù)寬度往往不能滿足存儲(chǔ)系統(tǒng)的要求,這時(shí)還要采用存儲(chǔ)器接口技術(shù)來對(duì)所有存儲(chǔ)器芯片50微機(jī)原理與接口技術(shù)50的連接和控制進(jìn)行管理。本章主要介紹主存儲(chǔ)器技術(shù)、高速緩存技術(shù)和存儲(chǔ)器擴(kuò)展技術(shù)。3.2半導(dǎo)體存儲(chǔ)器分類及性能指標(biāo)3.2.1半導(dǎo)體存儲(chǔ)器的分類目前,輔助存儲(chǔ)器大多采用磁性材料作為存儲(chǔ)介質(zhì),雖然價(jià)格較低、容量很大,但速度相對(duì)較慢,因此對(duì)于主存來說,一般都會(huì)采用存取速度更快的半導(dǎo)體器件作為存儲(chǔ)介質(zhì)。主存儲(chǔ)器種類很多,分類也多種多樣。按設(shè)計(jì)電路可分為雙極型和MOS型存儲(chǔ)器;根據(jù)信息的存儲(chǔ)原理來分有靜態(tài)和動(dòng)態(tài)存儲(chǔ)器;從信息的傳送方式來分有并行和串行存儲(chǔ)器。而最常見的分類方法是按信息的存取方式進(jìn)行劃分,即隨機(jī)存取存儲(chǔ)器RAM和只讀存儲(chǔ)器ROM。1.RAM的分類RAM是指當(dāng)計(jì)算機(jī)工作時(shí),可隨機(jī)地對(duì)存儲(chǔ)器進(jìn)行讀出和寫人操作。RAM又可分為雙極型和MOS型兩大類。雙極型存取速度快,但功耗大、集成度低、單片容量小、成本高,因此一般都作為容量較小但速度要求很高的高速緩沖存儲(chǔ)器;與雙極型RAM相比,MOS型RAM具有功耗低、集成度高、單片容量大、成本低等特點(diǎn),但存取速度相對(duì)較慢。MOS型RAM又可以分為靜態(tài)RAM(SRAM)和動(dòng)態(tài)RAM(DRAM)兩種,其存儲(chǔ)原理將在后面小節(jié)中進(jìn)行詳細(xì)講解。2.ROM的分類ROM是指存儲(chǔ)器內(nèi)容是事先寫人的,計(jì)算機(jī)正常工作時(shí)只能讀出不能寫人。一旦寫人信息,就不能輕易改變,掉電后信息也不會(huì)丟失。按制作工藝和使用特性,ROM可分為4種:掩膜式只讀存儲(chǔ)器(MaskROM)、可編程只讀存儲(chǔ)器(Programmab1eROM)、紫外線可擦除可編程只讀存儲(chǔ)器(Erasab1eProgrammab1eROM)和電可擦除可編程只讀存儲(chǔ)器(E1ectrica1yErasab1eProgrammab1eROM)。半導(dǎo)體存儲(chǔ)器的分類如圖3.2所示。3.2.2半導(dǎo)體存儲(chǔ)器的性能指標(biāo)隨著現(xiàn)代計(jì)算機(jī)系統(tǒng)的發(fā)展,存儲(chǔ)系統(tǒng)的性能從某種意義上來說決定著整個(gè)計(jì)算機(jī)系統(tǒng)的性能。主要原因是建立在存儲(chǔ)程序概念基礎(chǔ)之上的現(xiàn)代計(jì)算機(jī)系統(tǒng)在運(yùn)行過程中的訪存操作約占中央處理器(CPU)時(shí)間的70%左右。因此,存儲(chǔ)器組織與管理方法的好壞會(huì)直接影響到整機(jī)效率。存儲(chǔ)器的容量、速度、帶寬等性能越來越成為影響計(jì)算機(jī)系統(tǒng)性能的1.存儲(chǔ)容量在微型計(jì)算機(jī)系統(tǒng)中,存儲(chǔ)器以一個(gè)字節(jié)作為一個(gè)存儲(chǔ)單元。存儲(chǔ)器可以容納的存儲(chǔ)單元總數(shù)稱為該存儲(chǔ)器的存儲(chǔ)容量。一般情況下,存儲(chǔ)容量的單位為B(BYTE,字節(jié)),1B=8b。但由于計(jì)算機(jī)的存儲(chǔ)容量都很大,因此常以KB(210字節(jié))、MB(220字節(jié))、GB(230字圖3.2半導(dǎo)體存儲(chǔ)器分類節(jié))、TB(240字節(jié))、PB(250字節(jié))、EB(260字節(jié))、YB(270字節(jié))、NB(280字節(jié))、DB(290字節(jié))等為單位。主存的容量越大,存儲(chǔ)的信息量也就越大,計(jì)算機(jī)運(yùn)行的速度一般也就越快。存儲(chǔ)一位二進(jìn)制信息的單元稱為一個(gè)基本存儲(chǔ)元。對(duì)于1MB的存儲(chǔ)器,其內(nèi)部有220個(gè)存儲(chǔ)單元,220×8個(gè)基本存儲(chǔ)元。在標(biāo)定某存儲(chǔ)器芯片的容量時(shí),經(jīng)常同時(shí)標(biāo)出存儲(chǔ)單元的個(gè)數(shù)和每個(gè)存儲(chǔ)單元的位數(shù),即存儲(chǔ)器芯片容量=存儲(chǔ)單元個(gè)數(shù)×存儲(chǔ)單元位數(shù)例如,1nte162256芯片的容量為215×8b,表示該種芯片的存儲(chǔ)單元個(gè)數(shù)為215,每個(gè)存儲(chǔ)單元8位,總?cè)萘繛?2KB。2.速度計(jì)算機(jī)運(yùn)行過程中要不斷與主存進(jìn)行信息交換,因此主存的速度是衡量整個(gè)計(jì)算機(jī)系統(tǒng)運(yùn)行速度的一項(xiàng)重要指標(biāo)。存儲(chǔ)器芯片的速度通常用訪問時(shí)間或存取周期來衡量。存取周期(memorycyc1etime)又稱讀/寫周期,是指存儲(chǔ)器從接收到地址到完成讀出或?qū)懭瞬僮鞯臅r(shí)間。在一般情況下存取周期越短,計(jì)算機(jī)運(yùn)行的速度就越快。半導(dǎo)體存儲(chǔ)器的存取周期一般為幾至幾百納秒。3.帶寬存儲(chǔ)器帶寬(memorybandwidth)是指單位時(shí)間內(nèi)存儲(chǔ)器所存取的信息量。存儲(chǔ)器的帶寬決定了單位時(shí)間內(nèi)數(shù)據(jù)傳輸?shù)亩嗌?單位為位/秒(bps)或字節(jié)/秒(Bps)。帶寬可用以下公式計(jì)算,即帶寬=每個(gè)存取周期訪問位數(shù)/存取周期51如存取周期為500ns,每個(gè)存取周期可訪問16位,則它的帶寬為32Mb/s(或4MB/s),即32Mb/s514.可靠性3存儲(chǔ)器的可靠性是指對(duì)電磁場、溫度變化等因素造成干擾的抵抗能力,以及在高速運(yùn)轉(zhuǎn)時(shí)也能正確地存取。半導(dǎo)體存儲(chǔ)器內(nèi)部連線少、體積小3存儲(chǔ)器及接口設(shè)計(jì)微機(jī)原理與接口技術(shù)量的其他類型存儲(chǔ)器相比,其抗干擾能力較強(qiáng)。存儲(chǔ)器的可靠性可以用平均故障間隔時(shí)間來衡量。5.集成度52集成度是指在一塊數(shù)平方毫米的芯片上所制作的基本存儲(chǔ)元個(gè)數(shù),單位為"位/片”或"字節(jié)/片”。很顯然,存儲(chǔ)芯片的集成度越高,構(gòu)成相同容量的存儲(chǔ)器所需要的存儲(chǔ)芯片的數(shù)目就越少。MOS型存儲(chǔ)器的集成度高于雙極型的存儲(chǔ)器,動(dòng)態(tài)存儲(chǔ)器的集成度高于靜態(tài)存儲(chǔ)器52目前,30nm等級(jí)制造工藝的應(yīng)用使得存儲(chǔ)芯片單片容量已經(jīng)達(dá)到了4GB,單根PC內(nèi)存條的容量達(dá)到了32GB。6.功耗半導(dǎo)體存儲(chǔ)器屬于大規(guī)模集成電路,集成度高,體積小,不容易散熱,因此在保證存儲(chǔ)容量和速度的前提下應(yīng)盡量減小功耗。與雙極型存儲(chǔ)器相比,MOS型存儲(chǔ)器功耗更小。7.其他在存儲(chǔ)器性能上還應(yīng)考慮輸人輸出電平是否與外接電路兼容、使用是否方便靈活及性價(jià)比等其他因素。3.3隨機(jī)存儲(chǔ)器RAM3.3.1sRAM存儲(chǔ)器1.sRAM基本存儲(chǔ)元電路圖3.3所示為一個(gè)主要由6個(gè)MOS管組成的SRAM的基本存儲(chǔ)元及其讀、寫電路。圖3.3六管靜態(tài)存儲(chǔ)元電路圖3.3中,T1、T2、T3、T4、T5和T6這6個(gè)MOS管組成6管靜態(tài)存儲(chǔ)元。T1、T2、T3、T4組成了一個(gè)觸發(fā)器基本電路,其中T1和T2交叉耦合組成雙穩(wěn)態(tài)電路,T3和T4為負(fù)載管(相當(dāng)于T1和T2的負(fù)載電阻)。T5、T6、T7、T8起到開關(guān)作用,是存儲(chǔ)元讀出和寫人數(shù)據(jù)時(shí)的控制管,其中T5、T6受地址譯碼線X控制,T7、T8受地址譯碼線Y控制。需要注意的是,T5、T6、T7、T8并不包含在某個(gè)基本存儲(chǔ)元電路內(nèi),而是由存儲(chǔ)芯片內(nèi)同一列的所有存儲(chǔ)元電路所共有。下面舉例說明該6管靜態(tài)存儲(chǔ)元電路的讀、寫工作過程。讀數(shù)據(jù)時(shí),X、Y地址譯碼線上的信號(hào)同時(shí)為高電平,使T5、T6、T7、T8均導(dǎo)通,這時(shí)A點(diǎn)電平通過T6和位線A及T8后作為讀出放大器輸人信號(hào),在讀選擇有效時(shí)將數(shù)據(jù)讀出。如果原來A點(diǎn)為高電平,即存儲(chǔ)的是1,則讀出的是高電平;如果原來A點(diǎn)為低電平,即存儲(chǔ)的是0,則讀出的是低電平。寫數(shù)據(jù)時(shí),不管觸發(fā)器原來狀態(tài)如何,只要將數(shù)據(jù)送到"寫人數(shù)據(jù),端,在寫選擇有效時(shí),經(jīng)兩個(gè)寫放大器,使兩端輸出為相反電平。當(dāng)行、列地址選擇有效時(shí),T5、T6、T7、T8均導(dǎo)通,會(huì)使A與B兩點(diǎn)置成完全相反的電平。例如,當(dāng)寫人數(shù)據(jù)"1,時(shí),在兩個(gè)寫放大器和T7、T8兩個(gè)MOS管的作用下,位線A和位線B上分別出現(xiàn)高電平和低電平,再通過T6、T7兩個(gè)MOS管分別送到A點(diǎn)和B點(diǎn)。這時(shí)A點(diǎn)為高電平,B點(diǎn)為低電平,表示寫人了1。之后,雖然外部數(shù)據(jù)線上的數(shù)據(jù)信號(hào)撤銷,寫控制信號(hào)和地址譯碼線上的信號(hào)也都變?yōu)闊o效的低電平,但A、B兩點(diǎn)上的信號(hào)仍然可通過交叉耦合達(dá)到穩(wěn)定狀態(tài)。其原理為:A點(diǎn)高電平送到T1管的柵極,能讓T1管飽和導(dǎo)通,使得B點(diǎn)接地;B點(diǎn)低電平送到T2管的柵極,能讓T2管截止,使得A點(diǎn)通過負(fù)載管T4與電源VCC相連。只要不掉電,這一過程不斷重復(fù),最終達(dá)到穩(wěn)定狀態(tài)。通過上面的分析可以知道,靜態(tài)RAM是觸發(fā)器存儲(chǔ)信息,因此即使信息讀出后,它仍然會(huì)保持原來狀態(tài),信息也只需要寫人一次就能達(dá)到穩(wěn)定狀態(tài),不需要刷新,因此速度較快,主要應(yīng)用于高速緩沖存儲(chǔ)器。2.sRAM存儲(chǔ)器的組成SRAM由存儲(chǔ)元陣列、地址譯碼器和讀/寫控制以及數(shù)據(jù)驅(qū)動(dòng)/緩沖幾個(gè)部分組成。一個(gè)典型的SRAM邏輯結(jié)構(gòu)如圖3.4所示。圖3.4典型SRAM邏輯結(jié)構(gòu)5533存儲(chǔ)器及接口設(shè)計(jì)微機(jī)原理與接口技術(shù)圖3.4是一個(gè)4K×8位的SRAM組成框圖。它有12條地址線,8條雙向數(shù)據(jù)線,可尋址的存儲(chǔ)單元有4K個(gè),每個(gè)存儲(chǔ)單元存儲(chǔ)8位數(shù)據(jù)。存儲(chǔ)芯片中的CS為片選控制信號(hào),R/為讀、寫控制信號(hào)。54對(duì)于較大容量的存儲(chǔ)器通常像圖3.4這樣把多個(gè)相同容量的存儲(chǔ)器芯片組成一組,各個(gè)字節(jié)(字)的同一位組織在同一片中。圖3.4中8個(gè)存儲(chǔ)容量都為4K×1位的芯片組成了一個(gè)4K×8位的存儲(chǔ)器,這8個(gè)芯片的片選輸人端連接在一起,使用時(shí)總是同時(shí)被選中或同時(shí)未被選中,從而實(shí)現(xiàn)8位數(shù)據(jù)同時(shí)讀出和寫人54另外,由于地址線數(shù)目有限,選擇存儲(chǔ)單元時(shí)必須經(jīng)過地址譯碼器生成各個(gè)芯片的片選信號(hào)。地址線的譯碼方式主要有兩種,即雙譯碼和單譯碼,如圖3.5和圖3.6所示。圖3.5雙譯碼方式圖3.6單譯碼方式雙譯碼也稱為復(fù)合譯碼,即將地址線分為兩組,分別送行地址譯碼器和列地址譯碼器進(jìn)行譯碼,由行列譯碼輸出同時(shí)選中的單元就是所訪問的存儲(chǔ)元或存儲(chǔ)單元。例如,圖3.5中行譯碼器譯碼輸出的X0和列譯碼器譯碼輸出的Y0同時(shí)選中的左上角的存儲(chǔ)元(存儲(chǔ)單元)就是要訪問的存儲(chǔ)元(存儲(chǔ)單元)。單譯碼也稱為線性譯碼,即所有地址線通過一個(gè)地址譯碼器譯碼輸出,每個(gè)譯碼輸出線直接選中一個(gè)存儲(chǔ)元或存儲(chǔ)單元。例如,10條地址線譯碼輸出后就會(huì)有1024條輸出線選擇存儲(chǔ)元或存儲(chǔ)單元。這種方式適用于容量不大的存儲(chǔ)芯片中。典型的SRAM芯片有1nte12114(1K×4b)、1nte16116(2K×8b)、1nte16264(8K×8b)、1nte162256(32K×8b)等。3.3.2DRAM存儲(chǔ)器DRAM芯片是利用電容是否充有電荷來存儲(chǔ)信息的,其基本存儲(chǔ)元電路一般由4管、3管或單管組成,以3管和單管比較常用。由于DRAM需要的MOS管較少,所以功耗低,容易擴(kuò)大每個(gè)存儲(chǔ)芯片的容量,在微機(jī)系統(tǒng)中應(yīng)用廣泛。1.DRAM基本存儲(chǔ)元電路圖3.7所示為一個(gè)主要由MOS管和電容器組成的動(dòng)態(tài)RAM基本存儲(chǔ)元電路。讀數(shù)據(jù)時(shí),使行列選擇線為高電平,兩個(gè)MOS管導(dǎo)通,若原來存儲(chǔ)的是"1”,則C上有電荷,這時(shí)C放電,會(huì)通過T管在位線(數(shù)據(jù)線)上產(chǎn)生電流,完成讀"1”操作;若讀"0”,則C不會(huì)放電,位線(數(shù)據(jù)線)上不會(huì)產(chǎn)生寫數(shù)據(jù)時(shí),同樣使行列選擇線為高電平,兩個(gè)MOS管導(dǎo)通,若寫人1,位線(數(shù)據(jù)線)上加高電平,這時(shí)會(huì)對(duì)電容C進(jìn)行充電;若寫人"0”,位線上加低電平,如果原來C上有電荷(存儲(chǔ)的是"1”),就會(huì)通過位線進(jìn)行釋放,到達(dá)無電荷狀態(tài)(寫人0)。需要注意的是,這種單管MOS動(dòng)態(tài)RAM的讀數(shù)圖3.7單管MOS動(dòng)態(tài)RAM基本據(jù)過程是電容C的放電過程,是一種破壞性讀出,因此存儲(chǔ)元電路要想保持原有的信息,數(shù)據(jù)讀出后必須重寫。圖3.7中的刷新放大器在數(shù)據(jù)讀出后,會(huì)將原信息重新寫回到電容C中。DRAM存儲(chǔ)元以電容為基礎(chǔ),電路簡單,集成度高,功耗低,但需要額外的定時(shí)刷新操作,因此速度與SRAM相比相對(duì)較慢,適用于大容量存儲(chǔ)器,如內(nèi)存。2.DRAM存儲(chǔ)器的組成SRAM由存儲(chǔ)元陣列、地址譯碼器和讀/寫控制、數(shù)據(jù)驅(qū)動(dòng)/緩沖、地址鎖存器和刷新控制電路幾個(gè)部分組成。一個(gè)典型的DRAM邏輯結(jié)構(gòu)如圖3.8所示。與SRAM相比,DRAM中增加了地址鎖存器和刷新控制電路。553DRAM芯片的容量相對(duì)較大,也就需要更多的地址線進(jìn)行訪問,但增多地址線無疑會(huì)導(dǎo)致芯片引腳數(shù)目增加。為解決這一問題,在DRAM中采用了分時(shí)傳送地址碼的技術(shù)。圖3.8中,要訪問1M×4b容量的DRAM存儲(chǔ)器需要20條地址線,但芯片引腳只提供了10條地址線,這10條地址線分時(shí)把低10位地址和高10位地址傳送到DRAM的行地址鎖存器和列地址鎖存器中進(jìn)行鎖存,之后在CPU發(fā)出的讀/寫控制命令作用下完成對(duì)某一存儲(chǔ)單元的讀/寫操作。這里地址信號(hào)要分兩次傳送553存儲(chǔ)器及接口設(shè)計(jì)微機(jī)原理與接口技術(shù)556圖3.8DRAM存儲(chǔ)器的邏輯結(jié)構(gòu)另外,由于DRAM的讀操作是破壞性的,再加上電容本身的漏電問題,必須對(duì)存儲(chǔ)芯片進(jìn)行定時(shí)刷新操作。例如,對(duì)于早期的128×128芯片,要求在2ms內(nèi)完成128行的刷新操作,這段時(shí)間叫做刷新周期或再生周期。隨著半導(dǎo)體芯片技術(shù)的發(fā)展,現(xiàn)在刷新周期最長可達(dá)8ms以上。3.DRAM的刷新方式刷新操作是逐行進(jìn)行的,相當(dāng)于一系列的讀和寫操作。當(dāng)某一行選擇信號(hào)為"1"時(shí),選中了該行,電容上的信息送到刷新放大器,刷新放大器又對(duì)這些電容立即進(jìn)行重寫。由于刷新時(shí)列選擇信號(hào)總為"0",因此電容上的信息不可能被送到數(shù)據(jù)總線上,也就是說,刷新操作和正常的讀/寫操作不能同時(shí)進(jìn)行。按照再生操作的時(shí)機(jī),常見的刷新方式有集中式、分散式和異步式3種。1)集中式刷新集中式刷新是將刷新周期劃分為兩個(gè)部分,前一部分由CPU對(duì)存儲(chǔ)器進(jìn)行正常的讀/寫或維持操作,后一部分集中完成所有行的刷新操作,如圖3.9所示.圖3.9集中式刷新假設(shè)某DRAM刷新周期為2ms,存取周期為0.5以s(即刷新一行需要0.5以s),則刷新128行需要64以s。這段時(shí)間內(nèi)CPU不能對(duì)存儲(chǔ)器進(jìn)行正常的讀/寫操作,這段時(shí)間稱為CPU的"死區(qū)",或稱"死時(shí)間"。2)分散式刷新集中式刷新中存在"死區(qū)",盡管時(shí)間很短,但有些情況下仍然會(huì)影響系統(tǒng)效率。分散式刷新可以避免CPU較長時(shí)間不能正常讀/寫存儲(chǔ)器的問題。這種刷新方式是把對(duì)每行的刷新分散到每個(gè)讀/寫周期內(nèi)完成。把存儲(chǔ)周期分成兩部分,前半部分用于讀/寫或維持,后半部分用于刷新操作,每次刷新一行,如圖3.10所示。圖3.10分散式刷新這種刷新方式克服了"死區(qū)”的缺點(diǎn),但它有可能導(dǎo)致整機(jī)的工作效率下降。因?yàn)楸M管把刷新操作分散在讀/寫操作后,但每次刷新操作同樣需要一個(gè)讀/寫周期時(shí)間,結(jié)果使系統(tǒng)的存取周期增加了一倍。另外,這種方式也不利于充分利用所允許的最大刷新時(shí)間間隔,導(dǎo)致可能會(huì)產(chǎn)生頻繁刷新現(xiàn)象,這也降低了存儲(chǔ)器的存取速度。3)異步式刷新為真正提高整機(jī)的工作效率,可以采用集中式與分散式相結(jié)合的方式,把刷新操作平均分配到刷新周期內(nèi)進(jìn)行,既能克服"死區(qū)”,又能充分利用最大刷新間隔,如圖3.11所示。圖3.11異步刷新這種刷新方式每隔一定時(shí)間(刷新周期/行數(shù))刷新一行。例如,對(duì)于128×128的存儲(chǔ)芯片,刷新周期為2ms時(shí),只需要每隔2ms/128=15.6以s刷新一行,而每行刷新的時(shí)間仍為讀/寫周期0.5以s,即刷新一行只停止一個(gè)讀/寫周期,"死區(qū)”大大縮短。3.3.3現(xiàn)代DRAM到目前為止,主存的基本核心部件仍然采用DRAM,這與高速發(fā)展的CPU技術(shù)形成了鮮明的對(duì)比,已經(jīng)成為整機(jī)性能發(fā)展的瓶頸。因此,人們相繼從提高時(shí)鐘頻率、帶寬和縮短存儲(chǔ)周期等方面開發(fā)了基于基本DRAM結(jié)構(gòu)的增強(qiáng)型的存儲(chǔ)芯片。1.FPMDRAM(FastPageModeDRAM)FPMDRAM為快速頁面切換模式動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器,是一種改良版的DRAM,在486時(shí)期曾被普遍應(yīng)用。傳統(tǒng)的DRAM在存取一位數(shù)據(jù)時(shí),必須送出行地址和列地址各一次才能讀/寫數(shù)據(jù),而FPMDRAM在觸發(fā)了行地址后,如果CPU需要的地址在同一行內(nèi),則可以連續(xù)輸出列地址而不必再輸出行地址了。FPMDRAM每3個(gè)時(shí)鐘周期傳輸一次2.EDORAM(ExtendedDataOutputRAM)573EDORAM為擴(kuò)展數(shù)據(jù)輸出存儲(chǔ)器,是一種在RAM中加人一塊靜態(tài)RAM而生成的動(dòng)態(tài)存儲(chǔ)器。因?yàn)镾RAM的訪問速度要快于DRAM,所以這會(huì)加快訪問內(nèi)存的速度。EDORAM有時(shí)作為二級(jí)緩存和ESDRAM(帶緩存的RAM)一起使用。EDORAM每2573存儲(chǔ)器及接口設(shè)計(jì)微機(jī)原理與接口技術(shù)3.sDRAM(synchronousDRAM)58SDRAM為同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器,它與系統(tǒng)時(shí)鐘以相同的速度同步工作,內(nèi)部命令的發(fā)送與數(shù)據(jù)的傳輸都以它為基準(zhǔn),可以實(shí)現(xiàn)數(shù)據(jù)隨機(jī)存取,整塊傳輸。SDRAM在每個(gè)時(shí)鐘周期的上升沿可傳輸一次數(shù)據(jù)584.DDRsDRAM(DoubIeDataRatesDRAM)DDRSDRAM即雙倍速率同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器,習(xí)慣簡稱DDR,就是市場上的DDR內(nèi)存。DDR內(nèi)存是在SDRAM內(nèi)存基礎(chǔ)上發(fā)展而來的,仍然沿用SDRAM生產(chǎn)體系,因此對(duì)于內(nèi)存廠商而言,只需將制造普通SDRAM的設(shè)備稍加改進(jìn),即可實(shí)現(xiàn)DDR內(nèi)存的生產(chǎn),可有效降低成本。DDR內(nèi)存每個(gè)時(shí)鐘周期內(nèi)可以傳輸兩次數(shù)據(jù),即能夠在時(shí)鐘的上升期和下降期各傳輸一次數(shù)據(jù),稱為雙倍速率同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器,因此與SDRAM相比可以達(dá)到更高的數(shù)據(jù)傳輸率。DDR2(Doub1eDataRate2)是DDRSDRAM的第二代產(chǎn)品,采用了諸多的新技術(shù),改善了DDR的諸多不足。DDR2與上一代DDR內(nèi)存技術(shù)標(biāo)準(zhǔn)最大的不同就是,雖然同是采用了在時(shí)鐘的上升/下降沿各傳送一次數(shù)據(jù)的基本方式,但DDR2內(nèi)存擁有兩倍于上一代DDR內(nèi)存預(yù)讀取能力(即4位數(shù)據(jù)預(yù)讀取)。換句話說,DDR2內(nèi)存每個(gè)時(shí)鐘能夠以4倍外部總線的速度讀/寫數(shù)據(jù),并且能夠以內(nèi)部控制總線4倍的速度運(yùn)行。此外,DDR2的耗電量更低,散熱性能更優(yōu)良。當(dāng)前市場上比較流行的是DDR3內(nèi)存。面向64位構(gòu)架的DDR3在頻率和速度(8位數(shù)據(jù)預(yù)讀取)上擁有更多的優(yōu)勢,同時(shí)還采用了根據(jù)溫度自動(dòng)刷新、局部自刷新等其他一些功能,在功耗方面DDR3也要出色得多?,F(xiàn)在,基于差分信號(hào)技術(shù)的DDR4內(nèi)存也即將浮出水面。DDR4內(nèi)存的傳輸速率可以達(dá)到1.6~3.2Gb/s,頻率最高可達(dá)4266MHz,1.2V的低電壓,擁有更好的對(duì)等保護(hù)和錯(cuò)誤恢復(fù)等技術(shù)。最新消息顯示,DDR4內(nèi)存或于2014年首先用于服務(wù)器領(lǐng)域,然后再過一年半左右進(jìn)人桌面。除上述幾種芯片外,還先后出現(xiàn)了CDRAM、SLDRAM、RDRAM、并行型RDRAM、DirectRDRAM、PC100SDRAM、DRDRAM和VCM等增強(qiáng)型的DRAM芯片。3.4只讀存儲(chǔ)器ROMRAM存儲(chǔ)器具有易失性,掉電后數(shù)據(jù)將會(huì)丟失。然而,在實(shí)際應(yīng)用中常常還需要掉電后內(nèi)容不丟失的存儲(chǔ)器,半導(dǎo)體只讀存儲(chǔ)器ROM就具有這一功能。早期的ROM也可以分為雙極型和MOS型,但現(xiàn)在雙極型的早已被淘汰,所以這里只對(duì)MOS型ROM加以介紹。1.掩膜式只讀存儲(chǔ)器(MROM)MROM中的信息是芯片在生產(chǎn)時(shí)由生產(chǎn)廠家固化(掩膜)的,生產(chǎn)時(shí)需要專用的掩膜模具,制成以后不能擦除和修改。這種ROM往往會(huì)存儲(chǔ)一些特殊功能的程序或數(shù)據(jù),如早期的B1OS芯片就是用MROM實(shí)現(xiàn)的。這種存儲(chǔ)器可靠性高、成本低,一般適用于在大批量應(yīng)用的場合。MROM的存儲(chǔ)結(jié)構(gòu)如圖3.12所示。掩膜ROM基本存儲(chǔ)電路由單管組成,集成度高。圖3.12是一個(gè)4×4位MOS管MROM,采用單譯碼方式,兩位地址線A1和A0譯碼后可譯出4種狀態(tài),輸出4條選擇線,圖3.12MROM存儲(chǔ)結(jié)構(gòu)分別選中4個(gè)單元,每個(gè)單元有4個(gè)(位)輸出。存儲(chǔ)矩陣中,行列選擇線交叉有的連有MOS管,有的沒有,有MOS管表示存儲(chǔ)的信息為0,否則為1。2.可編程只讀存儲(chǔ)器(PROM)PROM通常是指用戶能夠進(jìn)行一次性編程寫人信息的ROM芯片,即芯片出廠時(shí)里面還沒有寫人任何信息,用戶使用時(shí)可以將自己的程序和數(shù)據(jù)通過專用的編程器寫人芯片中。但需要注意的是,這種寫人是"破壞性”的,也就是說,信息一旦寫人就不能再修改或刪除。PROM的成本比MROM高,信息寫人的速度比MROM要慢,一般只適用于少量需求的場合或是MROM批量生產(chǎn)前的試制。圖3.13是一個(gè)PROM的基本存儲(chǔ)元結(jié)構(gòu)。圖3.13中的熔絲一般采用鎳鉻熔絲,連接到存儲(chǔ)元件的發(fā)射極,出廠時(shí)所有存儲(chǔ)元的熔絲都是連著的,表示存儲(chǔ)的數(shù)據(jù)全是"1”。編程寫人時(shí)用足夠大的電流把熔絲燒斷表示寫人了數(shù)據(jù)"0”。當(dāng)讀取信息時(shí),行線加高電平,三極管導(dǎo)通,如果熔絲未斷,列線會(huì)與VCC接通,即輸出高電平,表示讀出了1;否則輸出低電平,表示讀出了0。3.紫外線可擦除可編程只讀存儲(chǔ)器(EPROM)EPROM是紫外線可擦除可編程的只讀存儲(chǔ)器,解決了PROM芯片只能寫人一次的弊端。圖3.14是一個(gè)EPROM基本存儲(chǔ)元電路。圖3.13PROM的基本存儲(chǔ)元結(jié)構(gòu)559圖3.14EPROM基本存儲(chǔ)元電路圖3.14EPROM基本存儲(chǔ)元電路存儲(chǔ)器及接口設(shè)計(jì)微機(jī)原理與接口技術(shù)圖3.14(a)是一個(gè)P溝道浮柵MOS管結(jié)構(gòu)。它與普通P溝道MOS電路的區(qū)別就是柵極沒有引出線,稱為"浮柵”。EPROM芯片制造好后,柵極上沒有電荷,源極S和漏極D之間不導(dǎo)通,存儲(chǔ)的信息為1。60在編程寫人時(shí),S和D之間加+12V或+25V的正電壓(不同芯片,該電壓要求不同)和編程脈沖,使得在漏極與襯底之間反向偏置的PN結(jié)被迅速擊穿,于是有高能電子通過極薄的SiO2絕緣層注人到浮柵上。當(dāng)高電壓去掉后,注人到浮柵中的電子被絕緣層包圍,無法復(fù)合掉靠近柵極的多余空穴,于是在S和D之間就形成了一個(gè)導(dǎo)電溝道,S和D能夠?qū)?這時(shí)相當(dāng)于寫人了信息"060在讀出數(shù)據(jù)時(shí),行地址選擇線置高電平,T1管導(dǎo)通,如果T2中存儲(chǔ)的是1,即T2不能導(dǎo)通,會(huì)在1/O線上輸出高電平;如果T2中存儲(chǔ)的是0,即T2導(dǎo)通,則會(huì)在1/O線上輸出低電平。EPROM芯片要想重新寫人數(shù)據(jù)必須先進(jìn)行擦除。EPROM出廠時(shí)會(huì)在陶瓷封裝表面開一個(gè)石英窗口,透過該窗口,可以看到其內(nèi)部的集成電路,用紫外線透過該孔照射內(nèi)部芯片若干分鐘,浮柵中的電子獲得能量會(huì)穿過絕緣層跑掉,就可以擦除存儲(chǔ)的數(shù)據(jù),使所有單元的內(nèi)容均初始化為1,之后就可以重新編程寫人數(shù)據(jù)了。4.電可擦除可編程只讀存儲(chǔ)器(EEPROM)EPROM雖然滿足了可改寫的需求,但只能擦除全部信息,而且擦除時(shí)間過長,使用紫外線也不太方便。EEPROM是一種可用電氣方法在線擦除和再編程的只讀存儲(chǔ)器,寫人時(shí)不需要專門的編程電壓,可直接用系統(tǒng)+5V的電源。EEPROM既具有ROM非易失性的特點(diǎn),又像RAM一樣可以隨機(jī)地進(jìn)行讀/寫操作,寫人的數(shù)據(jù)保留的時(shí)間可長達(dá)20年,并且每個(gè)單元可重復(fù)進(jìn)行一萬次以上的改寫,最近推出的EEPROM芯片的可改寫次數(shù)已經(jīng)達(dá)到了10萬次。圖3.15是一個(gè)EEPROM基本存儲(chǔ)元電路。圖3.15EEPROM基本存儲(chǔ)元結(jié)構(gòu)EEPROM與EPROM相比,存儲(chǔ)元結(jié)構(gòu)大體相同,也采用浮柵技術(shù),以浮柵上是否帶有電荷決定存儲(chǔ)的信息是1還是0,只不過額外在浮柵上方的SiO2上增加了一層金屬層,構(gòu)成了一個(gè)控制柵。EEPROM信息的寫人方法與EPROM相同,而在擦除信息時(shí)要把控制柵接地,并在源極S加較高的正電壓,浮柵中的電子在較強(qiáng)的電場力作用下被拉出吸到源極,從而實(shí)現(xiàn)了信息的擦除。需要注意的是,隨著技術(shù)和工藝的進(jìn)步,許多EEPROM芯片在寫人數(shù)據(jù)時(shí)并不需要先擦除原來存儲(chǔ)的信息,也不再需要額外提高擦除和寫人電壓,而是直接使用+5V的工作電壓就可以實(shí)現(xiàn)在線寫人了。例如,采用EEPROM的B1OS芯片大多都有雙電壓特性,通過跳線開關(guān)就可很方便地實(shí)現(xiàn)編程電壓和工作電壓的切換。5.閃速存儲(chǔ)器(FIash)閃速存儲(chǔ)器即通常所說的閃存,按照內(nèi)部結(jié)構(gòu)和數(shù)據(jù)訪問方式,它屬于ROM類存儲(chǔ)器,是在EPROM和EEPROM基礎(chǔ)上發(fā)展而成的,因此兩者有很多相似之處。閃存對(duì)RAM和ROM各取所長,具有集成度高、功耗低、抗干擾能力強(qiáng)、速度快、容量大、非易失性和價(jià)格便宜等優(yōu)點(diǎn)。現(xiàn)在F1ash用途廣泛,主要用于U盤、顯卡、網(wǎng)卡、聲卡等計(jì)算機(jī)接口設(shè)備中,以及數(shù)碼相機(jī)、數(shù)碼攝像機(jī)、手機(jī)等智能設(shè)備和終端設(shè)備中。具有容量更大、體積更小、速度更快、成本更低、耗電更少、可靠性更高、易用性更強(qiáng)等趨勢。尤其閃存技術(shù)的發(fā)展,替代磁性存儲(chǔ)介質(zhì)的趨勢已經(jīng)越來越明顯,雖然想要替代各種RAM存儲(chǔ)器還有很長的路要走,但終究值得期待。3.5存儲(chǔ)器接口設(shè)計(jì)計(jì)算機(jī)存儲(chǔ)系統(tǒng)的容量往往很大,單個(gè)存儲(chǔ)芯片的容量和數(shù)據(jù)寬度都很難滿足系統(tǒng)要求,這就需要選擇使用多個(gè)芯片組合成大的存儲(chǔ)系統(tǒng)。然而,不同型號(hào)和種類的存儲(chǔ)芯片所擁有的存儲(chǔ)單元個(gè)數(shù)和每個(gè)單元的數(shù)據(jù)位數(shù)都可能不同,如何選用不同的存儲(chǔ)芯片、如何進(jìn)行地址譯碼和片選、如何與CPU進(jìn)行連接來構(gòu)成系統(tǒng)所需的存儲(chǔ)器,是本節(jié)要討論的3.5.1存儲(chǔ)芯片的選擇1.芯片類型的選擇用于存放需修改的程序、現(xiàn)場采集的數(shù)據(jù)、運(yùn)算的中間結(jié)果或其他臨時(shí)性的信息,應(yīng)選用既能讀又能寫的RAM芯片。對(duì)于存儲(chǔ)容量要求較小的應(yīng)用系統(tǒng)、專用設(shè)備和速度要求較高的場合應(yīng)盡量選用SRAM,因?yàn)镾RAM硬件電路簡單,速度也快;對(duì)于存儲(chǔ)容量要求較大的場合,如計(jì)算機(jī)內(nèi)存,則應(yīng)選擇DRAM。用于存放監(jiān)控程序、用戶的固定程序、固定的表格和常數(shù),則選用ROM存儲(chǔ)器,如智能儀表、家用電氣等設(shè)備的存儲(chǔ)器一般就采用ROM芯片。用于存放永久性的程序和數(shù)據(jù)的情況可選用ROM或PROM;其他需要頻繁讀寫的場合則應(yīng)優(yōu)先考慮選用EPROM、EEPROM或F1ash。2.芯片數(shù)量的確定及存儲(chǔ)器擴(kuò)展方式61芯片數(shù)量的確定要從存儲(chǔ)器的存儲(chǔ)單元個(gè)數(shù)和存儲(chǔ)單元位數(shù)兩個(gè)角度考慮,其原則是在滿足系統(tǒng)要求的前提下需要的芯片數(shù)量最少611)位擴(kuò)展3當(dāng)存儲(chǔ)芯片的每個(gè)單元的數(shù)據(jù)位數(shù)不能滿足存儲(chǔ)器所需要的位數(shù)時(shí),就要進(jìn)行位擴(kuò)展。存儲(chǔ)芯片根據(jù)單元位數(shù)劃分有1位片、4位片、8位片、16位片和32位片等,如3存儲(chǔ)器及接口設(shè)計(jì)微機(jī)原理與接口技術(shù)片就是8位片。如果采用1位片構(gòu)成16位存儲(chǔ)系統(tǒng)則需要16片,而如果采用8位片構(gòu)成16位存儲(chǔ)系統(tǒng)則只需要兩片。這些組合芯片可以采用位并聯(lián)的方法進(jìn)行連接,即各芯片并聯(lián)在一起,每個(gè)芯片占據(jù)存儲(chǔ)單元不同的數(shù)據(jù)位,從而構(gòu)成所需要的存儲(chǔ)位數(shù)。62例如,用1K×2位的存儲(chǔ)芯片構(gòu)成1K×8位的存儲(chǔ)器,所需芯片數(shù)為4片。擴(kuò)展連線方法如圖3.16所示62圖3.16位擴(kuò)展電路示意圖 圖3.16中4個(gè)芯片地址線都為A0~A9。讀取數(shù)據(jù)時(shí)在CS信號(hào)的作用下會(huì)同時(shí)選中4個(gè)芯片,每個(gè)芯片輸出兩位數(shù)據(jù)信息,組合成8位數(shù)據(jù)一起在數(shù)據(jù)總線上輸出,寫人數(shù)據(jù)過程同理。2)字?jǐn)U展字?jǐn)U展就是增加存儲(chǔ)單元的數(shù)目,也稱為地址擴(kuò)充。擴(kuò)展時(shí)用一些容量較小的存儲(chǔ)芯片采用地址串聯(lián)的方法組成容量較大的存儲(chǔ)器。每個(gè)芯片的片選線通過高位地址譯碼后分別生成,以免地址重疊。圖3.17是用4片1K×8位存儲(chǔ)芯片組成4K×8位的存儲(chǔ)器原理。圖3.17中4個(gè)芯片數(shù)據(jù)線都為D0~D7,且它們共用地址線A0~A9用于各芯片內(nèi)部尋址。地址總線最高兩位A10和A11輸人到2-4譯碼器編碼產(chǎn)生4個(gè)芯片的片選信號(hào)CS,這樣各芯片內(nèi)部地址雖然相同,但由于高兩位地址各不相同,所以每個(gè)芯片的物理地址并不3)字位擴(kuò)展在實(shí)際應(yīng)用中,在構(gòu)成存儲(chǔ)器時(shí)往往需要同時(shí)進(jìn)行字?jǐn)U展和位擴(kuò)展,這種擴(kuò)展方式稱為字位擴(kuò)展。圖3.18是用8片1K×4位的存儲(chǔ)芯片構(gòu)成4K×8位的存儲(chǔ)器原理。圖3.18中共用到了8片1K×4位的存儲(chǔ)芯片,這些芯片兩兩一組進(jìn)行位擴(kuò)展,共組成了4組1K×8位的存儲(chǔ)器。然后4組1K×8位的存儲(chǔ)器再進(jìn)行字?jǐn)U展,最終組成4K×8位的存儲(chǔ)器。這里地址線最高兩位作為片選地址譯碼生成4組1K×8位的存儲(chǔ)器的片選信號(hào),地址線A0~A9用于片內(nèi)尋址。圖3.17字?jǐn)U展電路示意圖圖3.18字位擴(kuò)展電路示意圖3.5.2存儲(chǔ)器的地址譯碼及地址分配前面已經(jīng)提到,一個(gè)容量較大的存儲(chǔ)器往往需要用多片容量較小的芯片組合擴(kuò)展來實(shí)現(xiàn),為了能準(zhǔn)確無誤地訪問到存儲(chǔ)器中的任意一個(gè)單元,必須先確定要訪問的單元在哪個(gè)存儲(chǔ)芯片中,這個(gè)工作需要由邏輯譯碼電路或譯碼器來完成。631.63常見的譯碼器有1nte18025、74LS138、74LS139、74LS155、74LS156等,其中74LS1383極為典型。圖3.19是74LS138引腳定義及輸人輸出信3當(dāng)一個(gè)選通端(G1)為高電平,另兩個(gè)選通端(G2A和G2B)為低電平時(shí),可將地址端(A、存儲(chǔ)器及接口設(shè)計(jì)微機(jī)原理與接口技術(shù)664圖3.1974LS138引腳及真值表B、C)的二進(jìn)制編碼在一個(gè)對(duì)應(yīng)的輸出端以低電平譯出。2.地址譯碼方案及地址分配譯碼器可以產(chǎn)生各存儲(chǔ)芯片的片選信號(hào),從而能夠決定各芯片的地址范圍。常用的譯碼方案有3種,即全譯碼方式、部分譯碼方式和線性譯碼方式。采用譯碼方式進(jìn)行存儲(chǔ)器擴(kuò)展時(shí)如果不需要全部存儲(chǔ)空間,可以將多余的地址線懸空,便于系統(tǒng)擴(kuò)展。1)全譯碼方式全譯碼方式是指全部的片選線(片選地址)都參加片選譯碼,這種方式不浪費(fèi)存儲(chǔ)器地址空間,每個(gè)存儲(chǔ)單元地址唯一,各存儲(chǔ)芯片的地址連續(xù)且不重疊。【例3.1】假設(shè)某系統(tǒng)有16條地址線,用4片16K×8位存儲(chǔ)芯片組成存儲(chǔ)系統(tǒng),則系統(tǒng)結(jié)構(gòu)圖及各芯片地址分配如圖3.20所示??梢钥闯?存儲(chǔ)單元的物理地址由片選地址和片內(nèi)地址兩部分組成,各芯片的片內(nèi)地址范圍都是相同的,所不同的就是地址線的最高兩位即片選信號(hào)不同,因此存儲(chǔ)器中各存儲(chǔ)單元的物理地址都是不同的。2)部分譯碼方式部分譯碼方式是指片選線(片選地址)中的部分線參與譯碼,產(chǎn)生存儲(chǔ)芯片片選信號(hào)。這種譯碼方式每個(gè)存儲(chǔ)單元的地址不唯一,因?yàn)闆]有參加譯碼的片選線可以為0也可以為1。6565圖3.20全譯碼電路及地址分配【例3.2】設(shè)一個(gè)有16根地址線的微機(jī)系統(tǒng),有2KB的RAM和1KB的ROM,分別選用1K×8位的存儲(chǔ)芯片,且RAM和ROM統(tǒng)一編址。試采用部分譯碼方式設(shè)計(jì)該微機(jī)的存儲(chǔ)系統(tǒng)。根據(jù)題意,每個(gè)存儲(chǔ)芯片大小都為1K×8位,其片內(nèi)尋址只需要使用低10位地址線 (A0~A9)。另外,3個(gè)存儲(chǔ)芯片共需要3個(gè)片選信號(hào)線,剩余6條高位地址線中任取兩根連接2-4譯碼器就可滿足要求。根據(jù)上述分析,可設(shè)計(jì)出如圖3.21所示的譯碼電路。圖3.21部分譯碼方式3個(gè)存儲(chǔ)芯片的地址范圍如表3.2所示。需要注意的是,A12~A15沒有參加譯碼,所以都可以是0或1,導(dǎo)致每個(gè)存儲(chǔ)單元都有16個(gè)地址。如果不用A10和A11譯碼,而選用其他高位地址線譯碼,結(jié)果會(huì)使存儲(chǔ)芯片地址不連續(xù)。另外,A11A10=11時(shí),由于沒有選中任何芯片,導(dǎo)致了地址空間的浪費(fèi)。表3.2芯片地址范圍譯碼輸入選中芯片芯片片內(nèi)地址芯片高4位地址芯片物理地址(X=0~F)A11A10=00RAM(1)0000H~03FFH0000B~1111Bx000H~x3FFHA11A10=01RAM(2)0000H~03FFH0000B~1111Bx400H~x7FFHA11A10=10RAM(3)0000H~03FFH0000B~1111Bx800H~xBFFHA11A10=11無無無無33線性譯碼方式是指直接用某根地址線作為存儲(chǔ)芯片的片選線。這種譯碼方式的優(yōu)點(diǎn)是存儲(chǔ)器及接口設(shè)計(jì)微機(jī)原理與接口技術(shù)不需要譯碼電路,所以線路簡單:缺點(diǎn)是地址可能不連續(xù),而且會(huì)造成存儲(chǔ)空間的浪費(fèi),只適用于存儲(chǔ)芯片較少的情況。66【例3.3】設(shè)一個(gè)具有16根地址線的微機(jī)系統(tǒng)有2KB的RAM,選用1K×8位的存儲(chǔ)芯片實(shí)現(xiàn)。試采用線性譯碼方式設(shè)計(jì)該微機(jī)的存儲(chǔ)系統(tǒng)66題目中只有兩個(gè)芯片需要連接,所以可以只利用一條片選線結(jié)合一個(gè)非門來生成兩個(gè)芯片的片選信號(hào)。具體電路連接及芯片地址范圍如圖3.22所示。圖3.22線性譯碼電路及地址分配注意,這里是把A10作為片選線,如果采用A15作為片選線,兩個(gè)芯片的地址范圍又是多少呢?請(qǐng)讀者自己分析。3.5.3存儲(chǔ)器接口設(shè)計(jì)舉例 【例3.4】設(shè)CPU有16根地址線,8根數(shù)據(jù)線,用MREQ作訪存控制信號(hào)(低電平有效),用WR作讀/寫控制信號(hào)(高電平為讀,低電平為寫)。其地址空間分配以下:最低8K地址為系統(tǒng)程序區(qū),與其相鄰的8K地址為用戶程序區(qū),最高4K地址空間為系統(tǒng)程序工作區(qū)。現(xiàn)有以下存儲(chǔ)器芯片可供選擇:4K×8位的ROM、8K×4位的RAM和4K×8位的RAM。另有一個(gè)3-8譯碼器可供使用。要求: (1)選擇適當(dāng)?shù)男酒愋图捌瑪?shù)。 (2)寫出各芯片的地址編碼范圍。 (3)確定芯片的片選邏輯,并畫出各器件之間的邏輯連接圖。解: (1)根據(jù)題目要求,最低8K地址空間為系統(tǒng)程序區(qū),一般只能進(jìn)行讀操作,應(yīng)該采用兩片4K×8位的ROM芯片:與其相鄰的8K地址為用戶程序區(qū),需要經(jīng)常被改寫,所以采用兩片8K×4位的或兩片4K×8位的RAM芯片,這里選擇8K×4位的芯片:最高4K地址空間為系統(tǒng)程序工作區(qū),也應(yīng)選擇且只能選擇4K×8位的RAM芯片。 (2)各芯片的地址范圍如圖3.23所示??梢钥闯?兩片4K×8位的ROM芯片組合進(jìn)行字?jǐn)U展,構(gòu)成8K×8位的ROM,所以系統(tǒng)程序區(qū)共需要A0~A12共13條地址圖3.23各芯片地址范圍線進(jìn)行內(nèi)部尋址;用戶程序區(qū)由兩個(gè)8K×4位的RAM芯片通過位擴(kuò)展構(gòu)成一個(gè)8K×8位ROM,也需A0~A12共13條地址線進(jìn)行內(nèi)部尋址;系統(tǒng)程序工作區(qū)由4K×8位的RAM組成,共需要A0~A11共12條地址線進(jìn)行內(nèi)部尋址。 (3)根據(jù)題意及(2)中的分析,地址線最高3位A13、A14和A15應(yīng)該作為3-8譯碼器的譯碼輸人信號(hào),輸出的Y0和A12進(jìn)行邏輯或后作為ROM1的片選信號(hào);A12取反后再與Y0進(jìn)行邏輯或,其結(jié)果作為ROM2的片選信號(hào);Y1同時(shí)作為RAM1和RAM2的片選信號(hào);A12取反后再與Y7進(jìn)行邏輯或,其結(jié)果作為RAM3的片選信號(hào)。經(jīng)過上述分析,得出芯片的片選邏輯及各器件之間的邏輯連接如圖3.24所示。圖3.24CPU與存儲(chǔ)芯片連接前面提到8K用戶程序區(qū)還可以采用兩片4K×8位的RAM芯片組成,其實(shí)這樣做邏輯連線更簡單,為什么?讀者可以自己畫出圖形分析解決。3.6高速緩沖存儲(chǔ)器隨著計(jì)算機(jī)技術(shù)的發(fā)展及應(yīng)用的普及,計(jì)算機(jī)處理的信息量越來越大、越來越復(fù)雜,因此對(duì)計(jì)算機(jī)的整體性能要求越來越高。與運(yùn)算速度越來越快的CPU相比,主存的存取速度顯然已經(jīng)成為計(jì)算機(jī)系統(tǒng)整體性能提升的主要瓶頸。在這樣的背景下,出現(xiàn)了高速緩沖存儲(chǔ)器(Cache)。673為了加快運(yùn)算速度,從80486開始的微處理器中增設(shè)一級(jí)或兩級(jí)與CPU處理速度相當(dāng)?shù)腃ache。目前微機(jī)系統(tǒng)中大多有兩級(jí)Cache;第1級(jí)Cache(簡記為L1)位于處理器內(nèi)部,分為數(shù)據(jù)緩存和指令緩存兩部分;第2級(jí)Cache(簡記為L2)有處于處理器內(nèi)部和外部兩種,容量比L1大一些,速度比L1慢一些,但要比內(nèi)存快。Cache與各種存儲(chǔ)器的性能比較673存儲(chǔ)器及接口設(shè)計(jì)微機(jī)原理與接口技術(shù)Cache概述Cache概述68Cache是位于CPU與內(nèi)存之間的臨時(shí)存儲(chǔ)器,是為了解決CPU運(yùn)算速度與內(nèi)存讀寫速度不匹配的矛盾而采用的一項(xiàng)技術(shù)。Cache的容量比內(nèi)存小得多,但是速度比內(nèi)存要快得多,與CPU相匹配。前面已經(jīng)介紹,主存一般采用容量較大但速度相對(duì)較慢的DRAM芯片,而Cache則一般采用容量較小但速度很快的SRAM芯片681.Cache的基本原理對(duì)大量典型程序運(yùn)行情況分析結(jié)果表明,在某一個(gè)較短的時(shí)間間隔內(nèi),CPU對(duì)一個(gè)程序指令和數(shù)據(jù)的訪問往往集中在主存的某個(gè)較小的空間范圍內(nèi)。這種在某段時(shí)間內(nèi)對(duì)存儲(chǔ)器局部范圍的頻繁訪問,而對(duì)范圍以外的存儲(chǔ)空間很少訪問的現(xiàn)象,叫做程序訪問的局部性原理。正是由于這種局部性原理,才使得將Cache技術(shù)應(yīng)用到計(jì)算機(jī)系統(tǒng)成為可能。2.Cache的工作過程在擁有Cache的計(jì)算機(jī)系統(tǒng)中,主存中保存所有的程序和數(shù)據(jù),而Cache中保存主存的部分副本。當(dāng)CPU訪問存儲(chǔ)器時(shí),首先通過一個(gè)主存—Cache的地址映射機(jī)構(gòu)將主存地址轉(zhuǎn)換成一個(gè)Cache地址。如果CPU要訪問的內(nèi)容已經(jīng)在Cache中,則從Cache中將要訪問的內(nèi)容讀出并送CPU,這種情況稱為命中Cache;若CPU要訪問的內(nèi)容不在Cache中,即沒有命中Cache,那么CPU必須直接訪問主存,從主存中將內(nèi)容讀出并送人CPU,從而完成了一次CPU的訪存操作。在正常情況下,CPU對(duì)Cache的存取命中率可達(dá)95%以上。Cache的工作原理框圖如圖3.25所示。圖3.25Cache工作原理框圖在Cache存儲(chǔ)器組織中,Cache和主存都按塊進(jìn)行組織,每一個(gè)塊由若干個(gè)字或字節(jié)組成,且主存的塊和Cache的塊大小相同,它們之間的數(shù)據(jù)交換都以塊為單位進(jìn)行。在沒有命中Cache的情況下,CPU訪存結(jié)束后,還需將本次所訪問的內(nèi)容所在主存塊的全部單元內(nèi)容調(diào)人Cache中。若當(dāng)前Cache已滿,則需要采用一定的規(guī)則將Cache中的一個(gè)舊塊替換3.6.2Cache的映射方式前面已經(jīng)介紹,在沒有命中Cache的情況下,CPU訪存結(jié)束后,還需將本次所訪問的內(nèi)容所在的整個(gè)區(qū)塊從主存復(fù)制到Cache中。為此,需要在主存和Cache之間建立一種映像關(guān)系,即地址映射。地址映射即是應(yīng)用某種策略把主存地址定位到Cache中,在需要時(shí)將主存塊按照事先建立的地址映射關(guān)系裝人對(duì)應(yīng)的Cache塊中。常用的Cache地址映射方式有3種,即直接映射方式、全相聯(lián)映射方式和組相聯(lián)映射1.直接映射方式直接映射方式是指每個(gè)主存塊只能映射到Cache中的一個(gè)特定塊,是一種多對(duì)一的映射關(guān)系,如圖3.26所示。直接映射方式實(shí)現(xiàn)簡單,硬件成本低。缺點(diǎn)是每個(gè)主存塊在Cache中只有一個(gè)固定的位置可存放,容易產(chǎn)生沖突,導(dǎo)致頻繁地發(fā)生替換,降低了命中率。另外,這種方式也使得Cache中的空塊不能得到充分利用。2.全相聯(lián)映射方式全相聯(lián)映射是指每個(gè)主存塊可以映射到Cache中的任意一塊,也是一種多對(duì)一的映射關(guān)系,如圖3.27所示。圖3.26直接映射圖3.27全相聯(lián)映射這種映射方式可以從已被占滿的Cache中替換出任一舊塊。顯然這種方式更靈活,命中率也更高,減少了沖突。但訪問Cache時(shí)需要和Cache所有塊逐一比較才能判斷出所訪問的內(nèi)容是否在Cache中,所需邏輯電路較多,成本較高。3.組相聯(lián)映射方式組相聯(lián)映射是指主存的一個(gè)塊映射到Cache的有限的地方,這種映射方式是對(duì)直接映射和全相聯(lián)映射的一種折中。在這種方式下,一個(gè)Cache分為許多組,在一個(gè)組里有兩個(gè)或多個(gè)區(qū)塊,主存的區(qū)塊映射到Cache的某個(gè)對(duì)應(yīng)的組中,但這個(gè)區(qū)塊可能出現(xiàn)在這個(gè)組內(nèi)的任何地方,如圖3.28所示。3.6.3Cache的替換策略69CPU在訪存時(shí)如果沒有命中Cache,就需要選擇舊的區(qū)塊替換出去,保證Cache中的內(nèi)容是當(dāng)前CPU所需的,從而獲得較高的Cache命中率,這要靠Cache替換策略來管理。常用的替換策略有先進(jìn)先出(F1FO)策略、最不經(jīng)常使用(LFU)策略、最近最少使用(LRU)策略和隨機(jī)替換策略6933先進(jìn)先出策略總是將最先調(diào)人Cache的字塊替換出來。這種方法開銷小,容易實(shí)現(xiàn),但存儲(chǔ)器及接口設(shè)計(jì)微機(jī)原理與接口技術(shù)770圖3.28組相聯(lián)映射有可能使一些經(jīng)常訪問的塊也被替換出去。2.最不經(jīng)常使用策略最不經(jīng)常使用策略是將一段時(shí)間內(nèi)被訪問次數(shù)最少的Cache塊替換出去。為實(shí)現(xiàn)這種策略,需要為Cache的每個(gè)字塊都設(shè)置一個(gè)計(jì)數(shù)器,從0開始計(jì)數(shù),Cache每命中一次,被命中塊的計(jì)數(shù)器值加1。當(dāng)需要替換時(shí),把計(jì)數(shù)值最小的Cache塊替換出去,同時(shí)將對(duì)應(yīng)的計(jì)數(shù)器清零。但由于計(jì)數(shù)值最小的字塊有可能是剛換進(jìn)來的,所以這種方法有可能把剛換進(jìn)來的塊又馬上替換出去。3.最近最少使用策略最近最少使用策略是將近期最少訪問的塊替換出去。為實(shí)現(xiàn)這種策略,也需要為Cache的每個(gè)字塊都設(shè)置一個(gè)計(jì)數(shù)器,Cache每命中一次,就把所命中塊的計(jì)數(shù)器清零,其他各塊的計(jì)數(shù)器增1。當(dāng)需要替換時(shí),把計(jì)數(shù)值最大的那塊替換出去。這種策略保護(hù)了剛復(fù)制到Cache中的新數(shù)據(jù)塊,保證Cache具有較高命中率。4.隨機(jī)替換策略隨機(jī)替換策略是隨機(jī)地選取Cache中的一塊替換出去。這種策略易于實(shí)現(xiàn),速度較快,但被替換出去的塊可能馬上又要訪問,所以會(huì)降低Cache的命中率。3.6.4Cache的數(shù)據(jù)更新方法前面介紹的Cache替換策略主要是針對(duì)Cache的讀操作,但實(shí)際應(yīng)用中CPU還需要向Cache寫人內(nèi)容。而Cache的內(nèi)容是主存部分內(nèi)容的副本,寫人操作會(huì)導(dǎo)致Cache與主存的內(nèi)容不一致,為解決這一問題,需要采用適當(dāng)?shù)腃ache數(shù)據(jù)更新方法來管理。常用的Cache更新方法有寫回法、全寫法和寫一次法。1.寫回法當(dāng)CPU對(duì)Cache寫命中時(shí),只修改Cache的內(nèi)容而不立即寫人主存,只有此塊被換出時(shí)才寫回主存。對(duì)于Cache寫未命中,由于此后對(duì)此塊的多次讀/寫訪問的可能性很大,所以寫回法的處理是將內(nèi)存塊復(fù)制到Cache后再對(duì)其進(jìn)行修改,同樣也只有該塊被換出時(shí)才寫回主存。為支持
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版房地產(chǎn)合作開發(fā)項(xiàng)目協(xié)議細(xì)則版B版
- 2024年道路運(yùn)輸安全協(xié)議3篇
- 2024模具采購合同標(biāo)準(zhǔn)范本
- 2022-2024年山東中考英語試題匯編:書面表達(dá)
- 2024年貸款實(shí)踐合同樣本
- 2024年園林園藝養(yǎng)護(hù)管理、綠化工程勞務(wù)分包合同樣本9篇
- 2024年度房地產(chǎn)銷售業(yè)績達(dá)成及傭金分配合同范本3篇
- 2024年零售商品寄售協(xié)議標(biāo)準(zhǔn)文本一
- 2024年版書刊印刷加工服務(wù)委托協(xié)議版B版
- 2024年生態(tài)公園圍欄制作與安裝工程合同
- (完整版)聚乙烯課件
- 中國雷暴日多發(fā)區(qū)特征及雷電發(fā)展變化
- 20232023山東省高中學(xué)業(yè)水平測試會(huì)考題及答案政治
- 獨(dú)一味(正式稿2)
- 山西太原晉陽湖總體規(guī)劃城市設(shè)計(jì)景觀方案文本
- 干部業(yè)績相關(guān)信息采集表
- 八年級(jí)上綜合性學(xué)習(xí) 我們的互聯(lián)網(wǎng)時(shí)代 練習(xí)卷(含答案)
- 中西文化概論(第三版)PPT完整全套教學(xué)課件
- 食品批發(fā)銷售記錄制度
- 2024學(xué)年上海市浦東新區(qū)物理高二上期末聯(lián)考試題含解析
- 粉塵應(yīng)急演練記錄
評(píng)論
0/150
提交評(píng)論