Вычислительная техника и программирование/Занятие 10
Моделирование работы кэш-памяти
[править]Цель данного занятия - проверить работу различных алгоритмов замещения при различных режимах записи.
Задание
[править]Рассматривается короткая "программа", которую необходимо выполнить с подключенной кэш-памятью. Размер кэш-памяти 4 и 8 ячеек. Задание выполняется в пошаговом режиме для двух вариантов алгоритмов замещения.
Таблица 1
[править]Номера вариантов | Режим записи | Алгоритм замещения |
---|---|---|
1,7,11 | Сквозная | СЗ, без учета бита записи |
Обратная | О, с учетом бита записи | |
2,5,9 | Сквозная | БИ, без учета бита записи |
Обратная | О, с учетом бита записи | |
3,6,12 | Сквозная | О, без учета бита записи |
Обратная | СЗ, с учетом бита записи | |
4,8,10 | Сквозная | БИ, без учета бита записи |
Обратная | БИ, с учетом бита записи |
Таблица 2
[править]Номера команд программы | |||||||
---|---|---|---|---|---|---|---|
Варианты | ___ 1 ___ | ___ 2 ___ | ___ 3 ___ | ___ 4 ___ | ___ 5 ___ | ___ 6 ___ | ___ 7 ___ |
Вариант 1 | RD #12 | WR 10 | WR @10 | ADD 12 | WR R0 | SUB 10 | PUSH R0 |
Вариант 2 | RD #65 | WR R2 | MOV R4,R2 | WR 14 | PUSH R2 | POP R3 | CALL 002 |
Вариант 3 | RD #16 | SUB #5 | WR 9 | WR @9 | WR r3 | PUSH R3 | POP R4 |
Вариант 4 | RD #99 | WR R6 | MOV R7,R6 | ADD R7 | PUSH R7 | CALL 006 | POP R8 |
Вариант 5 | RD #11 | WR R2 | WR -@R2 | PUSH R2 | CALL 005 | POP R3 | RET |
Вариант 6 | RD #19 | SUB #10 | WR9 | ADD #3 | WR @9 | CALL 006 | POP R4 |
Вариант 7 | RD #6 | CALL 006 | WR 11 | WR R2 | PUSH R2 | RET | JMP 002 |
Вариант 8 | RD #8 | WR R2 | WR @R2+ | PUSH R2 | POP R3 | WR -@R3 | CALL 003 |
Вариант 9 | RD #13 | WR 14 | WR @14 | WR@13 | ADD 13 | CALL 006 | RET |
Вариант 10 | RD #42 | SUB #54 | WR 16 | WR @16 | WR R1 | ADD @R1+ | PUSH R1 |
Вариант 11 | RD #10 | WR R5 | ADD R5 | WR R6 | CALL 005 | PUSH R6 | RET |
Вариант 12 | JMP 006 | RD #76 | WR 14 | WR R2 | PUSH R2 | RET | CALL 001 |
Пример
[править]Запустите модель ЭВМ
При этом на экране должно появится пять окон:
- Основное окно
- Окно обозревателя процессора
- Окно обозревателя памяти
- Окно обозревателя Текста программы
- Окно обозревателя программы
Введите текст программы в окно обозревателя Текста программы
Текст программы
RD #15 WR 13 WR @11 ADD 12 WR R3 SUB 13 PUSH R3
Обозреватель текста программы
Проведите компиляцию программы
Компиляция программы
Откройте окно обозревателя кэш-памяти
Окно обозревателя кэш-памяти вызывается из меню Вид - > Кэш-память
Диалоговое окно для выбора параметров кэш-памяти
Включение режима работы кэш-памяти Работа - > Кэш-память
Порядок выполнения работы
[править]- Ввести в модель учебной ЭВМ текст своего варианта программного кода, компилировать его и сохранить на диске в виде txt-файла.
- Установить параметры кэш-памяти размером 4 ячейки, выбрать режим записи и алгоритм замещения в соответствии с первой строкой своего варианта.
- В шаговом режиме выполнить программу, фиксируя после каждого шага состояние кэш-памяти.
- Для кэш-памяти размером 8 ячеек установить параметры в соответствии со второй строкой своего варианта и выполнить программу в шаговом режиме еще раз, фиксируя последовательность номеров замещающих ячеек кэш-памяти.
Содержание отчета
[править]- Вариант задания - текст программы и режимы кэш-памяти
- Последовательность состояний кэш-памяти размером 4 ячейки при однократном выполнении программы (команды 1-7)
- Для варианта кэш-памяти 8 ячеек - последовательность номеров замещаемых ячеек кэш-памяти для второго варианта параметров кэш-памяти при двухкратном выполнении программы.
Контрольные вопросы
[править]- В чем смысл включения кэш-памяти в состав ЭВМ.
- Как работает кэш-память в режиме обратной записи? Сквозной записи?
- Как зависит эффективность работы ЭВМ от размера кэш-памяти.
Дополнительные задания
[править]- Для одной из команд записи (WR) перейти в режим Такт и отметить, в каких микрокомандах происходит изменение кэш-памяти.