Лекция: Лабораторная работа № 7. Принципы работы кэш-памяти
В разд. 8.8 данной книги описаны некоторые алгоритмы замещения строк кэш-памяти. Цель настоящей лабораторной работы — проверить работу различных алгоритмов замещения при различных режимах записи.
Задание 7
В качестве задания предлагается некоторая короткая «программа» (табл. 9.14),
которую необходимо выполнить с подключенной кэш-памятью (размером 4 и
ячеек) в шаговом режиме для следующих двух вариантов алгоритмов заме
щения (табл. 9.13). ,
Таблица 9.13.Пояснения к вариантам задания 7
7.
Номера вариантов | Режим записи | Алгоритм замещения |
1,7, 11 | Сквозная | СЗ, без учета бита записи |
Обратная | О, с учетом бита записи | |
2,5,9 | Сквозная | БИ, без учета бита записи |
Обратная | О, с учетом бита записи | |
3,6, 12 | Сквозная | О, без учета бита записи |
Обратная | СЗ, с учетом бита записи | |
4, 8, 10 | Сквозная | БИ, без учета бита записи |
Обратная | БИ, с учетом бита записи |
Таблица 9.14. Варианты задания 7
8.
№ варианта | Номера команд программы | |||||
RD #12 | WR 10 | wr ею | ADD 12 | WR R0 | SUB 10 | PUSH R0 |
RD #65 | WRR2 | MOV R4,R2 | WR 14 | PUSH R2 | POP R3 | CALL 002 |
RD #16 | SUB #5 | WR 9 | WR @9 | WR R3 | PUSH R3 | POP R4 |
RD #99 | WR R6 | MOV R7,R6 | ADD R7 | PUSH R7 | CALL 006 | POP R8 |
RD #11 | WR R2 | WR -@R2 | PUSH R2 | CALL 005 | POP R3 | RET |
RD #19 | SUB #10 | WR9 | ADD #3 | WR ©9 | CALL 006 | POPR4 |
Таблица 9.14(окончание)
Номера команд программы
№ 1 2 • 3 | ||||||
RD #6 | CALL 006 | WR11 | WRR2 | PUSH R2 | RET | JMP 002 |
RD#8 | WRR2 | WR @R2+ | PUSH R2 | POP R3 | WR -@R3 | CALL 003 |
RD #13 | WR14 | WR@14 | WR@13 | ADD 13 | CALL 006 | RET |
RD #42 | SUB #54 | WR16 | WR@16 | WRR1 | ADD @R1+ | PUSH Rl |
RD #10 | WRR5 | ADD R5 | WRR6 | CALL 005 | PUSH R6 | RET |
JMP 006 | RD #76 | WR 14 | WRR2 | PUSH R2 | RET | CALL 001 |
He следует рассматривать заданную последовательность команд как фрагмент программы1. Некоторые конструкции, например, последовательность команд push R6, ret в общем случае не возвращает программу в точку вызова подпрограммы. Такие группы команд введены в задание для того, чтобы обратить внимание студентов на особенности функционирования стека.