日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

计算机组成原理——Cache与主存的地址映射

發布時間:2024/7/19 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 计算机组成原理——Cache与主存的地址映射 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Cache–主存的地址映射

由主存地址映象到cache地址稱為地址映射

cache的基本結構:

Cache的工作過程:
CPU發出一個地址,同時發給主存和cache的地址映射機構,CPU會從主存中取出字還是從cache中取出字,主存將塊號送入主存cache地址變換機構,如果命中,就將主存地址轉化為cache地址,從cache存儲體中找到對應的字,然后通過數據總線送到CPU,完成一次讀寫過程;如果沒有命中,這個字就不能從cache中取,而應該從主存中取出字送給CPU,與此同時,如果cache中有空間,可以裝進,就將這個字所在的塊拿到cache中。如果空間不夠,不能裝進cache,cache替換機構就將cache中不常用的塊拿出,將該字的塊替換進cache中。

主存與cache的映射過程:
當緩存接收到CPU送來的主存地址后,只需要根據cache字塊地址字段(c位)找到cache字塊,然后判斷cache字塊地址與主存地址的主存塊標記是否相符,若符合且有效位為“1”,表示cache塊已經和主存的某個塊建立對應關系(cache命中);若不符合或有效位為“0”,就從主存中讀入新的字塊代替舊的字塊,同時將信息送往CPU,并修改cache標記,將有效位置1。


1.全相聯映射(靈活性大的映象關系)

主存中的任一塊映象到緩存中的任一塊,將主存中一個塊的地址(塊號)與塊的內容(字)一起存與cache的行中,其中塊地址存與cache行的標記部分。cache的數據塊大小稱為行,主存的數據塊大小稱為塊。cache與主存之間的數據交換以塊為單位,CPU與cache之間的數據交換以字為單位。

優點:靈活,命中率高
缺點:主存字塊標記為全部塊標記,訪問cache時,主存的字塊標記要和cache的全部標記位進行比較,所需的邏輯電路很多,成本較高,實際的cache還要采用各種措施來減少地址的比較次數。

例題:某內存64塊,cache有4塊,一個塊為4個字節,按字節編址,采用全相聯映射方式,寫出cache和主存地址格式。

全相聯映射方式中主存的主存塊標記是全部塊標記,,根據主存和cache的對應關系,一個塊為4個字節,能得出主存和cache的塊內地址的位數都是2位,根據cache的塊數是4,得出cache塊的位數是2。因為主存的塊數為64塊,得出主存塊標記的位數是6位。

2.直接映射(固定的方式)

主存中的任意塊映射到緩存中的唯一塊,每個主存塊只與一個緩存塊相對應。

i為緩存塊號,j為主存塊號,C為緩存塊數,映射關系式:i = j mod C
特點:不靈活,每個主存塊只能與固定對應某個緩存塊,即使還空著許多位置也不能使用。
主存地址的格式:

例題:某內存64塊,cache有4塊,一個塊為4個字節,按字節編址,采用直接映射方式,寫出cache和主存地址格式。

我們一個個的分析,先分析cache
cache:4塊=16字節=2的4次方字節,cache的總位數是4。
主存:64塊=64*4字節=2的8次方字節,主存的總位數是8

由題意得:一個塊4個字節,就是2的2次方,可以得出cache的塊內地址為2位,又因為cache的總位數是4,所以得出cache塊有(4-2)位

主存塊標記的位數就相當于主存的總位數減去cache的總位數,就是4位,最后就求出cache和主存的地址格式

3.組相聯映射(上述兩種映象的折中)

組間直接映射,組內全相聯映射
主存塊j按模Q(組數)映射到緩存的第i組中任一塊,cache分為Q組,每組R塊
對應關系有:i = j mod Q
i為緩存的組號,j為主存的塊號

組內n塊,組相聯映射定義為n路組相聯

例題:主存容量512K×16位,cache容量4096×16位,塊長為4個16位的字,按字地址訪存寫出二路組相聯映射下主存的地址格式。

cache地址的位數:4096=2的12次方,12位
主存地址的位數:512K=2的19次方,19位

由塊長可得塊內地址位:2位
二路組相聯,cache的組數:2的10次方/2=2的9次方。所以主存的區內組號是9位
主存字塊標記的位數:19-2-9=8

4.段相聯映射

段相聯映射是直接映射和全相聯映射相結合的方式,將主存和cache都分成若干段,并且使他們每段所包含的塊數都相等,段之間采用全相聯映射,段內塊之間采用直接映射。

當段數與cache塊數相等時(即每段只包含一塊),為全相聯映射
當段數為1時,為直接映射

總結

以上是生活随笔為你收集整理的计算机组成原理——Cache与主存的地址映射的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。