嵌入式系統(tǒng)原理與應(yīng)用 課件 第3章 存儲系統(tǒng)組成與設(shè)計_第1頁
嵌入式系統(tǒng)原理與應(yīng)用 課件 第3章 存儲系統(tǒng)組成與設(shè)計_第2頁
嵌入式系統(tǒng)原理與應(yīng)用 課件 第3章 存儲系統(tǒng)組成與設(shè)計_第3頁
嵌入式系統(tǒng)原理與應(yīng)用 課件 第3章 存儲系統(tǒng)組成與設(shè)計_第4頁
嵌入式系統(tǒng)原理與應(yīng)用 課件 第3章 存儲系統(tǒng)組成與設(shè)計_第5頁
已閱讀5頁,還剩75頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

嵌入式系統(tǒng)原理與設(shè)計第3章存儲系統(tǒng)組成與設(shè)計第3章01020304存儲器簡介常用存儲器存儲系統(tǒng)設(shè)計高速緩存系統(tǒng)設(shè)計/01存儲器簡介存儲原理存儲器是利用存儲介質(zhì)的不同穩(wěn)定狀態(tài)來存儲信息存儲介質(zhì)特點:①兩種穩(wěn)定狀態(tài);②方便檢測;③容易相互轉(zhuǎn)換。存儲器分類1.按存儲介質(zhì)分類

(1)半導(dǎo)體存儲器:速度快,用作內(nèi)存。

◆記憶原理:觸發(fā)器、電容(靜態(tài)、動態(tài))

◆雙極型晶體管(ECL、TTL、I2L)

◆場效應(yīng)管型MOS(PMOS、NMOS、CMOS)

(2)磁表面存儲器:容量大,用作外存。

(3)光存儲器:可靠性高,保存時間長。存儲器分類2.按存儲方式分類(1)隨機訪問存儲器RAM

存儲器的任意單元都可隨機訪問。

訪問時間與存儲單元的位置無關(guān)(2)只讀存儲器ROM

正常工作時只讀,能隨機讀出,不能隨機寫入?!鬗ROM:只讀◆PROM:一次寫◆可多次改寫ROM:EPROM、E2PROM存儲器分類2.按存儲方式分類(3)順序存取存儲器◆信息以文件形式組織,一個文件包含若干個塊,一個塊包含若干字節(jié);◆存儲時以數(shù)據(jù)塊為單位存儲,數(shù)據(jù)的讀取時間與數(shù)據(jù)物理位置關(guān)系極大;

◆速度慢,容量大,成本低;◆磁帶、電荷耦合器件CCD、VCD存儲器分類3.按存儲器信息的可保存性分(1)斷電后是否丟失數(shù)據(jù)◆易失性存儲器特點:斷電后,信息就丟失。如SRAM◆非易失性存儲器(永久性存儲器)特點:斷電后,信息不丟失。如磁盤(2)讀出后是否保持?jǐn)?shù)據(jù)

◆破壞性存儲器特點:讀出時,原存信息被破壞,需重寫。如:DRAM

◆非破壞性存儲器特點:讀出時,原存信息不被破壞。如:SRAM存儲器分類4.按在計算機系統(tǒng)中的作用分類

(1)高速緩沖存儲器:位于主存和CPU之間

(2)主存儲器:一般存在于CPU主板上,常用DRAM構(gòu)建,用來存儲計算

機運行期間較常用的大量的程序和數(shù)據(jù)。

(3)輔助存儲器:不能由CPU的指令直接訪問,必須通過專門的程序或?qū)?/p>

門的通道把所需的信息與主存進行成批交換,調(diào)入主存后才能使用。存儲器性能指標(biāo)

(1)存儲容量:存儲器所能存儲的二進制信息總量。

(2)速度:主存的一項重要技術(shù)指標(biāo)。◆存取時間:又稱訪問時間,是指從啟動一次存儲器操作到完成該操作所經(jīng)歷的時間?!舸鎯χ芷?指連續(xù)啟動兩次獨立的存儲體操作所需的最小時間間隔。它包括存儲器的存取時間和自身恢復(fù)時間存儲器性能指標(biāo)(3)帶寬(存儲器數(shù)據(jù)傳輸率、頻寬):

存儲器單位時間所存取的二進制信息的位數(shù)。帶寬=存儲器總線寬度/存取周期(4)價格(每位價格)存儲容量越大,存取速度越快,存儲器的價格也就越高。

除上述指標(biāo)外,影響存儲器性能的還有功耗、可靠性等因素。/02常用存儲器ROM存儲器ROM存儲芯片的基本結(jié)構(gòu)舉例:用三極管構(gòu)成4*4ROM存儲器ROM存儲器一次性編程只讀存儲器PROMPROM內(nèi)部是通過保險絲一樣的結(jié)構(gòu)進行內(nèi)部連接,只能編程一次。存儲位元的基本結(jié)構(gòu)有兩種:全“1”熔斷絲型、全“0”肖特基二極管型,ROM存儲器光擦除可編程只讀存儲器EPROM可重復(fù)擦除和寫入,寫入數(shù)據(jù)時,需要過紫外線照射芯片上的石英玻璃窗口將原存儲內(nèi)容抹去FG浮空柵,CG為控制柵,當(dāng)FG有電子積累時,該MOS管的開啟電壓變得很高,即使CG為高電平,該管仍不能導(dǎo)通,這種狀態(tài)代表存儲0。反之,F(xiàn)G無電子積累時,MOS管的開啟電壓較低,當(dāng)CG為高電平時,該管可以導(dǎo)通,這種狀態(tài)代表存儲1用EPROM實現(xiàn)組合邏輯www.islide.cc17RAM存儲器SRAM利用觸發(fā)器來存儲信息T1通導(dǎo),T2截止,為“1”狀態(tài);T2通導(dǎo),T1截止,為“0”狀態(tài)。RAM存儲器SRAM保持

字驅(qū)動線W處于低電位時,T5、T6截止,切斷了兩根位線與觸發(fā)器之間的聯(lián)系。寫入操作

寫入“1”:位線D上加低電位,位線D上加高電位,即B點為高電位,A點為低電位,導(dǎo)致T1導(dǎo)通,T2截止,保存了信息“1”。

寫入“0”:位線D上加高電位,位線D上加低電位,即B點為低電位,A點為高電位,導(dǎo)致T2導(dǎo)通,T1截止,保存了信息“0”。RAM存儲器SRAM讀操作若原存信息為“1”,即T1導(dǎo)通,T2截止。這時B點為高電位,A點為低電位,分別傳給兩根位線,使得位線D為低電位,位線D為高電位,表示讀出的信息為“1”。若原存信息為“0”,即T2導(dǎo)通,T1截止。這時A點為高電位,B點為低電位,分別傳給兩根位線,使得位線D為高電位,位線D為低電位,表示讀出的信息為“0”。RAM存儲器DRAM利用和晶體管集電極相連的電容的充放電來存儲信息定義:C上有電荷—“1”

C無電荷—“0”保持:字線w低,T截止,切斷了C的通路,

C上電荷狀態(tài)保持不變。當(dāng)然由于

漏電存在,需刷新。RAM存儲器DRAM寫入操作寫入“1”,位線D上加高電位,對電容C充電。寫入“0”,位線D上加低電位,電容C通過T放電。讀操作當(dāng)T導(dǎo)通以后,若原存信息為“1”,電容C上的電荷通過T輸出到位線上,在位線上檢測到電流,表示所存信息為“1”。若原存信息為“0,電容C上幾乎無電荷,在位線上檢測不到電流,表示所存信息為“0”。RAM存儲器由于有漏電阻存在,電容上的電荷不可能長久保存,需要周期地對電容進行充電,以補充泄漏的電荷,這個過程稱為DRAM刷新。從上一次對整個存儲器刷新結(jié)束到下一次對整個存儲器全部刷新一遍的時間間隔稱為刷新周期,刷新周期主要取決于電容的放電速度。集中式刷新,在刷新周期內(nèi)集中安排刷新時間,在刷新時間內(nèi)停止CPU的讀寫操作;分散式刷新,將系統(tǒng)的存取周期分成兩部分,前半期可用于正常讀寫或保持,后半期用于刷新;異步式刷新,把刷新操作平均分配到整個最大刷新間隔內(nèi)進行。RAM存儲器由于有漏電阻存在,電容上的電荷不可能長久保存,需要周期地對電容進行充電,以補充泄漏的電荷,這個過程稱為DRAM刷新。從上一次對整個存儲器刷新結(jié)束到下一次對整個存儲器全部刷新一遍的時間間隔稱為刷新周期,刷新周期主要取決于電容的放電速度。集中式刷新,在刷新周期內(nèi)集中安排刷新時間,在刷新時間內(nèi)停止CPU的讀寫操作;分散式刷新,將系統(tǒng)的存取周期分成兩部分,前半期可用于正常讀寫或保持,后半期用于刷新;異步式刷新,把刷新操作平均分配到整個最大刷新間隔內(nèi)進行。RAM存儲器假定DRAM允許的刷新周期為2ms,存儲器的存取周期為0.5μs,容量為16K×1位,存儲矩陣為128×128,在2ms內(nèi)要對128行全部刷新一遍。集中式刷新需要在2ms的周期末尾,對整個DRAM的128行刷新一遍,所需時間為128×0.5μs=64μs。RAM存儲器分散式刷新將系統(tǒng)的存取周期分成兩部分,前半期可用于正常讀寫或保持,后半期用于刷新。存儲芯片的存取周期:0.5

s系統(tǒng)存取周期應(yīng):1

sRAM存儲器異步式刷新把刷新操作平均分配到整個最大刷新間隔內(nèi)進行,相鄰兩行的刷新間隔為最大刷新間隔時間÷行數(shù)。在前述的128×128矩陣?yán)又校?ms內(nèi)分散地將128行刷新一遍,即每隔15.5μs(2000μs÷128≈15.5μs)刷新一行。閃存Flash閃存位元結(jié)構(gòu)與EPROM隧道氧化層的位元結(jié)構(gòu)類似。由兩個相互重疊的多晶硅柵組成,浮柵用來存儲電荷,以電荷多少來代表所存儲的數(shù)據(jù);控制柵作為選擇柵極起控制與選擇的作用。Flash和E2PROM的最大區(qū)別在于Flash按扇區(qū)操作,E2PROM則按字節(jié)操作,二者尋址方法不同。Flash的電路結(jié)構(gòu)較簡單,同樣容量占芯片面積較小,數(shù)據(jù)密度更高,降低了成本。閃存Flash分為NORFlash和NANDFlash。NOR表示或非門電路,NAND表示與非門電路。兩者主要存在以下幾點差異:(1)讀寫操作單位不同,NOR閃存以字節(jié)為單位,而NAND閃存以頁為單位(2)讀寫速度不同,NOR閃存隨機讀取速度快,NAND閃存編程和擦除速度更快。(3)存儲密度不同,NAND閃存單位面積的存儲密度更高。(4)接口復(fù)雜度及可靠性不同,NOR閃存接口簡單,可靠性高,而NAND閃存需

要用一些信道糾錯算法來保證數(shù)據(jù)的可靠性。(5)耐久性方面,NAND閃存編程/擦除次數(shù)通常大于NOR閃存。磁表面存儲器1.磁表面存儲器把某些磁性材料均勻地涂敷在載體的表面上,形成厚度為0.3~5μm的磁層,將信息記錄在磁層上,構(gòu)成磁表面存儲器。2.磁表面存儲器存儲信息的原理利用磁性材料在不同方向的磁場作用下,形成的兩種穩(wěn)定的剩磁狀態(tài)來記錄信息。磁表面存儲器3.磁表面存儲器信息編碼磁表面存儲器4.磁表面存儲器的讀寫操作◆磁頭:磁表面存儲器的讀寫元件。利用磁頭來形成和判

別磁層中的不同磁化狀態(tài)。◆磁頭是由鐵氧化體或坡莫合金等高導(dǎo)磁率的材料制成的

電磁鐵,磁頭上繞有讀寫線圈,可以通過不同方向的電流?!魧懘蓬^:用于寫入信息的磁頭。讀磁頭:用于讀出信息的磁頭。復(fù)合磁頭:既可用于讀出,又可用于寫入的磁頭。磁表面存儲器磁表面存儲器的寫操作磁表面存儲器磁表面存儲器的讀操作機械硬盤◆磁盤存儲器由驅(qū)動器、控制器和盤片三部分組成◆磁盤驅(qū)動器又稱磁盤機或磁盤子系統(tǒng)用于控制磁頭與

盤片的運動及讀寫。是獨立于主機之外的完整裝置?!魴C械硬盤是最常

見的磁性存儲器機械硬盤◆磁盤控制器主機與磁盤驅(qū)動器之間的接口,通常是插在主機總線插槽中的一塊印刷電路板。磁盤控制器的作用:接受主機發(fā)出的命令與數(shù)據(jù),轉(zhuǎn)換為驅(qū)動器的控制命令和數(shù)據(jù)格式,控制驅(qū)動器的操作。

機械硬盤◆盤片:存儲信息的介質(zhì)盤片磁道扇間空隙扇區(qū)機械硬盤◆記錄面:磁盤片表面稱為記錄面。盤片的上下兩面都能記錄信息?!舸诺溃河涗浢嫔弦幌盗型膱A。每個盤片表面通常有幾十到幾百個磁道。

磁道的編址:從外向內(nèi)依次編號,最外一個同心圓叫0磁道,最里面的

一個同心圓叫n磁道,n磁道里面的圓面積不用來記錄信息。◆扇區(qū):將盤面沿垂直于磁道的方向劃分成若干個扇區(qū)。扇區(qū)的編號方法:

可以連續(xù)編號,也可間隔編號?!糁妫▓A柱面):n個面上位于同一半徑的磁道形成一個圓柱面。磁盤

組的圓柱面數(shù)等于一個盤面的磁道數(shù)。機械硬盤◆磁盤地址的表示

例如,若某盤片組有8個記錄面,每個盤面分成256條磁道,8個扇區(qū);當(dāng)主機要訪問其中第5個記錄面上,第65條磁道,第7個扇區(qū)的信息時,則主機應(yīng)向磁盤控制器提供如下的地址信息:

0100000l101111磁道號盤面號扇區(qū)號機械硬盤【例3-1】某機械硬盤的磁盤組有6片磁盤,每片有兩個記錄面,最上最下兩個面不用。存儲區(qū)域內(nèi)徑22cm,外徑33cm,道密度為40道/cm,內(nèi)層位密度400位/cm,轉(zhuǎn)速2400轉(zhuǎn)/分,平均尋道時間為10ms。問:(1)共有多少柱面?(2)盤組總存儲容量是多少?(3)數(shù)據(jù)傳輸率多少?(4)平均尋址時間是多少?機械硬盤解:(1)有效存儲區(qū)域=16.5-11=5.5(cm)

因為道密度=40道/cm,所以共有40×5.5=220道,即220個圓柱面。(2)內(nèi)層磁道周長為2πR=2×3.14×11=69.08(cm)

每道信息量=400位/cm×69.08cm=27632位=3454B

每面信息量=3454B×220=759880B

盤組總?cè)萘浚?59880B×l0=7598800B=7.25MB(3)磁盤數(shù)據(jù)傳輸率Dr=r×N,N為每條磁道容量,r為磁盤轉(zhuǎn)速。

又N=3454B,r=2400轉(zhuǎn)/60秒=40轉(zhuǎn)/秒,故

Dr=r×N=40×3454B=13816B/s。機械硬盤解:(4)磁盤旋轉(zhuǎn)一圈的時間為t=60/2400*1000=25ms平均尋址時間Ta=10ms+25/2ms=22.5ms固態(tài)硬盤固態(tài)硬盤結(jié)構(gòu)固態(tài)硬盤固態(tài)硬盤局限:1)閃存只提供讀、寫和擦除3種操作,且這三種操作性能不對稱,讀最快,寫次之,擦除最慢;2)閃存是按頁、塊、平面的結(jié)構(gòu)進行組織;頁是讀/寫的最小單位,一般為2/4/8KB;塊是擦除的最小單位,一個塊一般包含64/128個頁;3)閃存擦除后只能寫一次,即所謂的erase-before-write,這造成閃存不支持原地更新;4)閃存每個存儲單元的編程/擦除(P/E)次數(shù)有限,超過該P/E次數(shù)后,閃存存儲數(shù)據(jù)不再可靠。固態(tài)硬盤固態(tài)硬盤優(yōu)點:(1)速度快。固態(tài)硬盤無需通過磁頭的機械旋轉(zhuǎn)來訪問數(shù)據(jù),是機械硬盤存取速度的數(shù)倍。(2)耐用防震。固態(tài)硬盤內(nèi)部不存在任何機械部件,由于碰撞震動導(dǎo)致數(shù)據(jù)丟失

的可能性很小。(3)無噪聲。得益于無機械部件,固態(tài)存儲器工作噪聲值為0分貝。(4)重量輕。同樣存儲容量的固態(tài)硬盤體積要更小,便于攜帶。(5)功耗低。固態(tài)硬盤無機械結(jié)構(gòu),功耗來源主要是內(nèi)部芯片,因此功耗低。(6)工作環(huán)境要求低。傳統(tǒng)硬盤受限于其機械結(jié)構(gòu),溫度過低會導(dǎo)致金屬的鈍化,

溫度過高會引起機械部件膨脹,這限制了傳統(tǒng)硬盤的工作環(huán)境溫度。/03存儲系統(tǒng)設(shè)計主存儲器的讀寫主存數(shù)據(jù)傳輸示意圖主存儲器的讀寫主存和CPU之間的連接示意圖主存儲器的讀寫主存的基本讀寫操作示意圖存儲系統(tǒng)的大小端1.兩種多字節(jié)數(shù)據(jù)排列順序◆高端優(yōu)先(bigendian)

數(shù)值的最高字節(jié)存儲在單元X中,次高字節(jié)存儲在單元X+1中◆低端優(yōu)先(littleendian)

最低字節(jié)存儲在單元X中,次低字節(jié)存儲在X+1中存儲系統(tǒng)的大小端1.兩種多字節(jié)數(shù)據(jù)排列順序多字節(jié)存儲的另一個值得關(guān)注的問題是對齊問題。例如,摩托羅拉68040CPU能同時讀入4個字節(jié)的數(shù)據(jù),然而,這4個字節(jié)必須在連續(xù)的單元中,它們的地址除了最低兩位不同之外,其余的位均相同。這也就是說,該CPU可以同時讀單元100、101、102和103,但不能同時讀單元101、102、103和104。后者需要兩個讀操作,一個操作讀100、101、102和103,另一個操作讀104、105、106和107;其中100、105、106和107都是不需要的讀操作,這浪費了CPU的性能。www.islide.cc52存儲器字位擴展位擴展【例3-2】用4K×2位的RAM存儲芯片構(gòu)成4K×8位的存儲器。需要四個4K×2位芯片。12位地址A0~A11、片選線CS和讀寫使能線R/W都連接到各個芯片對應(yīng)線上。8位數(shù)據(jù)總線D0~D7分成4組,每組包括2跟線存儲器字位擴展字?jǐn)U展【例3-2】用4K×2位的RAM存儲芯片構(gòu)成4K×8位的存儲器。需要16K×8位的芯片4個。用16位地址線中的低14位A13~A0進行存儲芯片片內(nèi)尋址,高兩位地址A15、A14用于選擇芯片。存儲器從0000H開始連續(xù)編址第一片地址:0000H~3FFFH第二片地址:4000H~7FFFH第三片地址:8000H~BFFFH第四片地址:C000H~FFFFH存儲器字位擴展字位擴展字位擴展的一般方法為:選擇芯片現(xiàn)進行位擴展,擴展成組,使得組的位數(shù)達(dá)到要求;再用組進行字?jǐn)U展,按照字?jǐn)U展的方法將將字?jǐn)?shù)加到目標(biāo)字?jǐn)?shù)。擴展為

M>m,N>n)容量的存儲器,進行字位擴展共需要的芯片數(shù)量為:存儲器字位擴展【例3-4】用2K×4位的RAM存儲器芯片構(gòu)成4K×8位的存儲器。4K×8位存儲器需要4個2K×4位的存儲芯片構(gòu)成。先將4個芯片兩兩組合進行位擴展組成2K×8位的存儲組。當(dāng)A11地址線為0時,選擇前兩個芯片構(gòu)成的2K×8位存儲器組,A11地址線為0時,選擇后兩個芯片構(gòu)成的2K×8位存儲器組。地址線的A10~A0為片內(nèi)地址,同時接在4個芯片上。數(shù)據(jù)輸出8位數(shù)據(jù),D0~D7整體連接如圖所示。設(shè)存儲器從0000H開始連續(xù)編址,則四塊芯片的地址分配為:

第一組芯片地址范圍為:0000H~07FFH第二組芯片地址范圍為:0800H~0FFFH存儲器字位擴展分層存儲系統(tǒng)設(shè)計存儲器分層結(jié)構(gòu)分層存儲系統(tǒng)設(shè)計對分層存儲系統(tǒng)的性能評價(1)命中率H命中率為CPU訪問存儲系統(tǒng)時,在M1中找到所需數(shù)據(jù)的概率。若在程序執(zhí)行過程中,訪問M1和M2的次數(shù)分別為N1和N2,則命中率H定義為:分層存儲系統(tǒng)設(shè)計對分層存儲系統(tǒng)的性能評價(2)平均訪問時間TA假設(shè)訪問在M1命中需要的訪問時間為TA1;當(dāng)訪問在M1不命中,則需向M2發(fā)出訪問請求。此時,需要把M2中包含請求數(shù)據(jù)的信息塊傳送到M1,CPU才能得到需要的數(shù)據(jù)。假設(shè)M2的訪問時間是TA2,把一個信息塊從M2傳送到M1的時間為TB,則M1不命中時的數(shù)據(jù)訪問時間為:其中

稱為失效開銷,平均訪問時間為:分層存儲系統(tǒng)設(shè)計對分層存儲系統(tǒng)的性能評價(3)存儲系統(tǒng)的平均位價格C上式中,S1和C1是M1的容量和每位價格,S2和C2是M2的容量和每位價格。/04高速緩存系統(tǒng)設(shè)計緩存基本原理1.Cache設(shè)計的依據(jù)Cache設(shè)計的依據(jù)是程序執(zhí)行時訪問存儲器具有局部性特點,簡稱局部性。局部性又分為時間局部性和空間局部性。時間局部性是指正在訪問的指令和數(shù)據(jù),很有可能不久以后該指令和數(shù)據(jù)可能再次被訪問??臻g局部性是指正在訪問的指令和數(shù)據(jù)的臨近存儲單元在不久以后很有可能被訪問。緩存基本原理2.有Cache下的主存讀訪問過程數(shù)據(jù)交換的大小CPU與Cache:字節(jié)/半字/字?jǐn)?shù)據(jù)交換大?。簤K(通常4~256個字)緩存基本原理3.Cache的關(guān)鍵性能指標(biāo)Cache性能評價的關(guān)鍵指標(biāo)是Cache命中率,它是指CPU要訪問的內(nèi)容在Cache中的比率。具體計算方法如下,設(shè)程序執(zhí)行期間訪問Cache的命中次數(shù)為Nc,失配次數(shù)為Nm,則Cache的命中率H為:主存與Cache的地址映像規(guī)則直接映像直接映像:將主存塊號除以Cache塊數(shù),余數(shù)即為該主存塊在Cache中的位置;也就是說,映射到同一個Cache塊的主存塊號相對Cache塊數(shù)“同余”主存地址分成三段:標(biāo)識、塊號、塊內(nèi)偏移量標(biāo)識數(shù)據(jù)主存與Cache的地址映像規(guī)則全相聯(lián)映像主存的任意塊可以映像到Cache的任意塊,即無論是主存塊到Cache塊,還是Cache塊到主存塊,都是多對多的映射主存地址分成兩段:標(biāo)識、塊內(nèi)偏移量主存與Cache的地址映像規(guī)則組相聯(lián)映像組相聯(lián)映像方式是先將Cache塊分為若干組,每組中有相同數(shù)量的Cache塊,再將主存塊按與Cache的組數(shù)進行分組,主存中的任何一組只能映像到Cache中的某一固定組(類似直接映像),但同一組中的主存塊可放置在Cache中指定組內(nèi)的任意塊中(類似全相聯(lián)映像)主存與Cache的地址映像規(guī)則采用組相聯(lián)映像方式時,主存地址分成三段:標(biāo)識、組號、塊內(nèi)偏移量,與直接映像的標(biāo)識、塊號、塊內(nèi)偏移量作用類似設(shè)主存有2n塊,Cache有2m塊,包括G=2g個組,可以看到:若g=0、G=1,即Cache只有1個組,共包含2m個塊,此時為全相聯(lián)映像Cache。若g=m、G=2m,即Cache有2m個組,每個組只有1個塊,此時為直接映像Cache。若0<g<m,即Cache有2g個組,每個組里有k=2m-g個塊,此時稱這種組相聯(lián)映像方式為k路組相聯(lián)Cache。主存與Cache的地址映像規(guī)則【例3-5】某采用組相聯(lián)映像的主存-Cache系統(tǒng)中,主存容量為1MB,Cache的容量為16KB,按256B分塊,Cache采用4路組相聯(lián)。請確定主存、Cache的地址結(jié)構(gòu)?!咧鞔嫒萘?MB=220B,∴主存地址長度為20位;∵Cache塊大小為256B=28B,∴主存可分為220/28=212個塊,塊內(nèi)偏移地址長8位?!逤ache容量16KB=214B,∴Cache地址長度為14位;∵Cache塊大小為256B=28B,∴Cache可分為214/28=26個塊,塊內(nèi)偏移地址長8位。∵Cache每組包含4塊,∴Cache共分為26/4=24=16組,組地址長度為4位。進一步,主存20位地址的從高到低的構(gòu)成為:8位標(biāo)識位、4位組號位,8位塊內(nèi)偏移地址位。續(xù):訪問流程www.islide.cc711.用主存地址的4位組號位訪問對應(yīng)的Cache組2.檢查對應(yīng)組包含的塊的標(biāo)識位與地址碼的標(biāo)識位是否相等3.若相等,則繼續(xù)檢查有效位為14.若第2/3步的結(jié)果都為真,判斷命中,根據(jù)主存塊內(nèi)偏移地址訪問命中的cache塊5.否則,cache訪問不命中(失配),用主存塊號(標(biāo)識+組號)訪問主存

Cache的替換算法與寫策略1.當(dāng)訪存Cache不命中時,必須從主存中調(diào)入所需塊。此時,若Cache已滿,則必須按一定算法從Cache中選擇一個塊將其替換出去,然后才能調(diào)入新塊。隨機替換法為均勻使用一組中的各塊,隨機替換法隨機地選擇被替換的塊。隨機替換策略實際上是不要什么算法,只需要隨機產(chǎn)生一個符合映像規(guī)則的塊號,然后將此塊從Cache中替換出去即可。Cache的替換算法與寫策略先進先出法先進先出法(FirstInFirstOut,FIFO)是按塊調(diào)入Cache的先后決定替換順序,即需要替換時,總是淘汰最先調(diào)入Cache的塊。最近最少使用法最近最少使用法(Least

Recently

Used,LRU)是把近期最少使用的Cache塊替換出去。對Cache的每個塊設(shè)置一個計數(shù)器,當(dāng)塊命中后,其對應(yīng)的計數(shù)器清零,其它塊計數(shù)器增1。當(dāng)需要替換時,比較符合映像規(guī)則的塊的計數(shù)器值,將計數(shù)值最大的塊替換出。Cache的替換算法與寫策略最不經(jīng)常使用法最不經(jīng)常使用法(LeastFrequentlyU

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論