最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【計算機(jī)基礎(chǔ)Ep31】唐朔飛計算機(jī)組成原理教材梳理(二十):P109提高訪存速度的措施

2023-03-25 19:10 作者:躺坑老碧的學(xué)習(xí)瞎記  | 我要投稿

(合計2068字,用時60min——)

第四章 存儲器

4.3高速緩沖存儲器

4.3.1概述

a.問題的提出

Cache簡介——

  1. 問題:

    1. 在多體并行存儲系統(tǒng)中,由于I/O設(shè)備向主存請求的級別高于CPU訪存,這就出現(xiàn)了CPU等待I/O設(shè)備訪存的現(xiàn)象,致使CPU空等一段時間,甚至可能等等幾個主存周期,從而降低了CPU的工作效率;

    2. 主存速度的提高始終跟不上CPU的發(fā)展;

  2. 用途:

    1. 為了避免CPU與I/O設(shè)備爭搶訪存,可在CPU與主存之間加一級緩存,這樣,主存可將CPU要取的信息提前送至緩存,一旦主存在與I/O設(shè)備交換時,CPU可直接從緩存中讀取所需信息,不必空等而影響效率;

    2. 由高速緩存Cache來解決主存與CPU速度的不匹配問題;

  3. 作用:Cache的出現(xiàn)使CPU可以不直接訪問主存,而與高速Cache交換信息。

b.Cache的工作原理

Cache的工作原理——

  1. 組成:

    1. 主存由2^n個可編址的字主存,每個字有唯一的n位地址;

    2. 為了與Cache映射,將主存與緩存都分成若干塊,每塊內(nèi)又包含若干個字,并使它們的塊大小相同(即塊內(nèi)的字?jǐn)?shù)相同);

    3. 主存的地址分成兩段:

      1. 高m位表示主存的塊地址,

      2. 低b位表示塊內(nèi)地址,

      3. 2^m=M表示主存的塊數(shù);

    4. 緩存的地址分成兩段:

      1. 高c位表示緩存的塊號,

      2. 低b位表示塊內(nèi)地址,

      3. 2^c=C表示緩存塊數(shù);

    5. 塊長:2^b=B反映了塊的大小,稱B為塊長。

原理:

  1. CPU讀取主存某字:

    1. CPU訪問Cache命中:所需要的字已在緩存中,即可直接訪問Cache(CPU與Cache之間通常一次傳送一個字);

    2. CPU訪問Cache不命中:所需的字不再Cache內(nèi),此時需將該字所在的主存整個字塊一次調(diào)入Cache中(Cache與主存之間是字塊傳送);

    3. 命中率:CPU要訪問的信息已在Cache內(nèi)的比率;

  2. 說明:

    1. 如果主存塊已調(diào)入緩存塊,則稱該主存塊與緩存塊建立了對應(yīng)關(guān)系;

    2. 由于緩存的塊數(shù)C遠(yuǎn)小于主存的塊數(shù)M,因此,一個緩存塊不能唯一地、永久地只對應(yīng)一個主存塊,故每個緩存塊需設(shè)一個標(biāo)記,用來表示當(dāng)前存放的是哪一個主存塊,該標(biāo)記的內(nèi)容相當(dāng)于主存塊的編號;

    3. CPU讀信息時,要將主存地址的高m位(或m位中的一部分)與緩存塊的標(biāo)記進(jìn)行比較,以判斷所讀的信息是否已在緩存中。

計量:

  1. 因素:Cache的容量與塊長是影響Cache效率的重要因素,通常用“命中率”來衡量Cache的效率;

  2. 公式:

    1. 命中率:h=N/(Nc+Nm)——在一個程序執(zhí)行期間,設(shè)Nc為訪問Cache的總命中次數(shù),Nm為訪問主存的總次數(shù),命中率為h;

    2. 平均訪問時間:ta=htc+(1-h)tm——tc為命中時的Cache訪問時間,tm為未命中時的主存訪問時間,1-h表示未命中率,Cache-主存系統(tǒng)的平均訪問時間為ta;

    3. 訪問效率:e=(tc/ta)x100%={tc/[htc+(1-h)tm]}x100%——以較小的硬件代價使Cache-主存系統(tǒng)的平均訪問時間ta越接近于tc越好,e表示效率;

  3. 結(jié)論:為提高訪問效率,命中率h越接近1越好。

總結(jié):

  1. Cache容量與CPU命中率——

    1. 一般而言,Cache容量越大,其CPU的命中率就越高;

    2. 容量沒必要太大,太大會增加成本,而且當(dāng)Cache容量達(dá)到一定值時,命中率已不因容量的增大而有明顯的提高;

    3. Cache容量是總成本價與命中率的折中值;

  2. 塊長與CPU命中率:取決于各程序的局部特性——

    1. 當(dāng)塊由小到大增長時,起初會因局部性原理使命中率有所提高;

    2. 局部性原理:

      1. 在已被訪問字的附近,近期也可能被訪問,因此,增大塊長,可將更多有用字存入緩存,提高其命中率;

      2. 倘若繼續(xù)增大塊長,命中率很可能下降,這是因為所裝入緩存的有用數(shù)據(jù)反而少于被替換掉的有用數(shù)據(jù)。

c.Cache的基本結(jié)構(gòu)

模塊——

  1. Cache存儲體:Cache存儲體以塊為單位與主存交換信息,為加速Cache與主存之間的調(diào)動,主存大多采用多體結(jié)構(gòu),且Cache訪存的優(yōu)先級最高;

  2. 地址映射變換機(jī)構(gòu):地址映射變換機(jī)構(gòu)是將CPU送來的主存地址轉(zhuǎn)換為Cache地址;

  3. 替換機(jī)構(gòu):當(dāng)Cache內(nèi)容已滿,無法接受來自主存塊的信息時,就由Cache內(nèi)的替換機(jī)構(gòu)按一定的替換算法來確定應(yīng)從Cache移出哪個塊返回主存,而把新的主存塊調(diào)入Cache;

  4. Cache的讀寫操作:

    1. 讀操作:當(dāng)CPU發(fā)出主存地址后,首先判斷該存儲是否在Cache中,若命中,直接訪問Cache,將該字送至CPU,若未命中,一方面要訪問主存,將該字傳送給CPU,與此同時,要將該字所在的主存塊裝入Cache,如果此時Cache 已裝滿,就要執(zhí)行替換算法,騰出空位才能將新的主存塊調(diào)入;

    2. 寫操作:對Cache塊寫入的信息,必須與被映射的主存塊內(nèi)的信息完全一致,一致性辦法——

      1. 寫直達(dá)法(Write-through):又稱為存直達(dá)法(Store-through):寫操作時既寫入Cache又寫入主存,數(shù)據(jù)一致,增加訪存次數(shù);

      2. 寫回法(Write-back):又稱為拷回法(Copy-back):寫操作時只把數(shù)據(jù)寫入Cache而不寫入主存,但當(dāng)Cache數(shù)據(jù)被替換出去時才寫回主存,數(shù)據(jù)不一致。

d.Cache的改進(jìn)

從一個緩存發(fā)展:

  1. 單一緩存和兩級緩存;

  2. 統(tǒng)一緩存和分立緩存。


【計算機(jī)基礎(chǔ)Ep31】唐朔飛計算機(jī)組成原理教材梳理(二十):P109提高訪存速度的措施的評論 (共 條)

分享到微博請遵守國家法律
湖南省| 措美县| 华坪县| 吕梁市| 原平市| 榆社县| 涿鹿县| 奇台县| 湟中县| 钟山县| 扬州市| 桃江县| 巴南区| 蓬莱市| 板桥市| 大新县| 鄂尔多斯市| 延庆县| 平顶山市| 镇沅| 泗水县| 固原市| 夏邑县| 天峻县| 苍南县| 南漳县| 比如县| 金秀| 鄂托克前旗| 芜湖县| 竹山县| 湘西| 永和县| 禹州市| 清丰县| 绥江县| 九龙城区| 科技| 平安县| 阜康市| 新竹县|