- •7. Принципы управления микропроцессора.
- •7.1. Классификация микропроцессоров.
- •7.2. Декомпозиция мп.
- •7.3. Принцип аппаратного управления ("жёсткой" логики).
- •7.4. Принцип микропрограммного управления (гибкой логики).
- •7.5. Способы формирования сигналов управления
- •Код номера
- •7.6. Операционное устройство мп.
- •7.7. Обобщённая структурная схема мп.
- •Адресный блок
- •8. Элементы архитектуры мп.
- •8.1. Структура команд.
- •8.2. Способы адресации, основанные на прямом использовании
- •Номера реги- стров
- •Число 4527
- •Адрес 1765
- •8.3. Способы адресации, основанные на преобразовании кода команды.
- •8.4. Понятие вектора состояния мп.
- •8.5. Понятие системы прерывания программ.
- •8.6. Характеристики системы прерывания.
- •8.7. Способы организации приоритетного обслуживания
- •Счётчик
- •Счётчик
- •Компаратор
- •Код маски
- •8.8. Процесс выполнения команд. Рабочий цикл мп.
- •8.9. Конвейерная обработка команд и данных.
- •8.10. Особенности risc-архитектуры.
- •Регистры глобальных переменных
7.5. Способы формирования сигналов управления
в управляющих автоматах с "гибкой" логикой.
Возможно горизонтальное, вертикальное и смешанное микропрограммирование.
При горизонтальном микропрограммировании каждому разряду операционной части МК ставится в соответствие определённый управляющий сигнал, т.е. определённая микрооперация.
Так, если в i-ом разряде стоит 1, то соответствующая микрооперация выполняется независимо от значения других разрядов.
При таком способе операционная часть МК содержит m разрядов, где m – общее число микроопераций.
Достоинствами горизонтального микропрограммирования являются
возможность одновременного выполнения в одном такте любого набора микроопераций и простота формирования сигналов управления.
Однако при этом требуется большая длина МК, поскольку число управляющих сигналов может достигать нескольких сотен.
Поэтому большее распространение получили другие методы.
При вертикальном микропрограммировании микрооперация определяется двоичным кодом, содержащимся в операционной части МК. При этом отдельный код задаёт отсутствие МКП.
Число разрядов операционной части МК n = Log2(m+1) .
Достоинством вертикального микропрограммирования является небольшая длина МК.
Однако при этом в каждой МК указывается лишь одна микрооперация, что, по сравнению с горизонтальным микропрограммированием, приводит к увеличению длины микропрограмм.
Наибольшее распространение получило смешанное микропрограммиро-вание, при котором множество М микроопераций разбивается на k подмножеств.
В каждом подмножестве объединяют микрооперации, наиболее часто встречающиеся вместе в одном такте.
Подмножества стараются делать равномощными.
Микрооперации внутри каждого из подмножеств кодируются либо горизонтальным, либо вертикальным способом.
При вертикально-горизонтальном микропрограммировании операционная
подмножестваКод номера
. . .
Длина первого поля равна наибольшему из max |mk| подмножеств. В этом поле каждый разряд соот- ветствует определённой МК из подмножества mi (i = 1,…, k), т.е. применён горизонтальный способ кодирования.
Второе поле, длинной Log2k , указывает, к какому из k подмножеств принадлежат микрооперации в первом поле.
Более
гибким и часто используемым является
горизонтально-вертикаль-ное
микропрограммирование. Подмножества
кодируются горизонтальным, а микрооперации
внутри каждого из подмножеств –
вертикальным способом.
Код микро-
операции
из
m1
.
. .
Код микро-
операции
из
mk