Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
22-33.doc
Скачиваний:
30
Добавлен:
18.09.2019
Размер:
2.46 Mб
Скачать
  1. Классификация устройств управления. Устройства управления с жесткой и программируемой логикой.

Принципы микропрограммного управления:

Любое цифровое устройство можно рассматривать, как совокупность операционного и управляющего блока.

Любая команда или последовательность команд реализуется в операционном блоке за несколько тактов

Устройство управления предназначено для выработки управляющих сигналов (по времени, по длительности, по функции), под воздействием которых происходит преобразование информации в арифметико-логическом устройстве, а также операции по записи и чтению информации в/из запоминающего устройства.

Последовательность сигналов управления должна выдаваться устройством управления в соответствии с поступающей на вход командой и текущим состоянием операционного блока

Состояние линий управления в каждом такте задает микрокоманду. Совокупность микрокоманд, необходимых для реализации команды называется микропрограммой.

Устройство управления реализуется в виде автомата.

Классификация устройств управления:

По типу автомата:

- Автомат Мили.

- Автомат Мура.

По способу кодирования микрокоманд:

- Горизонтальное кодирование.

МКК – код микрокоманды. Этот способ является простейшим вариантом кодирования, при котором каждый разряд поля кода микрооперации однозначно определяет управляющий сигнал для выполнения микрооперации. Из-за большого набора микроопераций (10-100) горизонтальное кодирование может потребовать большой разрядности памяти микрокоманд. Это приводит к неэффективному использованию памяти микропрограмм. Поэтому с целью сокращения длины микрокода используют вертикальное кодирование. Достоинством же горизонтального кодирования является возможность параллельной работы нескольких операционных блоков, что позволяет существенно повысить быстродействие и приводит к высокой степени загрузки оборудования, а также простота формирования УС.

- Вертикальное кодирование.

При этом способе уменьшается длина МК, но теряется возможность параллельного выполнения команд в одной вертикали. При вертикальном кодировании микрооперация определяется не состоянием одного из разрядов микрокоманды, а двоичным кодом, содержащимся в операционной части микрокоманды. Количество разрядов операционной части микрокоманды определяется как: m=]log2 n[ , где n – количество микроопераций. Основным достоинством является небольшая длина микрокоманды, что приводит к сокращению емкости ПМК. Однако в этом случае требуются сложные дешифраторы на большое количество микроопераций, и увеличиваются временные затраты на дешифрацию, а главное – каждой микрокоманде указывается лишь одна микрооперация, что приводит к увеличению длины микропрограмм по сравнению с горизонтальным кодированием.

- Смешанное (Горизонтально-вертикальное или вертикально-горизонтальное) кодирование.

Развитием способов кодирования микрокоманд с целью устранения основных недостатков, присущих горизонтальному и вертикальному способам, является горизонтально-вертикальное, или смешанное, кодирование микрокоманд. При смешанном кодировании множество микроопераций V разбивается на k подмножеств (или полей). Подмножества Vi кодируются горизонтальным, а микрооперации внутри каждого из этих подмножеств вертикальным способами. Таким образом, применение вертикального метода кодирования позволяет оптимизировать емкость ПМК, а горизонтального способа – сохранить принципы

параллельной работы операционных блоков микропроцессора.

- Косвенное кодирование

С целью дальнейшего сокращения разрядности микрокоманды используется

косвенный метод кодирования микрокоманд. Косвенное кодирование характеризуется наличием дополнительных полей, содержимое которых меняет смысл основных полей микрокоманды. Т.е. одной и той же вертикалью можно управлять несколькими устройствами, если переназначать управление с помощью дополнительного бита (указание типа устройства). Косвенное кодирование сокращает объем памяти микропрограмм, так как позволяет уменьшить длину микрокоманды. Однако, оно требует введения дополнительных дешифраторов, логических схем, что приводит к временным затратам из-за коммутации полей микрокоманды.

- Кодирование с помощью памяти нанокоманд (двухуровневое кодирование).

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

К примеру рассмотрим схему УУ с двухуровневым кодированием микрокоманд, в котором на первом уровне используется вертикальное кодирование, а на втором – горизонтальное.

Выполнение микрокоманды осуществляется следующим образом:

Первая микрокоманда с вертикальным кодированием извлекается из ПМК, поле кода микрооперации, которой является адресом нанокоманды. Нанокоманда, считанная из памяти, и определяет множество микроопераций, реализуемых в текущем микрокомандном цикле.

Например, память для хранения микропрограмм объемом 4К 32-битных микрокоманд при числе нанокоманд 256 может быть реализовано как совокупность памяти микрокоманд емкостью 4К 8-битных слов и памяти нанокоманд емкостью 256 32-битных слов. Это позволяет сократить память в три раза. Обычно такие структуры УУ реализуются на программируемых логических матрицах.

По способу исполнения команд:

- Последовательные.

- Конвейерные.

По способу реализации:

- Устройство управления с жесткой логикой.

Функции выдачи сигналов управления и разделения во времени сигналов управления реализуются с помощью комбинационных схем и триггерной памяти. Алгоритм управления в таком автомате «зашит» в самой схеме автомата;

(+) Высокое быстродействие

(-) Трудно наращивать

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

- Устройство управления с программируемой логикой.

Каждой выполняемой операции ставится в соответствие совокупность хранимых в памяти слов (микрокоманд), каждая из которых содержит информацию о микрооперациях, подлежащих исполнению в текущем такте, и указание, какое слово должно быть выбрано из памяти в следующем такте.

(+) Простота модификации и наращивания.

(-) Невысокое быстродействие для простых устройств.

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

Прим: УА –управляющий автомат.

Т.о. при небольшом размере команд УА с жесткой логикой дешевле, чем УА с программируемой.

От характеристик УУ зависит быстродействие и эффективность функционирования ЭВМ.