Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Shpory-Vinograd.docx
Скачиваний:
4
Добавлен:
01.04.2025
Размер:
20.55 Mб
Скачать

10,13. Варианты построения микрокоманд

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

Кодируемые поля. Не все возможные комбинации 32 бит можно использовать в известных микрокомандах базовой ЭВМ. Так, некоторые группы вентильных схемы не могут быть открыты одновременно. Хотя принципиально нет ограничений на то, чтобы некоторые вентильные схемы были открыты одновременно, в действительности редко возникает необходимость в открытии в данный момент времени более одной из них.

Недопустимость более одного сигнала на левом и правом входах АЛУ, задания сигналов на входы АЛУ и использование в том же такте полученного результата, одновременной записи в БР суммы операндов и результатов их логического умножения — все это позволяет разбить операционную микрокоманду на две и сократить общее число используемых разрядов микрокоманды.

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

Один из возможных вариантов 16-разрядных микрокоманд базовой ЭВМ приведен на рисунке. Здесь почти вся информация закодирована. Несколько сократились и другие поля (чем длиннее поле, тем больше экономия от кодирования). Однако для декодирования таких сжатых полей требуется использовать специальную схему — дешифратор.

Дешифратор «1 из 2п» представляет собой комбинационную схему с n входами и 2n выходами (на рис. 4.11 показаны два дешифратора: «1 из 16», имеющий 4 входа и 24 = 16 выходов, и «1 из 4», имеющий 2 входа и 22 = 4 выхода). Каждая выходная линия дешифратора однозначно соответствует одной из 2n возможных комбинаций входных сигналов.

Разбиение такта на фазы. Объем микропрограммной памяти можно сократить и при использовании горизонтальных микрокоманд. Для этого надо увеличить их информационную емкость: кодировать в каждой микрокоманде большее число микроопераций. Исполнение же несовместимых во времени микроопераций можно обеспечить разбиением рабочего такта ЭВМ (времени исполнения одной микрокоманды) на несколько подтактов (фаз), в каждом из которых выполняется одно или несколько элементарных действий по реализации микрокоманды.

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

Так как количество ячеек нанопамяти невелико, то их адреса имеют малую разрядность, что позволяет уменьшить длину ячеек памяти микрокоманд, где размещаются такие адреса. Это в ряде случаев существенно сокращает общий объем памяти, несмотря на появление нового вида памяти — нанопамяти.

Сокращение количества и разрядности управляющих микрокоманд. Каждая из управляющих микрокоманд базовой ЭВМ производит проверку лишь одного из битов заданного регистра. Поэтому для декодирования команды или выявления индексной ячейки иногда приходится использовать длинные последовательности из таких УМК (более 20 УМК).

Уменьшения числа УМК можно добиться несколькими способами:

-модификацией адреса, содержащегося в УМК, путем выполнения определенной логической операции над ним и каким-либо полем заданного регистра.

-проверкой комбинации битов заданного регистра.

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]