컴퓨터 CPU의 캐시메모리 역할과 동작원리

정보통신 기술/컴퓨터 기술정보

컴퓨터 CPU의 캐시메모리 역할과 동작원리

리챠드후앙 2021. 1. 25. 22:38
반응형

우리가 알고 있는 일반적인 CACHE 메모리의 역할은

속도가 빠른 CPU와 속도가 느린 RAM 장치 사이에서

속도차이에서 오는 병목현상을 해소하기 위하여 사용하고 있습니다.

 

컴퓨터 사용자가 프로그램을 동작시키면

RAM(주기억장치)에서 로딩 후 CPU는 해당 프로그램을

CACHE 메모리에 저장해 두었다가 필요할 때 가져와 사용합니다.

 

그래서 메인 메모리보다 동작 속도가 아주 빠르며,

이 때문에 컴퓨터 시스템의 속도 향상에 매우 중요한 역할을 합니다.

캐시 메모리의 유뮤에 따른 시스템의 동작원리를 보면

 

1) 캐시 기억장치가 없는 시스템의 경우에는  

중앙처리장치가 명령어와 데이터를 인출하기 위해

주기억장치에 접근한 뒤,

주기억장치에서 명령어와 데이터를 획득,

중앙처리장치내 레지스터에 저장합니다.

2) 캐시 기억장치가 있는 시스템의 경우에는

CPU가 명령어와 데이터 인출을 위해서 CACHE 기억장치에 먼전 접근하고

CPU가 찾으려고 하는 데이터를 CACHE 기억장치에서 찾으면,

'적중(hit)'라고 하고, 찾지 못하면 '실패(miss)' 라고 합니다.

반응형

적중(hit)시에는 주기억장치에 방문하지 않고,

캐시기억장치의 정보를 CPU로 전송합니다.

 

실패(miss)시에는 주기억장치에 방문하여

캐시기억장치에 저장하고, 정보를 가져오게 됩니다.

CACHE에 저장하는 이유는 나중에 다시 사용 할 수도 있기 떄문입니다.

 

[Miss의 경우] 특정 번지 워드 요청시,

캐시기억장치가 빈 상태이기 떄문에 실패상태가 됩니다.

[hit의 경우] CPU1000번지 워드를 불러들일 때,

캐시기억장치에 먼저 접근하여 1000번지 워드가 있는지 확인하고,

있다면 주기억장치에 접근할 필요없이 바로 가져올 수 있습니다.


CPU에는 이러한 캐시기억장치(메모리) 2~3개 정도가 있습니다.

이것을 L1, L2, L3 캐시 메모리라 하고, 여기에서 L은 ‘Level’을 의미합니다.

L1 CACHE는 중앙처리장치 칩 안에 내장되어,

중앙처리장치에 가장 근접되어 있으며

가장 빠르게 동작하는 CACHE 입니다.

 

데이터 사용/참조에 가장 먼저 사용되고, 보통 8~64KB 정도의

용량 캐시들 중에서 용량이 가장 작습니다.

 

여기서 데이터를 찾지 못하면,

이제 L2 CACHE 메모리로 넘어갑니다.
 
L2 CACHE
도 중앙처리장치내 속해 있는 메모리이나,

L1 CACHE 보다는 속도가 느립니다.

 

일반적으로 64Kb~4MB 정도가 사용됩니다.

한때 L2 CACHE가 없는 셀러론이 나오긴 했으나,

심각한 속도저하가 발생하여

지금의 대부분 CPUL2 CACHE를 장착합니다.

 
L3 Cashe
는 모든 코어가 공용으로 사용하는 공유 메모리입니다.

L1, L2 보다 속도는 느리지만 가장 큰 메모리를 가지고 있습니다.

 

요즘 웬만한 프로세서에서는 L2 CACHE 로 충분히 커버할 수 있어

L3 CACHE는 달지 않는 추세이지만,

그래도 속도개선에 중요한 역할을 함으로

L3 CACHE CPU가 아닌 메인보드에 내장되는 경우가 더 많습니다.

 

이상 캐시메모리에 대해서 알아보았습니다.

조금이나마 도움이 되셨으면 좋겠습니다

 

반응형