Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше
Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике
11.12. Синхронизация
На
фиг. 11.11 представлена диаграмма синхронизации команд. Время выполнения каждой
команды равно 400 нс, но за счет одновременного выполнения нескольких команд
эффективное время выполнения команды равно 150 нс. В любой момент времени выполняются
те или иные действия, относящиеся к трем различным последовательным командам.
Команда выполняется в три этапа:
1.
Вызов команды (из ЗУ
).
2.
Декодирование команды, операции с индексными регистрами, принятие решений о
переходах.
3.
Пересылки, обращения к памяти, арифметические и логические операции.
На
каждом интервале длительностью 150 нс выполняются операции всех трех этапов,
но относящиеся, конечно, к трем разным последовательным командам. Поскольку
команды вызываются через каждые 150 нс, эффективное быстродействие определяется
именно этой величиной, хотя фактическое время выполнения каждой команды равно
400 нс (для выполнения некоторых специальных команд требуется больше 400 нс, но
основной интервал синхронизации не меняется).
Фиг. 11.11. Временная диаграмма
выполнения команд в процессоре FDP.
Вследствие
рассмотренного временного перекрытия операции типа перехода, синхронизируемые
таким же образом, могут изменить последовательность выполнения команд только
после вызова команды, следующей непосредственно за командой перехода. Для
повышения эффективности эта последующая команда не прерывается, а выполняется
до конца, и поэтому переход к новым адресам в
начинается через одну команду после
команды перехода. Таким образом, команда перехода, завершающая некоторый цикл,
должна быть в этом цикле не последней, а предпоследней.
Команды
типа пропуска (SKIP) отменяют исполнение следующей за ними команды,
так что время, затрачиваемое на операции с этой последующей командой, не
зависит от результата выполнения команды пропуска. Специальная команда
(находящаяся в левой половине кода двойной команды) пропуска при переходе SOJ (skip on jump),
не связанная с обращением к ЗУ, означает, что если правая половина команды
соответствует переходу, то при выполнении перехода последующая команда
отменяется. Таким образом, команда SOJ в сочетании с командой перехода
выполняется как обычная команда перехода, но при этом затрачивается 300 нс,
если переход происходит, и 150 нс, если перехода не происходит.