Данному образовательному сайту пришлось несколько раз менять свое имя. С 2011 года доступ к нему обеспечивается по URL
http://educomp.runnet.ru

emc.km.ru (2001-2007) ==> educomp.org.ru (2007-2011) ==> educomp.runnet.ru (2011-...)
Более подробно об истории сайта можно прочитать здесь.


Учебные модели компьютера



Модели (software):

"Е14" (parallel !!!)

Модели (hardware):






Награды сайта
Награды сайта

Учебная модель ЭВМ: специальные возможности

Микрокомандный уровень

Реализация любой команды в модели учебной ЭВМ сводится к выполнению последовательности элементарных действий из довольно ограниченного множества микрокоманд (регистровые передачи, обращения к разным типам памяти и т.п.). Этот уровень моделирования обычно не виден пользователю при выполнении программы в пошаговом или автоматическом режиме.

Однако, если пользователь желает разобраться с последовательностью действий при выполнении командного цикла (надо помнить – абстрактной учебной ЭВМ), то он может подключить механизм Микрокомандный уровень. Для этого необходимо установить флажок Режим микрокоманд в меню Работа основного окна модели. На поведение модели при выполнении программы в автоматическом режиме этот флажок влияния не оказывает, а при работе в шаговом режиме по каждому нажатию кнопки Шаг выполняется только одна микрокоманда.

Для того, чтобы наблюдать за типом выполняемой микрокоманды, следует открыть окно Микрокомандный уровень (меню Вид команда Микрокомандный уровень. В этом окне отображается адрес и мнемокод выполняемой команды и список микрокоманд, которые её реализуют. С каждым нажатием кнопки Шаг выполняется очередная микрокоманда, указатель микрокоманд (стрелка) перемещается на следующую позицию, а результаты действия микрокоманды отображаются изменениями регистров процессора, РОН или ячеек памяти. После выполнения очередной микрокоманды допускается модификация регистров процессора и ячеек памяти.

Например, вот так выглядит окно Микрокомандный уровень в процессе выполнения команды WR @R1+
00 - содержимое PC передаётся в регистр адреса ОЗУ;
01 - чтение из ОЗУ;
02 - прочитанное слово передаётся в регистр команд CR;
03 - инкремент счётчика команд PC;
04 - 5-й разряд CR (адрес регистра) передаётся в регистр адреса РОН;
05 - чтение из РОН содержимого регистра (косвенного адреса);
06 - передача прочитанного содержимого регистра в промежуточный регистр адреса RA;
07 - передача адреса в регистр адреса ОЗУ;
08 - содержимое аккумулятора передаётся в регистр данных ОЗУ;
09 - запись в ОЗУ;
10 - инкремент содержимого регистра.

Для отключения режима Микрокомандный уровень не достаточно закрыть одноимённое окно - следует снять флажок Режим микрокоманд в меню Работа.

Кэш-память

В модели реализован механизм полностью ассоциативной кэш-памяти (любая ячейка кэш замещает любую ячейку ОЗУ)

При подключении кэш-памяти можно выбрать её параметры:

  • размер - 4, 8, 16 или 32 ячейки;
  • режим записи - сквозная или обратная (при кэш-попадании сквозная запись осуществляется в ячейки кэш и ОЗУ, а при обратной - только в ячейку кэш и копируется в ОЗУ только при очистке ячейки);
  • алгоритм замещения - Случайный выбор, Очередь, С учётом бита использования, причём эти алгоритмы могут выбирать из всех ячеек кэш или только из тех, в которые не производилось записи - если установлен флажок С учётом бита записи.

Ячейка кэш-памяти содержит три поля: тэг (признак), роль которого играет адрес ОЗУ, данные (содержимое ячейки ОЗУ) и признаки.

  • Признак занятости Z отмечает занятые ячейки и устанавливается в «1», когда содержимое ячейки ОЗУ копируется в ячейку КЭШ. Сбрасывается при очистке кэш.
  • Признак использования U устанавливается в «1» при каждом обращении к ячейке кэш. В тот момент, когда признаки U всех ячеек станут равными «1», все они сбрасываются в «0». Таким образом, признак U разделяет ячейки кэш на два непересекающихся подмножества - те, к которым обращались после последнего сброса (для них U=1) и те, к которым не обращались. Некоторые алгоритмы замещения используют эту информацию для выбора освобождаемой ячейки кэш.
  • Признак записи в ячейку W устанавливается в «1» при записи в ячейку кэш. Алгоритм замещения может учитывать значения флагов при выборе освобождаемой ячейки кэш.

В процессе работы модели с подключённой кэш-памятью при обращении программы в ОЗУ осуществляется поиск требуемого адреса в кэш-памяти. В случае кэш-попадания обращение производится в ячейку кэш, при кэш-промахе обращение производится в ОЗУ и содержимое ячейки ОЗУ копируется в кэш.

При выполнении программы подсчитывается общее число обращений к ОЗУ, количество кэш-попаданий и количество обращений по записи.

Конечно, при работе программной модели ЭВМ с подключённой кэш-памятью нельзя наблюдать уменьшения времени решения задачи, но собираемая статистика позволит оценить эффективность применения кэш-памяти при использовании разных алгоритмов замещения.


© Жмакин Анатолий Петрович (Курский государственный университет). anatoly.zhmakin@gmail.com

Оформление Web-страницы - Е.А.Еремин, 2010


Автор сайта - Евгений Александрович Еремин (Пермский государственный педагогический университет). e_eremin@yahoo.com