Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Адресация микрокоманд




Исходными данными для проектирования УАПЛ является, как и для УАЖЛ (управляющий автомат с "жесткой" логикой), микропрограмма, представленная, например, в форме ГСА. Каждая операторная вершина должна реализоваться в один такт машинного времени, причем после операторной вершины в ГСА может следовать:

□операторная вершина;

□ условная вершина, оба выхода которой или один из них соединены с операторными вершинами, например, как показано на рис. 4.9, а;

□цепочка из двух или более условных вершин, выходы которых соединены с условными вершинами (рис. 4.9, б).

Рис. 4, 9. Фрагменты ГСА микропрограмм

В первом случае осуществляется безусловный переход к следующей микрокоманде, и адрес этой единственной микрокоманды (А1) должен размещаться в поле адреса выполняемой микрокоманды.

Во втором случае необходимо сделать выбор одного из двух возможных следующих адресов. В поле адреса микрокоманды следует разместить:

□ номер x логического условия, по значению которого осуществляется выбор;

□ адрес А1 микрокоманды, которая будет выполняться, если указанное условие истинно;

□ адрес А0 микрокоманды, которая будет выполняться, если указанное условие ложно.

(Страница109)

В третьем случае количество проверяемых в микрокоманде условии и адресов переходов может быть произвольным, в т. ч. и достаточно большим. В этом случае длина микрокоманды может быть весьма велика.

При выборе формата микрокоманды нужно учитывать следующие обстоятельства:

□следует эффективно использовать разряды поля, обеспечив по возможности его минимальную длину;

□ желательно ограничиться единственным форматом микрокоманды, в крайнем случае, выбирать минимально возможное разнообразие форматов.

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

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

Чаще всего в быстродействующих УАПЛ используется формат микрокоманды, приведенный на рис. 4.10. Такой способ адресации микрокоманд принято называть принудительным, здесь явно указываются оба возможных адреса перехода, причем расположение микрокоманд в ячейках памяти может быть произвольным.

Рис. 4.10. Формат микрокоманды при принудительной адресации

Если в ГСА встречаются цепочки из k последовательных условных вершин, последняя из которых связана с операторной вершиной, то для их реализации в рамках формата микрокоманды, представленной на рис. 4.10, потребуется k микрокоманд (а следовательно, k тактов), в каждой из которых, кроме последней, поле микроопераций будет пустым. При выполнении таких микрокоманд в операционном автомате никаких действий не выполняется (он "простаивает"!), а управляющий автомат тратит k -1 тактов на определение следующего адреса.

Когда в ГСА встречается большое число таких цепочек, снижение производительности системы становится существенным. В этом случае используют другие подходы к формированию следующего адреса микрокоманды. Например, на рис. 4.11 представлен фрагмент ГСА, при реализации которого необходимо последовательно проверить три логических условия. Для быстрой реализации этого фрагмента достаточно выбрать некоторый базовый адрес (в данном случае он должен быть кратным 8), начиная с которого в ПЗУ микропрограмм расположить последовательно блок микрокоманд У13...У20. Для определения адреса очередной микрокоманды достаточно к базовому адресу прибавить (приписать справа) значение вектора логических условий Адрес следующей микрокоманды определяется, таким образом, за один такт, но разработчик лишается возможности произвольного размещения микрокоманд в памяти.

Рис. 4.11. Фрагмент ГСА микропрограммы

Если в ГСА имеется большое число линейных участков и, следовательно, безусловных переходов, то применение принудительной адресации ведет к неэффективному использованию памяти. Действительно, при безусловном переходе информативным является только поле адреса перехода А1, а поля x и А0 — не используются.

В целях уменьшения длины поля адреса микрокоманды можно использовать т. н. естественную адресацию (рис, 4.12), напоминающую механизм адресации команд в программе. В этом случае в состав устройства формирования адреса микрокоманды включают регистр-счетчик адреса микрокоманд, а в адресном поле микрокоманды — два поля: x и А1. Если заданное полем x условие истинно, то выполняется микрокоманда по адресу А1, иначе микрокоманда по текущему значению счетчика адреса микрокоманд, предварительно увеличенному на единицу.

Таким образом, УАПЛ с естественной адресацией работает с той же скоростью, что и УАПЛ с принудительной адресацией, при этом длина микрокоманды уменьшается на длину одного адресного поля, зато в структуре УФАМК необходимо дополнительно предусмотреть регистр-счетчик.

Рис. 4.12. Различные форматы микрокоманд при естественной адресации

Структурная схема микропрограммного автомата с естественной адресацией приведена на рис. 4.13. Считанные из ПЗУ микрокоманд слова помещаются в регистр микрокоманд (Рг МК), причем часть микрокомандного слова дешифрируется для выработки микроопераций, а поле адресации, естественно, используется для формирования адреса следующей микрокоманды. Мультиплексор выбирает из множества логических условий переменную, заданную полем х, а поле i позволяет при необходимости проинвертировать значение выбранного логического условия:

Если значение выбранного логического условия истинно, то осуществляется переход по микропрограмме: при единичном значении на выходе сумматора по модулю два в регистр-счетчика адреса микрокоманды (Рг Сч A МК) загружается значение поля А1 микрокоманды, содержащее адрес перехода. Если условие не выполняется (ложно), то загрузки нового адреса в Рг Сч A МК не производится, зато его прежнее значение увеличивается на единицу. В случае безусловного перехода (после операторной вновь следует операторная вершина) так же следует просто увеличить на единицу содержимое Рг Сч A МК. Для этого достаточно среди множества логических условий иметь константу 0 (тождественно ложное логическое условие) и именно ее номер указывать в поле x в случае безусловного перехода.

Рис 4.13. Микропрограммный автомат с естественной адресацией

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

Действительно, на практике часто встречаются алгоритмы, содержащие в основном линейные участки и лишь изредка — условные вершины, Тогда для большинства микрокоманд (для тех, за которыми в ГСА следует операторная вершина) поля переадресации формата рис. 4.12, а использоваться не будут.

В этом случае имеет смысл введение двух различных форматов микрокоманд показанных на рис. 4.12, б. Один формат содержит только информацию о микрооперациях и после выполнения такой микрокоманды всегда добавляется единица к Рг Сч A МК — таким образом реализуется линейный участок.

Команды другого формата применяются только в случае реализации условной вершины. Как обычно, проверяется значение заданного логического условия (или его инверсии), и если оно истинно — в Рг Сч A МК загружается значение поля А1 микрокоманды, иначе к Рг Сч A МК добавляется единица

При этом никаких микроопераций УА в этом такте не выдает и никаких действий в ОА не выполняется.

Задание _________________________________________________

Попробуйте изменить структурную схему рис. 4.13 для работы с микрокомандами форматов рис. 4.12, б.

Такое решение позволяет значительно эффективней использовать ЗУ МК, однако производительность устройства несколько снижается. Естественно, если количество условных вершин велико, то велико будет и число "пустых" (для ОА) тактов дискретного времени. Если это окажется неприемлемым по соображениям быстродействия, придется возвращаться к формату микрокоманды рис. 4.12, а.




Поделиться с друзьями:


Дата добавления: 2015-04-25; Просмотров: 2338; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.034 сек.