計算機系統原理 cache容量計算

2022-07-10 06:00:15 字數 1381 閱讀 6312

假定主存位址位數為32位,按位元組編址,主存和cache之間採用4-路組相聯對映方式,主存塊大小為4個字,每字32位,採用直寫(write throght)方式和lru替換策略,則能存放32k字資料的cache的總容量至少應有( )位。

得分/總分

a.4672k

b.1168k

c.1184k

d.4736k

正確答案:c

解析: c、cache共有32k字/4字=8k行,因為採用4-路組相聯,因而共有8k/4=2k組,組號佔11位;每個主存塊為4字=4×32位=16b,故塊內位址佔4位。因此,標誌佔32-11-4=17位。4路組相聯方式下,lru替換演算法需要每行有2位lru位 (因為要表示0-3的數字吧);直寫(write throght)方式無需修改位(dirty bit)。因而cache總容量為8k×(1+17+2+4×32)=1184k位。

cpu使用快取記憶體(dcache)時,它對記憶體的的寫操作有兩種模式:寫穿(write-throuht)、寫回(write-back)。

寫穿(write-throuht)模式:也叫直寫式

該模式下,cpu對主存寫資料時,不經過dcache直接寫到記憶體,此時對於寫的實現比較簡單,如果系統只用寫穿模式的話,dcache則變成了讀快取了。

寫回(write-back)模式:

什麼是寫回 

cpu寫入資料時,不直接將資料寫入記憶體,而是寫入cache,當cache資料被替換出去時才寫回主存。 

此時存在乙個問題,並不是所有的cache中的資料都被修改過,因此沒必要把所有替換出去的資料都重新寫入主存。 

為了表示哪些資料被修改過(dcache中是資料和主存中的資料是否不一致),cache中每一塊增加了乙個記錄資訊位,cpu修改過的cache時,設定此記錄資訊位(此時資料塊為髒的(dirty), cache資料寫入到主存時清理此位(此時資料塊為乾淨的(clean)。 

有了次記錄資訊位,資料從cache替換到主存時只替換髒的資料塊即可),

為什麼有寫回模式 

大家都是知道cache速度遠大於ram(主存)。通過dcache吸收系統的寫操作,在必要的時候再統一寫入主存,從而減少頻繁的相對較慢的對主存的寫操作,這樣明顯能加速系統。同樣的思想在主存與磁碟中也存在。

有效位1位必存在。

如果是寫回法:多個1位髒位;如果是直寫法,不用多髒位;

在組相聯對映中,如果採用lru替換,2路組相聯對映:有1位lru位,4路組相聯對映,有2位lru位

計算機系統原理

計算機硬體是由運算器,儲存器,控制器和輸入輸出裝置這幾個基本部分組成的計算機是乙個能夠執行操作命令的裝置,指令是指構成計算機軟體的基本元素。系統有unix,linux和windows。gpl協議 免費開源 核心 連線硬體,硬體驅動 shell 操作核心硬體 外圍應用 goume等 power she...

計算機系統

一陰一陽之為道。早在幾千年我國古人就知道天地萬物皆由正反兩個東西組成的。自從人類進入電氣時代,隨著電子元件的快速發展,各種裝置隨之誕生了。一些元件 例如閘流體 可以根據電壓的高低變化自行導 通或者關斷。如果是高電壓導通,就規定是1 低電壓導通規定是0,那麼眾多的這些元件組成的乙個整體就可以0 和1來...

計算機系統

做加法時,主要判斷是否溢位 無符號加溢位條件 cf 1 帶符號加溢位條件 of 1 舉例 若n 8,計算107 46 107 0110 1011 46 0010 1110 01001 1001 溢位標誌of 1 零標誌zf 0 符號標誌sf 1 進製標誌cf 0 無符號 sum 153,因為cf 0...