2011-11-25 3 views
2

숙제를하고 있지만 총 캐시 미스 계산 방법을 잘 모르겠습니다. 나는 그것을 이해하려고 노력해 왔지만 그것은 나에게 의미가 없다. 일부 Mips 코드를 받았고 캐시 누락 횟수를 계산해야합니다. 여기에 문제가 있습니다 :직접지도 캐시 및 캐시 미스

직접지도 캐시. 우리는 1024 블록의 다이렉트 맵 캐시를 제공받습니다. 각 블록은 MIPS 워드 (32 비트)입니다. 쓰기 미스가 발생할 때마다 캐시는 쓰기를 사용합니다. . 메인 메모리는 2^30 단어로 구성됩니다. 처음에는 캐시가 비어 있습니다.
다음 명령 시퀀스에 대한 총 캐시 누락 횟수를 결정합니다.

lw $s0, 4($sp) 
lw $s0, 8($sp) 
sw $s0, 8($sp) 
sw $s1, 4($sp) 
lw $s0, 4($sp) 

나는 대답을 찾고 있지 않다. 숙제를 할 때 더 많은 문제가 생기기 때문에 이것을하는 법을 배우고 싶습니다. 나는 이것에 연습을하고 싶다. 그 동안 나는이 주제를 연구하여 대답을 찾으려고 노력할 것입니다.

답변

2

$ SP의 정렬을 알지 못하면 얼마나 많은 캐시 누락인지를 알 수 없습니다. SP가 32 바이트 경계에 정렬 된 경우 첫 번째 액세스에서 하나의 캐시 행 누락이 발생합니다. SP에 주소가 0x18 인 경우 4 ($ sp)와 8 ($ sp)이 다른 캐시 라인에 액세스하므로 두 개의 캐시 라인 누락이 발생합니다.