Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
automats.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
5 Мб
Скачать
☆

4.3. Микропрограммирование

Идею микропрограммирования [1] рассмотрим на примере микропрограммы умножения. Для построения устройства умножения, алгоритм операции умножения представляется в виде программы, выражающей эту операцию через так называемые микрооперации – сложение кодов, сдвиг кода, пересылка кода и т.д.

Схема операционной части устройства умножения приведена

на рис. 23.

Рис.23

На этом рисунке PrA служит для хранения множимого, в регистр PrB помещается множитель, а регистр CM – сумматор – во время выполнения микропрограммы хранит сумму частичных произведений, а при завершении микропрограммы в нём образуется произведение.

Это устройство служит для перемножения n-разрядных положительных чисел, меньших единицы, поэтому регистры PrA и PrB имеют по n разрядов. Произведение имеет 2n разрядов, причём регистр СМ имеет 2n+1 разряд (дополнительный разряд слева служит для размещения разряда переполнения промежуточных сумм частичных произведений). Регистры PrB и Cm осуществляют микрооперацию сдвига вправо, а регистр СМ также суммирование кодов. Устройство умножения имеет также счётчик СЧ, подсчитывающий число выполненных тактов. Умножение начинается с младших разрядов множителя.

Микропрограмма умножения представлена на рис.24, а. В этой микропрограмме используются следующие микрооперации:

у1) СМ:=0 - обнуление регистра СМ;

у2) СМ:=0 - обнуление счётчика;

у3) СМ:=СМ+PrA – суммирование кодов в регистрах СМ и PrA;

у4) PrB:=R(1,CM) – сдвиг содержимого регистра PrB вправо на один разряд;

у5) СМ:=R(1,CM) – сдвиг содержимого сумматора вправо на один разряд

у6) СЧ:=СЧ+1 – увеличение содержимого счётчика на 1.

Для уменьшения общего времени выполнения умножения микрооперации у1 и у2 выполняются параллельно (одновременно). Также параллельно выполняются микрооперацииу4, у5 и у6. В процессе выполнения микропрограммы проверяется истинность следующих логических условий:

p1) PrB[n]=1 – очередная цифра множителя равна 1;

p2) СЧ=n – содержимое счётчика равно n, т.е. выполнено n тактов.

а) б)

Рис.24

Устройство умножения состоит из двух частей: операционной части и управляющей части (рис.25). Управляющая часть задаёт требуемую последовательность микроопераций в соответствии с микропрограммой умножения. На рис. 25 использованы обозначения : Н – сигнал запуска устройства умножения; К – сигнал окончания выполнения микропрограммы умножения; у1, …, у6 – управляющие сигналы инициирующие микрооперации; р1, р2 – сигналы обратной выражающие значение логическихусловий.

множимое

множитель произведение

Рис. 25

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

С использованием введённых обозначений микроопераций и логических условий представим микропрограмму умножения в виде граф-схемы так, как показано на рис.24 б. Выход вершины НАЧАЛО и вход вершины КОНЕЦ пометим символом начального состояния автомата S0. Выходы операторных вершин граф-схемы микропрограммы пометим состояниями S1, S2, и S3, как показано на рис. 24,б. Под действием сигнала запуска Н изи состояния S0 автомат переходит в состояние S1 с одновременной выдачей управляющих сигналов y1 и y2. Из состояния S1 при Р1=1 автомат переходит в S2 с выдачей y3, при Р1=0 переходит в S3, с выдачей y4, y5, y6. Из состояния S2 под действием тактирующего сигнала “-“ (пустого входного символа) автомат переходит в S3 с выдачей y4, y5, y6 и т.д.

Граф управляющего автомата выражающий его функции переходов и выходов, показан на рис. 26.

Рис. 26

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