캐시 버스 란 무엇입니까?
캐시 버스는 컴퓨터 프로세서가 캐시 메모리와 통신하는 데 사용하는 전용 고속 버스입니다. 후면 버스라고도하며 시스템 버스보다 훨씬 빠른 속도로 작동합니다. 캐시 버스는 프로세서 코어를 캐시에 직접 연결합니다. 프로세서 버스와 독립적으로 실행되어 더 넓고 덜 제한적인 경로를 통해 데이터를 전송합니다. 캐시 버스는 대부분의 최신 프로세서에서 자주 액세스하는 데이터를 읽거나 수정하는 데 필요한 시간을 줄이기 위해 사용됩니다.
1980 년대 캐시 메모리는 보통 프로세서 칩 자체가 아닌 마더 보드에있었습니다. 캐시는 일반 시스템 메모리와 마찬가지로 프로세서 버스를 통해 액세스되었습니다. 캐시 메모리의 양은 종종 매우 작았으며 선택적 시스템 성능 향상으로 만 제공되었습니다.
1990 년대 초 프로세서 속도와 효율성이 증가함에 따라 프로세서 버스는 병목 현상이 발생했습니다. 빠른 캐시 메모리는 훨씬 느린 시스템 메모리와 입출력 작업이 완료 될 때까지 기다리지 않고 프로세서와 상호 작용할 수있는 방법이 필요했습니다. 1990 년대 중반, 대부분의 새 프로세서는이 문제를 해결하기 위해 이중 버스 아키텍처를 채택했습니다. 캐시에 직접 액세스하기 위해 고속 캐시 버스가 작성되었습니다. 이 버스는 다른 용도로는 사용되지 않습니다. 다른 모든 데이터 전송은 앞면 버스라고도하는 느린 프로세서 버스를 사용합니다. 프로세서는 두 버스를 동시에 사용할 수 있으므로 성능이 크게 향상됩니다.
초기 듀얼 버스 설계는 마더 보드에있는 캐시 메모리를 자주 사용했습니다. 대량의 온칩 캐시는 생산 수율 문제로 인해 아직 비용 효율적이지 않았습니다. 이후의 설계는 종종 수율이 향상되면서 내부 및 외부 캐시의 혼합을 통합했습니다. 최신 프로세서는 일반적으로 많은 양의 내부 캐시를 사용합니다. 대부분 8KB 만있는 구형 디자인에 비해 8MB 이상이 포함됩니다. 전체 캐시가 온칩 인 현대적인 설계에서 캐시 버스는 일부 프로세서에서 512 비트의 매우 넓은 데이터 경로로 상당히 짧을 수 있습니다. 버스는 일반적으로 프로세서 자체와 동일한 속도로 실행됩니다. 결과적으로 캐시 내용을 매우 빠르게 읽거나 수정할 수 있습니다.
멀티 코어 프로세서의 각 코어는 자체 캐시를 갖거나 하나의 큰 공통 캐시를 공유 할 수 있습니다. 두 경우 모두 캐시 버스는 각 코어를 적절한 캐시 메모리에 연결합니다. 각 프로세서 코어에 별도의 캐시가있는 경우 일관성 문제가 발생할 수 있습니다. 예를 들어, 한 코어가 캐시에서 데이터를 업데이트하면 다른 캐시에있는 해당 데이터의 다른 사본이 오래되거나 "stale"이됩니다. 이러한 유형의 문제를 해결할 수있는 한 가지 방법은 때때로 코어 간 버스라고하는 특수한 유형의 캐시 버스를 사용하는 것입니다. 이 버스는 모든 캐시를 서로 연결하여 각 캐시가 다른 캐시의 작업을 모니터링 할 수 있도록합니다. 하나의 공유 데이터를 업데이트하면 다른 하나는 즉시 새로운 내용을 반영 할 수 있습니다.