Структура 5Структурная схема операционного автомата. Схема автомата для умноже­ния двоичных чисел по алгоритму Бута приведена на рис. 1.2.2. Составной ре­гистр из RG3   RG2 и Т образован путем соединения выхода триггера младшего разряда регистра RG3 c входом триггера старшего разряда RG2 , выхода триггера младшего разряда RG2 с входом триггера T. Информационные выходы регистров RG1 и RG3 подключены к входам сумматора – вычитателя, выходы которого соеди­нены с информационными входами регистра RG3. Как указано выше, счетчик с 3–входовым Логическим элементом ИЛИ служат для фиксации окончания опера­ции умножение.

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

Для приведения узлов операционного автомата в исходное состояние перед выполнением операции умножения используются управляющие сигналы:

●   у1 и у2 — для загрузки регистров RG1 , RG2 множимым А и множителем В соот­ветственно;

●   у3 , у4 — для установки регистра RG3 и триггера Т в нулевое состояние;

●   у5 — для записи в счетчик CТ числа n = 4.

С помощью управляющих сигналов у6, у7 реализуются микрооперации сумми­рования RG3 <— RG3 + RG1 и вычитания RG3 <— RG3RG1. Результаты микроопера­ций поступают в RG3.



Структура 1

Для сдвига содержимого составного регистра RG3, RG2, Т используется уп­равляющий сигнал у8, а для уменьшения показаний счетчика СТ на единицу — сигнал у9.

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

На основании перечисленных выше управляющих сигналов (микроопераций) сформируем набор микрокоманд для выполнения операции умножения:

●   объединим микрооперации у1.....y5 (начальной загрузки регистров RG1, RG2, RG3, триггера T и счетчика СТ) в общую микрокоманду Y1 = (у1, у2, у3, у4, у5), так как они могут быть выполнены одновременно (на одном тактовом интер­вале);

●   выделим микрооперации сложения и вычитания с загрузкой результата в RG3 в отдельные микрокоманды: Y2 = у6 , Y3 = у7;

●   объединим микрооперации у8, у9 арифметического сдвига вправо на один разряд содержимого составного регистра (RG3, RG2, Т) и уменьшения на еди­ницу содержимого счетчика СТ в микрокоманду Y4 = {у8, у9}.

В операционном автомате формируются следующие логические условия (при­знаки):

●   Х1 , Х2 — значения выходного сигнала триггера T и младшего разряда RG2. Выполняемые действия при различных комбинациях этих сигналов приведе­ны в табл. 1.2.1;

●   Х3 — результат проверки на нуль содержимого счетчика СТ. Значение Х3 = 1 свидетельствует о том, что счетчик пуст (СT = 000). В этом случае операция умножения завершается. Если Х3 = 0, то начинается новый цикл операции ум­ножения.

Особенности схемной реализации операционного автомата. Принципиаль­ная схема операционного автомата, построенная с использованием библиотеч­ных  элементов пакета программ MicroLogic II моделирования цифровых схем, изображена на рис. 1.2.3,а.

Структура 2

Состав и назначение узлов операционного автомата. Опера­ционный автомат содержит:

●   триггер Т, выходной сигнал Q которого используется в качестве логического условия Х1 для выявления следующего действия в процессе умножения двоич­ных чисел;

●   регистры RG3 и RG2 для хранения промежуточных результатов и произведения в виде 8–разрядного двоичного кода Р7,..., Р0. Назначение выводов каж­дого регистра: выводы 1:4 являются входами данных для параллельной за­грузки; вывод 14 — последовательный вход DS; выводы 8:11 — выходы регистра; выводы 5, б, 7 служат для подачи управляющих сигналов сброса, параллельной загрузки и синхроимпульсов. Выход Р4 младшего разряда реги­стра RG3 соединен с последовательным входом DS регистра RG2, а выход Р0 младшего разряда регистра RG2 — с входом данных D триггера Т. Поэтому RG3, RG2 и Т образуют 9–разрядный сдвигающий регистр, младшие разряды которого задействованы для сигналов логических условий Х2 и X1. На параллельные входы данных В3, В2, В1, В0 регистра RG2 подан множитель В = 0111 (+710). Параллельные входы регистра RG3 подключены к выходам 4–разрядно­го сумматора. Последовательный вход DS регистра RG3 подключен к выводу Р7 для сохранения значения знакового разряда (Р7) при реализации арифме­тического сдвига. Входы для активизации параллельной загрузки V и для по­дачи импульсов синхронизации С подключены к логическим элементам, вход сброса R — к источнику D01 пускового импульса ПИ. В исходном состояния (после пускового импульса) регистр RG2 загружен множителем B, а регистр RG3 и триггер Т — нулями;

●   вычитающий счетчик СТ, выполненный на микросхеме К155ИЕ7 (библиотеч­ный макроэлемент 193). На входы данных D3, D2, D1, D0 (выводы 9, 10, 1,15 счетчика СТ подан операнд 0100 (число n = 4) для фиксации окончания операции умножения, на вход сброса R (вывод 14) — уровень логического 0 (счетчик готов к работе). Синхроимпульсы подаются на вывод 4, а сигнал параллельной загрузки с нулевым активным уровнем — на вывод 11. Для формирования логического условия Х3 используется элемент 3ИЛИ–НЕ, на который подаются выходные сигналы Q2, Q1, Q0 (выводы 6, 2, 3) счетчика. При Q2 = Q1 = Q0 =0 формируется сигнал Х3 = 1, свидетельствующий об оконча­нии операции умножения;

●  4–разрядный сумматор (библиотечный макроэлемент SM_SC), предназначенный для реализации операций сложения/вычитания в дополнительном коде, для чего к его четырем входам подключены логические элементы исключа­ющее ИЛИ. На входы A3, А2, А1, А0 логических элементов подается множимое А = 1011 = (–510). Четыре других входа сумматора соединены с выходами Р7, Р6, Р5, Р4 регистра RG3, а выходы сумматора — с входами данных RG3. В режиме вычитания на входы сумматора должен поступать дополнительный код А3А2А1А0+1 операнда А. Такой режим реализуется путем подачи микрокоманды Y3 = 1 на управляющие входы логических элементов исключающей ИЛИ и на вход переноса сумматора (вывод 12);

●   логические элементы, предназначенные для управления работой операционного автомата;

●   генераторы сигналов D01÷D06 для формирования пускового импульса (ПИ) синхроимпульсов (СИ) и последовательности микрокоманд Y1, Y2, Y3, Y4, требуемой для перемножения двоичных четырехразрядных чисел 1011 и 0111 по алгоритму Бута.

Регистр RG1 (рис. 1.2.3,а), в котором множимое А =А3А2А1А0 = 1011 постоянно хранится в процессе выполнения всей операции умножения, в приведенную на рис. 1.2.3,а схему не включен. Программа MicroLogic II располагает источниками логических уровней 0 и 1, поэтому значения разрядов А3 = 1, А2= 0, А1 = 1, А0= 1 множимого непосредственно подаются на входы сумматора SM_SC через элементы исключающее ИЛИ.

В исходном состоянии:

●   на входы логических элементов исключающее ИЛИ подается множимое А = 1011 (при этом на входы сумматора поступает А = 1011 = — 510 при сложе­нии и — А = 0101 = +510 при вычитании);

●   на параллельные входы данных ВЗ, В2, В1, В0 регистра RG2 — операнд B = 0111 (+710);

●   на входы данных D3, D2, D1, D0 счетчика СТ операнд 0100 (410);

●   на вход R сброса счетчика — логический 0 (счетчик готов к работе).

Организация управления операционным автоматом. Для управления узлами операционного автомата используются генераторы сигналов D01:D06. Помимо синхроимпульсов генераторы формируют (рис. 1.2.3,а):

●   пусковой импульс ПИ для сброса 9–разрядного регистра RG3, RG2, Т (Р7...Р0 = 0...0, Х1 = 0) и загрузки счетчика CT числом 4 (Q3Q1Q0 = 100);

●   микрокоманду Y1 — для загрузки регистра RG2 множителем В;

●   микрокоманды Y2,YЗ — соответственно для сложения и вычитания содержи­мого RG3 и RG1 с сохранением результата в RG3;

●   микрокоманду Y4 — для сдвига на один разряд вправо содержимого составно­го регистра RG3, RG2, Т и уменьшения на единицу содержимого счетчики СТ. Каждая микрокоманда действует в течение тактового периода СИ (двух тактов со значениями СИ = 0 и 1). Временная последовательность микрокоманд Y1, Y2, YЗ, Y4 выбирается на основании рассмотренного алгоритма Бута (рис. 1.2.1).

рис. 1.2.4

Для перемножения двоичных четырехразрядных чисел 1011 = —510 и 0111 =+710 вре­менная последовательность сигналов представляет собой (рис. 1.2.4):

●   пусковой импульс ПИ = 1 (такт 1);

●   микрокоманду загрузки Y1 = 1 (такты 1, 2);

●   микрокоманды Y3 = 1 (такты З, 4) и Y4 = 1 (такты 5, 6), реализующие согласно логическому условию Х2Х1 = 10 вычитание и сдвиг 1;

●   микрокоманду Y4 = 1 (такты 7, 8, 9, 10) для реализации сдвигов 2 и 3, по­скольку Х2Х1 =11;

●   микрокоманды Y2 = 1 (такты 11, 12) и Y4 = 1 (такты 13, 14), выполняющие сло­жение и сдвиг 4 в соответствии с логическим условием Х2Х1 = 01.

Для составления схемы логики управления узлами операционного автомата использовалась табл. 1.2.2, в которой приведены:

●   входы узла и подаваемые на них управляющие сигналы (с указанием выпол­няемой микрооперации);

●   логические элементы, которые задействованы для подачи на вход управля­ющего сигнала.

Структура 4

Микрокоманда Y1 = 1, воздействуя на вход V (такты 0, 1), устанавливает регистр RG2 в режим параллельной загрузки разрядов ВЗ, В2, В1, В0 множителя. Загрузка происходит по СИ, поступающему через ЛЭ5 на вход С–вход регистра RG2.

При исполнении микрокоманды Y2:

●   сигнал Y3, поступающий на входы элементов исключающее ИЛИ, равен нулю поэтому реализуется операция сложения;

●   сигнал Y2 = 1 через ЛЭ1 поступает на вход V регистра RG3 и переводит его в режим параллельной загрузки;

●   сигнал Y2 = 1 через ЛЭ1, ЛЭ2 открывает доступ СИ на С–вход регистра RG3 для активизации параллельной загрузки выходных сигналов сумматора.

Отличие исполнения микрокоманды Y3 от микрокоманды Y2 состоит в том, что путем управления элементами исключающее ИЛИ и сумматора (подачей на вход переноса единичного сигнала) реализуется операция вычитания. Результат по–прежнему помещается в RG3.

     При исполнении микрокоманды Y4 с выхода генератора D06 снимается единичный сигнал, поэтому через открытые ЛЭ4, ЛЭ5, ЛЭ6 синхроимпульсы СИ поступают на С–входы регистров RG3, RG2, триггера Т и счетчика СТ, в результате чего происходит арифметический сдвиг содержимого составного регистра вправо на один разряд и уменьшение содержимого счетчика на единицу.

Принцип работы операционного автомата. Для пояснения работы автомата на отдельных тактах воспользуемся временными диаграммами (рис. 1 2.4), полученными в результате компьютерного моделирования.

Пусковой импульс ПИ (такт 1), воздействуя на соответствующие входы (рис. 1.2.3, а), осуществляет сброс регистров RG3, RG17...Р0 = 0...0) и триггера Т (Х1 = 0), а также загрузку счетчика СТ числом 4 (Q3Q1Q0 – 100).

Во время тактов 1,2 действует микрокоманда Y1 = 1, поэтому по срезу перво­го синхроимпульса СИ на втором такте осуществляется параллельная загрузка регистра RG2 множителем В =  0111 (+710), в результате на выходе RG2 в начале 3—го такта появляются сигналы Р3 = 0, Р2= 1, Р1 =0, Р0 = 1. Младший разряд P0 регистра RQ2 используется в качестве логического условия Х2.

После выполнения на 3–м и 4–м тактах микрокоманды Y3 вычитания мно­жимого А (—510) из содержимого регистра RG3 (0000) в RG3 загружается Р7Р6Р5Р4 = 0101 (+510). Затем выполняются арифметические сдвиги 1, 2, 3 (5–10 такты), приводящие к последовательному изменению 9–разрядного кода Р7Р6Р5Р4РЗР2Р1Р0: 010101110 (исходное состояние); 001010111; 000101011; 000010101 (конечное состояние на такте 11).

После трех сдвигов комбинация логических условий Х2Х1 =01, поэтому на 11–14 тактах выполняются операции суммирования (Y2) и сдвига 4 (Y4).

Из временных диаграмм Q2Q1Q0(t), отражающих работу счетчика СТ, видно, что после четвертого сдвига (Y4 — такты 13, 14) счетчик оказывается пустым, по­этому на выходе логического 3ИЛИ–НЕ появляется сигнал ХЗ = 1 (в начале так­та 14), свидетельствующий об окончании операции умножения.

На выходе регистровой пары RG3, RG2 получаем окончательный результат — произведение (—510) х (+710) в виде 8–разрядного дополнительного кода Р7Р6Р5Р4РЗР2Р1Р= 11011101, который соответствует значению (—3510).

Макроэлемент операционного автомата. Программа Micro–Logic II позволя­ет на основе логической схемы устройства (рис. 1.2.3,а) создать макроэлемент.

 

Макроэлемент операционного автомата с подключенными генераторами сиг­налов для его проверки представлен на рис. 1.2.3,б. Проверка работоспособно­сти макроэлемента показала полное совпадение временных диаграмм, с времен­ными диаграммами на рис. 1.2.4 для логической схемы операционного автомата. Использование макроэлементов при моделировании позволяет представить схе­мы сложных функциональных узлов в компактном виде (на одном экране), что значительно облегчает проведение исследований.


Рекомендуйте эту статью другим!



mosh1
март 13, 2017 1906

Зависимость мощности от силы тока, формула мощности, физический смысл

Первое упоминание об электричестве встречается в опытах древнегреческого философа Фалеса.…
Полимерные изоляторы
нояб 21, 2014 4001

Полимерные изоляторы, достоинства, конструкция, производство, применение

Полимерные изоляторы используются для крепления и изоляции проводов подстанций,…
Защита электроустановок от ударов молнии 2
июнь 09, 2014 3628

Защита электроустановок от ударов молнии

Электрический ток, возникающий под действием молнии характеризуется низкой частотой. В…
Интерфейсы подключения
фев 05, 2014 4347

Интерфейсы подключения

Поскольку микроэлектроника сейчас применяется практически повсеместно, а развитие её…
Выбор шуруповерта 2
фев 20, 2014 2089

Выбор шуруповерта

Сегодня производители предлагают следующие различные виды шуруповертов, которые могут…