Cache与主存的三种映射
直接映射
主存儲器中一塊只能映射到Cache的一個特定的塊中。
具體步驟:
主存與高速緩存分成相同大小的數據塊,主存容量是緩存容量的整數倍
將主存空間按照緩存的容量分成區,主存中每一區的塊數與緩存中總塊數相等
主存中某區的一塊存入緩存時只能存入緩存中指定的位置,如果指定位置已被其他塊的數據占用,則直接覆蓋。
優點:最簡單的地址映射方式,硬件簡單,成本低,地址變換速度快,而且不涉及算法替換問題。
缺點:不夠靈活,Cache的存儲空間得不到充分利用,每個主存塊只有一個固定位置可存放,容易產生沖突,Cache淘汰換出頻繁,需要頻繁的從主存讀取數據到Cache,使得Cache效率下降。
全相聯映射
主存儲器的任意一塊可以映射到Cache中的任意一塊。
具體步驟:
主存與高速緩存分成相同大小的數據塊
主存中的某一數據可以裝入空閑高速緩存塊的任意一塊中,如果主存數據塊已滿,可以根據LRU替換算法或者隨機替換算法替換其中一塊。
**優點:**比較靈活,主存的各塊可以映射到Cache的任一塊中,Cache的利用率高,塊沖突概率低,只要淘汰Cache中的某一塊,即可調入主存的任一塊。
**缺點:**由于Cache比較電路的設計和實現比較困難,這種方式只適合于小容量Cache采用。
組相聯映射
直接映射和全相連映射的折中方案。
**具體步驟:**主存和Cache都分組,主存中一個組內的塊數和Cache中的分組數相同,組間采用直接映射,組內采用全相連映射。
**優缺點:**是前兩種方法的折中方案,兼顧二者的優點,盡量避免二者的缺點,因而得到普遍采用。
總結
以上是生活随笔為你收集整理的Cache与主存的三种映射的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [计算机网络 谢希仁] 第一章
- 下一篇: [密码学] 公钥密码基础与RSA