Классификация микропрограммных устройств управления
1) По способу организации управляющей части
1.Горизонтальное УУ
Для каждого управляющего сигнала в управляющей части отводится отдельный разряд . Если в некотором такте управляющий сигнал должен быть =1, то в соответствующем разряде записывается 1. Таким образом, количество разрядов в управляющей части соответствует числу управляющих сигналов.
При такой организации можно совмещать микрооперации во времени.
Достоинства: Большое быстродействие за счёт возможности сокращения микропрограммы во времени и уменьшения длины микропрограммы.
Недостатки: Требуется большая ёмкость памяти для хранения микрокоманды, так как реально совместить большое количество микроопераций в одной микрокоманде не удаётся. Поэтому в основном память заполнена 0, т.е. не рациональное использование памяти.
2.Вертикальное УУ
В управляющей части кодируется номер управляющего сигнала. В одном такте совмещение микроопераций невозможно.
Достоинства: Сократился объём памяти микрокоманд.
Недостатки: За счёт увеличения длины микропрограммы быстродействие данного подхода хуже. На выходе управляющей части необходимо поставить дешифратор.
3.Горизонтально-вертикальное УУ
Все микрооперации разбиваются на группы, и внутри одной группы используется вертикальный подход, а в 1 микрокоманде для разных групп используется горизонтальный подход. Т.е. в одной микрокоманде можно выполнять различные микрооперации, относящиеся к различным группам.
2) Однофазные и многофазные УУ
В многофазных УУ такт разбивается на подтакты или фазы. На одной фазе выполняются независимые микрооперации, а на различных фазах выполняются зависимые микрооперации.
В однофазных УУ на одном такте могут выполняться только независимые микрооперации.
3) Статические и динамические УУ
В статических используется постоянная память, т.е нельзя менять микропрограмму.
В динамических используется оперативная память и возможна перезапись.
Пример реализации УУ операционной части центрального процессора при выполнении двухадресной команды.Косвенно-регистровая адресация для первого и второго операндов.Результат записывается на место второго операнда.
1.Горизонтальное микропрограммное УУ
1 этап. Выбор команды из памяти.
V1 РАП:=СчК
V2 РЧП:=Чт(РАП)
V3 РК:=РЧП
V4 СчК:=СчК+n
2 этап. Дешифрация кода операции.
3 этап. Формирование исполнительного адреса и выбор операндов.
V5 РАРП:=РК (R1)
V6 РЧРП:=Чт (РАРП) (выбор адреса первого операнда из РОНов)
V7 РАП:=РЧРП
V2 РЧП:=Чт (РАП) (выбор первого операнда из ОП)
V8 Р1:=РЧП
V9 РАРП:=РК (R2)
V6 РЧРП:=Чт (РАРП) (выбор адреса второго операнда из РОНов)
V7 РАП:=РЧРП
V2 РЧП:=Чт (РАП) (выбор второго операнда из ОП)
V10 Р2:=РЧП
4 этап. Выполнение операции в АЛУ.
V11 РС=Р1 операция Р2
5 этап. Запись результата.
V12 РЧП:=РС
V13 Зп (РАП)=РЧП
Совместим микрооперации во времени.
1 этап. Выбор команды из памяти
V1 РАП:=СчК
V2 РЧП:=Чт(РАП)
V3, V4 РК:=РЧП, СчК:=СчК+n
2 этап. Дешифрация кода операции
3 этап. Формирование исполнительного адреса и выбор операндов
V5 РАРП:=РК(R1)
V6 РЧРП:=Чт(РАРП)
V7,V9 РАП:=РЧРП,РАРП:=РК(R2)
V2,V6 РЧП:=Чт(РАП), РЧРП:=Чт(РАРП)
V7 ,V8 РАП:=РЧРП,Р1:=РЧП
V2 РЧП:=Чт(РАП)
V10 Р2:=РЧП
4 этап. Выполнение операции в АЛУ
V11 РС:=Р1 операция Р2
5 этап. Запись результатов
V12 РЧП:=РС
V13 Зп(РАП):=РЧП
Получилось всего 13 тактов.
№ Т | Vi |
T1 | V1 |
T2 | V2 |
T3 | V3,V4 |
T4 | V5 |
T5 | V6 |
T6 | V7,V9 |
T7 | V2,V6 |
T8 | V7,V8 |
T9 | V2 |
T10 | V10 |
T11 | V11 |
T12 | V12 |
T13 | V13 |
Схема Уилкса
|
Вначале на РАМК подаётся адрес первой выполняемой микрокоманды(0000). После дешифрации эта микрокоманда считывается из памяти микрокоманды на РМК . При этом управляющий сигнал V1=1, а все остальные =0. Управляющий сигнал V1 поступает на соответствующий вентиль в операционную часть ЦП. И в этом такте срабатывает только одна пересылка.С Счётчика Команд(СчК) будет передана на РАП. Т.к. все остальные управляющие сигналы равны 0, то другие микрокоманды выполняться не будут. В адресной части для данной микрооперации закодирован код 0001,что соответствует адресу ячейки, где хранится следующая, т.е. вторая выполняемая микрокоманда. Далее выполняются аналогичные действия.
2.Вертикальное микропрограммное УУ
Здесь совмещение микроопераций невозможно.
№ Т | Vi |
Т1 | V1 |
Т2 | V2 |
Т3 | V3 |
Т4 | V4 |
Т5 | V5 |
Т6 | V6 |
Т7 | V7 |
Т8 | V2 |
Т9 | V8 |
Т10 | V9 |
Т11 | V6 |
Т12 | V7 |
Т13 | V2 |
Т14 | V10 |
Т15 | V11 |
Т16 | V12 |
Т17 | V13 |