프로세서 캐시 L1, L2 및 L3은 모두 SRAM으로 구성됩니까? L1, L2 및 L3 모두 SRAM으로 구성되어

프로세서 캐시 L1, L2 및 L3 모두 SRAM으로 구성되어 있습니까? 사실이라면, 왜 L1은 L2보다 빠르며 L2는 L3보다 빠릅니까? 내가이 부분을 읽을 때 나는이 부분을 이해하지 못했다.



답변

일반적으로 그들은 모두 SRAM으로 구현됩니다.

(IBM의 POWER 및 zArchitecture 칩은 L3에 DRAM 메모리를 사용합니다. 이것은 로직과 동일한 유형의 프로세스 기술로 구현되어 DRAM과 동일한 칩에 고속 로직을 통합 할 수 있기 때문에 내장형 DRAM이라고합니다. POWER4의 경우, 칩 L3은 eDRAM을 사용했으며, POWER7은 프로세싱 코어와 동일한 칩에 L3을 가지고 있습니다.)

그들은 SRAM을 사용하지만, 모두 SRAM을 사용하지는 않습니다. 같은 SRAM 설계. L2 및 L3 용 SRAM은 크기 (제한된 제조 가능한 칩 크기로 주어진 용량을 증가 시키거나 주어진 용량의 비용을 줄이기 위해) 반면에 L1에 대한 SRAM은 속도를 위해 최적화 될 가능성이 더 크다.

더 중요한 것은 액세스 시간이 스토리지의 물리적 크기와 관련되어 있다는 것입니다. 2 차원 레이아웃을 사용하면 실제 액세스 대기 시간이 대충 용량의 제곱근에 비례합니다. (비 균일 캐시 아키텍처는이를 이용하여 낮은 대기 시간에 캐시의 서브 세트를 제공합니다. 최근 Intel 프로세서의 L3 슬라이스는 비슷한 효과를 나타내며 로컬 슬라이스의 히트가 지연 시간이 현저히 짧습니다.)이 효과는 DRAM 캐시를 더 빠르게 만들 수 있습니다 DRAM이 물리적으로 작기 때문에 고용량의 SRAM 캐시보다

또 다른 요소는 대부분의 L2 캐시와 L3 캐시가 대부분의 L1 캐시가 태그와 데이터에 동시에 액세스하는 태그와 데이터의 직렬 액세스를 사용한다는 것입니다. 이것은 전력 최적화입니다 (L2 누락 률은 L1 누락 률보다 높기 때문에 데이터 액세스가 낭비 될 가능성이 더 높습니다.) 일반적으로 L2 데이터 액세스는 용량과 관련하여 더 많은 에너지를 필요로하며 L2 캐시는 일반적으로 더 높은 연관성 이는 더 많은 데이터 항목이 추론 적으로 읽혀 져야 함을 의미합니다). 데이터에 액세스하기 전에 태그 일치를 기다리지 않고도 데이터를 검색하는 데 필요한 시간이 추가됩니다. (L2 액세스는 일반적으로 L1 미스가 확인 된 후에 만 ​​시작되기 때문에 L1 미스 탐지의 대기 시간이 합계 L2의 액세스 대기 시간).

또한 L2 캐시는 물리적으로 실행 엔진과 멀리 떨어져 있습니다. L1 데이터 캐시를 실행 엔진에 가깝게두면 (L1 히트의 일반적인 경우가 빠르기 때문에) 일반적으로 L2를 더 멀리 배치해야합니다.