-
L1緩存
鎖定
- 中文名
- L1緩存
- 外文名
- L1 Cache
- 具 有
- 一級緩存和二級緩存
- 集 成
- CPU內部
目錄
- 1 作用
- 2 數據緩存設計
- ▪ AMD一級數據緩存設計
- ▪ Intel一級數據緩存設計
L1緩存作用
但是一級緩存和二級緩存大,它究竟有多少好處呢?你得告訴我們經銷商,實際上你得用最普通的話跟他講。所以我們給他們打個比方,説這個就好比你開汽車的時候,後備箱是整個的二級緩存,假如説扶手裏面有一個小箱子,那是你的一級緩存。一級緩存大好在哪裏呢?就是你隨時開車的時候,隨時在裏面都可以取東西了。假如你一級緩存小的話,你還得把車停下來,到後備箱裏取東西。
首先我們來簡單瞭解一下一級緩存。所有主流處理器大都具有一級緩存和二級緩存,少數高端處理器還集成了三級緩存。其中,一級緩存可分為一級指令緩存和一級數據緩存。一級指令緩存用於暫時存儲並向CPU遞送各類運算指令;一級數據緩存用於暫時存儲並向CPU遞送運算所需數據,這就是一級緩存的作用。
那麼,二級緩存的作用又是什麼呢?簡單地説,二級緩存就是一級緩存的緩衝器:一級緩存製造成本很高因此它的容量有限,二級緩存的作用就是存儲那些CPU處理時需要用到、一級緩存又無法存儲的數據。同樣道理,三級緩存和內存可以看作是二級緩存的緩衝器,它們的容量遞增,但單位制造成本卻遞減。需要注意的是,無論是二級緩存、三級緩存還是內存都不能存儲處理器操作的原始指令,這些指令只能存儲在CPU的一級指令緩存中,而餘下的二級緩存、三級緩存和內存僅用於存儲CPU所需數據。
L1緩存數據緩存設計
根據工作原理的不同,主流處理器所採用的一級數據緩存又可以分為實數據讀寫緩存和數據代碼指令追蹤緩存2種,它們分別被AMD和Intel所採用。不同的一級數據緩存設計對於二級緩存容量的需求也各不相同,下面讓我們簡單瞭解一下這兩種一級數據緩存設計的不同之處。
L1緩存AMD一級數據緩存設計
AMD採用的一級緩存設計屬於傳統的“實數據讀寫緩存”設計。基於該架構的一級數據緩存主要用於存儲CPU最先讀取的數據;而更多的讀取數據則分別存儲在二級緩存和系統內存當中。做個簡單的假設,假如處理器需要讀取“AMD ATHLON 64 3000+ IS GOOD”這一串數據(不記空格),那麼首先要被讀取的“AMDATHL”將被存儲在一級數據緩存中,而餘下的“ON643000+ISGOOD”則被分別存儲在二級緩存和系統內存當中(如下圖所示)。
需要注意的是,以上假設只是對AMD處理器一級數據緩存的一個抽象描述,一級數據緩存和二級緩存所能存儲的數據長度完全由緩存容量的大小決定,而絕非以上假設中的幾個字節。“實數據讀寫緩存”的優點是數據讀取直接快速,但這也需要一級數據緩存具有一定的容量,增加了處理器的製造難度(一級數據緩存的單位制造成本較二級緩存高)。