Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
на экзамен уменьш.doc
Скачиваний:
26
Добавлен:
15.04.2019
Размер:
193.54 Кб
Скачать

1.2.4 Синхронизация выполнения машинной команды. Машинные циклы. Циклы команд

При выполнении команд процессор (его блок синхронизации и управления) обеспечивает выработку управляющих и синхронизирующих сигналов, не требующих расшифровки и организующих функционирование системы. Выполнение команд требует от одного до пяти машинных циклов разного назначения. Каждый машинный цикл для своего завершения требует от трех до пяти состояний (Т1, Т2, ..., Т5), длящихся каждый один тактовый период (для микропроцессора КР580 - 0,5 мкс). Машинный цикл - это последовательность действий процессора по отношению к устройствам, подключенным к его шинам. Иначе, машинный цикл – это текущее состояние процессора по отношению к внешней среде. Необходимо отметить, что существуют «короткие» команды, успевающие выполнятся за 1 машинный цикл, и «длинные», требующие пять и более машинных циклов. Структура первого машинного цикла каждой команды (на примере КР580) представлена на Рисунке 1.2.2.

Машинный цикл (для КР580 - М1), с которого начинается выполнение любой команды, является циклом выборки кода операции и продолжается пять тактовых периода. В течение периода Т1 содержимое программного счетчика посылается в адресную шину, управляющий сигнал, указывающий на начало машинного цикла, принимает значение «1» («истина»), а информационная шина содержит информацию о слове состояния, относящуюся к циклу, который начат. Далее в течение периода Т2 проверяется значение сигнала, сообщающего процессору о том, что нужные данные находятся на информационной шине. Если этот сигнал имеет значение «1», то процессор приступает к выполнению периода Т3, иначе («0») он переходит в состояние ожидания и находится в нем до тех пор, пока данный сигнал имеет значение «0». Таким образом, осуществляется синхронизация скорости процессора со скоростью любого устройства ввода (в том числе, памяти), имеющего любое время выборки. В течение периода Т3 данные, получаемые из памяти, загружаются в регистр команд. Далее дешифратор команд и управляющие блоки (период Т4-T5) генерируют сигналы для управления внутренней передачей и преобразованием данных, а также требования к последующим машинным циклам. В конце периода Т5 процессор возвращается в состояние Т1 и вступает в следующий цикл, если команда требовала не единственный для своего выполнения цикл. После выполнения необходимого для данной команды числа машинных циклов процессор, используя специальный цикл, проверяет состояние линии запроса прерывания.

1.2.5 Архитектура регистровых процессоров

Рассмотрим пример организации регистровой архитектуры процессора.

Восемь 16-разрядных регистров РОН R0÷R7 могут равноправно использоваться соответствующими командами для промежуточного хранения данных, в качестве хранилища косвенного адреса памяти, как индексные регистры и т.д. В качестве указателя стека может быть выбран любой из регистров РОН, так как с любым из них аппаратно реализуется косвенная адресация ячеек ОЗУ с автоматическим увеличением или уменьшением содержимого. Однако ряд машинных команд автоматически («по умолчанию») используют регистр R6 как указатель общесистемного стека. Это касается, прежде всего, команд обращения и возврата из подпрограмм.

Регистр R7 служит программным счетчиком ПС и содержит адрес выполняемой команды. Использование этого регистра должно быть сознательно ограничено самим программистом во избежание «разрушения» программы.

Флаги включены в специальный регистр состояния процессора (РСП). Кроме известных уже флагов нулевого результата Z, отрицательного результата N, переполнения сумматора С в данном процессоре имеется флаг арифметического переполнения V для сигнализации о переполнении при выполнении арифметических операций с целыми числами в дополнительном коде.

Т-разряд, установленный в 1, обеспечивает внутреннее прерывание после выполнения очередной команды с выходом на соответствующую подпрограмму обработки. Наличие такого режима обеспечивает простую реализацию программ-отладчиков.

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

Процессоры рассматриваемой архитектуры могут находиться в двух режимах выполнения программ – пользовательском и системном. Системный (привилегированный) режим позволяет командам программы обращаться ко всем ресурсам ВС, не доступным в обычном пользовательском режиме. О текущем и предыдущем режимах работы процессора несут информацию соответственно разряды 14-15-й и 12-13-й. Остальные разряды РСП не используются.