天天看點

cpu緩存相關内容筆記

一,cpu緩存架構

cpu緩存相關内容筆記

1.level-1 data cache: 一級資料緩存

2.level-1 inst cache: 一級指令緩存

3.MMU: 記憶體管理單元

4.TLB(translation lookaside buffer): 轉換後援緩存

5.level-2 cache:二級緩存

6.level-3 cache:三級緩存

二.處理器讀取資料過程

cpu緩存相關内容筆記
cpu緩存相關内容筆記
  1. CPU根據虛拟位址嘗試從一級緩存(存放的是虛拟位址的索引)中讀取資料;
  2. 如果一級緩存中查找不到,則需向MMU請求資料;
  3. MMU從TLB中查找虛拟位址的緩存(換言之,

    TLB

    是負責改進虛拟位址到實體位址轉換速度、存放虛拟位址的緩存);
  4. 如果TLB中存在該虛拟位址的緩存,則MMU将該虛拟位址轉化為實體位址,如果位址轉換失敗,則發生缺頁(圖中的

    fault

    分支),由核心進行處理,見上文所述;如果位址轉換成功,則從二級緩存(存放的是實體位址的索引)中讀取;如果二級緩存中也沒有,則需要從三級緩存甚至實體記憶體中請求;
  5. 如果TLB中不存在該虛拟位址的緩存,則MMU從實體記憶體中的轉換表(

    translation tables

    ,也稱為頁表

    page tables

    )中擷取,同時存入TLB;(注意,這個操作是硬體實作的,可以由MMU通過硬體直接從實體記憶體中讀取);
  6. 跳到第4步。

繼續閱讀