|
Идею микропрограммирования [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
Дата добавления: 2015-10-23; просмотров: 191 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Выполнение арифметических и логических операций | | | Элементная база построения комбинационных автоматов |