Функциональная схема операционного автомата


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

Этот этап проектирования выполняется параллельно с разработкой содержательной ГСА по словесному описанию алгоритма.

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

Шина с функциональной точки зрения представляет линию связи между любыми устройствами. Шина может иметь различное количество каналов в зависимости от разрядности связываемых устройств. Шины разделяют на информационные и управляющие и по-разному изображают в функциональных схемах ОА.

Любое операционное устройство (регистры, сумматоры, счетчики и др.) изображают в функциональных схемах ОА в виде условного графического обозначения (УГО) в соответствии с ГОСТ 2.708-81, ГОСТ 2.743-72 (рис.2).

Высота H выбирается из ряда 10, 15 мм и далее через 5 мм, а длина L=1,5 H.

Допускается совмещать УГО функциональных узлов, если выходы одного полностью соответствуют входам другого. Внутри УГО функционального узла указывают его наименование и (или) условное обозначение.

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

Управляющие линии связи подводят к любой меньшей (обычно правой!) стороне УГО или к линии продолжения этой меньшей стороны.

Р е г и с т р - упорядоченная совокупность запоминающих элементов (триггеров) со схемами управления, предназначенная для записи, хранения и выдачи информации, а также для выполнения некоторых микроопераций над этой информацией. По изображению в функциональных схемах ОА регистры разделяют на несдвиговые, изображаемые в виде прямоугольника (рис.За). и сдвиговые, на которых может быть реализована МО сдвига содержимого (они изображаются в виде параллелограмма - рис.3б и 3в). В поле изображения необходимо указать номер регистра и его разрядность.



 


 

На регистрах могут быть реализованы следующие МО.

у1 - занесение в RG1 (RG1[15,0] := А, RG1[31,16] := 0).

у2 - RG1 := 0 - сброс всех разрядов в ноль.

у3 - занесение в RG2 (RG2 := В).

у4 - RG2 := R1 (RG2) - сдвиг содержимого вправо на 1 разряд.

у5 - RG3 := L1 (RG3).RG3[31] - циклический сдвиг влево.

Сигнал у1 реализует микрооперацию занесения информации в регистр RG1. При этом внешние данные заносятся в младшие разряды регистра (RG1[15,0]), а в старшие разряды (RG1[31,16])всегда заносятся нули (рис.За).

Сдвиги вправо изображают заглавной латинской буквой R, влево - L с указанием рядом количества разрядов, на которое выполняется сдвиг. Например, сдвиг на четыре разряда вправо следует записать RG2 := R4 (RG2). Необходимо помнить, что в стандартных микросхемах реализованы сдвиги только на один разряд.

При сдвигах освобождающиеся разряды регистра заполняются необходимой информацией (0 или 1). По умолчанию записывается случайная информация! При реализации операций сдвига в ОК или ДК иногда требуется заполнять освобождающиеся разряды регистра единицами. В этих случаях МО сдвига следует записать так: RG2 := 1.R1 (RG2) или RG3 := L1 (RG3).0.

MO циклического сдвига у5 следует использовать в тех алгоритмах, когда необходимо сохранять операнды до конца операции (например, в алгоритмах умножения с простой коррекцией). В приведенной на рис.Зв схеме в нулевой разряд RG3 [0] после сдвига запишется информация, "выталкиваемая" из тридцать первого разряда регистра RG3.

 
 


Нередко при выполнении алгоритмов арифметических операций необходимо проверить, не записан ли в регистре 0 (например, проверка делителя на нуль в операциях деления). В этих случаях используют схему логического "И", на n входов которой подают информацию с инверсных выходов триггеров регистра, а с единственного выхода схемы "И" можно снять логическое условие р2. При этом, если р2=1, в регистр занесен 0. На рис.3в показано, как можно снять другое логическое условие P1 = RG3 [31], анализ которого позволит определить, например, знак операнда в RG3.

При выполнении машинных алгоритмов операций содержимое регистров необходимо передать в другие операционные устройства, чаще всего в сумматор. Если выходы триггеров регистра (прямые или инверсные) соединены шиной со входом сумматора без каких-либо промежуточных устройств, то такой съем информации называют неуправляемым. При этом содержимое регистра постоянно находится на соответствующих входах сумматора. Для управления съемом информации могут быть использованы различные операционные устройства, включаемые между выходом регистра и соответствующим входом сумматора.

       
   
 
 

 

Чаще всего при выполнении алгоритма в одних тактах необходимо передать в сумматор содержимое RG без инверсии, в других - с инверсией. На рис.5 представлен один из возможных вариантов реализации - с использованием совокупности схем сложения по модулю 2. Пока не подан управляющий сигнал у6, на выход совокупности схем поступает неинвертированная информация с выходов регистра.

Для реализации управления съемом информации с регистра может быть использована комбинационная схема специального вида - мультиплексор MS, о котором более подробная информация будет дана позже. На рис.6 представлен мультиплексор, на плечо А которого поступает информация с прямых выходов триггеров регистра, на плечо В - с инверсных выходов. Когда у7 не подается, на выход MS поступает информация с плеча А. Под управлением сигнала у7 к выходу MS будет подключено плечо В. Сигнал y8 позволяет получить на выходе MS нули.

Замечание. Следует обратить внимание на то, что МО у6 и у7, управляющие съёмом информации с регистра, реализуются не на регистре, а на других устройствах операционного автомата.

С ч е т ч и к (двоичный) предназначен для подсчета числа выполненных тактов (например, в циклах умножения и деления) и для хранения результата счета. С точки зрения структуры счетчик (СТ) это регистр, дополненный операциями +1 и -1. В силу этой особенности в функциональных схемах устройств, реализующих операции с ПЗ, удобно порядок (или характеристику) результата операции заносить в счетчик для упрощения операции нормализации мантиссы результата. Счетчики бывают суммирующие, вычитающие и реверсивные, то есть настраиваемые на сложение или вычитание. Если N - максимальное число, которое необходимо занести в счетчик, то его разрядность определяется формулой n >= ] log2 N [.

       
 
 
   
Рис.7


Счетчик имеет цепи установки в нулевое состояние всех триггеров, в него можно занести любое число по установочным входам триггеров, а также выполнять операции счета. Поэтому основные МО на СТ:

у9 - СТ := 0 - сброс.

у10 - занесение информации.

у11 - СТ := СТ+1 или СТ := СТ-1.

Обычно содержимое счетчика необходимо анализировать в цикле умножения (или деления), чтобы, выполнив нужное количество действий, завершить цикл. Для этого выходы триггеров счетчика следует подать на схему анализа, с выхода которой снять логическое условие. Пусть СТ работает на вычитание, и закончить цикл надо, когда содержимое счетчика равно нулю. Это можно сделать, если инверсные выходы триггеров СТ подать на схему "И", с выхода которой снять логическое условие р3 (рис.7). Цикл завершится, когда р3 = 1, т.е. когда во всех разрядах счётчика - нули. Обнаружить это же условие можно, используя вместо схемы "И" элемент Пирса с нужным количеством входов. Аналогичным образом можно обнаружить, когда во всех разрядах счетчика "записаны" единицы.

С у м м а т о р- это комбинационная схема для сложения двух двоичных чисел. В функциональных схемах ОА сумматор изображают так, как показано на рис.8, выделяя два входных плеча А и В, на которые поступают операнды, и выходное плечо S, с которого снимают результат. Кроме того, сумматор имеет вход переноса СRР и выход переноса CR, которые выделяют при изображении в тех случаях, когда они используются

На SМ чаще всего реализуется МО подачи единицы на вход переноса: у12 - SМр = 1.

 
 


 

Если выполняется сложение операндов в ДК, это равносильно прибавлению единицы к младшему разряду суммы. При выполнении некоторых операций может возникнуть необходимость в занесении единиц в часть разрядов SMa[31,16] = 1.

Главное, о чем следует помнить при реализации такта сложения: сумматор - комбинационная схема, которая формирует результат на выходе S, пока поданы операнды на входы А и В, но не хранит результат операции. Поэтому результат операции сложения должен быть передан в том же такте в регистр для запоминания. Например, если операнды занесены в RG1 и RG2, причем операнд в RG2 отрицательный, и нужно выполнить операцию сложения с использованием ДК, то такт сложения должен быть записан так:

SМa = RG1

SМв = RG2

SМр = 1

RG3 := SМs

 

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

       
 
 
   

Д е ш и ф р а т о р (DC) - это комбинационная схема, которая преобразует код, подаваемый на его входы, в единичный сигнал на одном из выходов, то есть преобразует n-раз-рядное входное слово в 2n-разрядный унитарный код. На рис.9 приведена функциональная схема дешифратора на 3 входа, выполненная на элементах И-НЕ. В функциональных схемах дешифратор условно изображают так, как показано на рис.10.

       
 
 
   


 
 


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

На рис.11 приведен пример использования дешифратора при выполнении алгоритма умножения с ускорением 2-го порядка. 4 логических условия, снимаемых с дешифратора: р0, р1, р2, р3 позволяют выявить всевозможные двухразрядные комбинации в двух младших разрядах регистра множителя.

М у л ь т и п л е к с о р (МS) - это комбинационная схема, осуществляющая передачу сигналов с одной из входных линии в выходную. Выбор входной информационной линии производится кодом, поступающим на управляющие входы мультиплексора. Мультиплексор с k управляющими входами может управлять 2k входными информационными линиями.

 


На рис.12 приведена функциональная схема мультиплексора с двумя управляющими входами у0 и у1, подача сигналов на которые позволяет подключать на выход Е одну из четырех входных информационных линий А, В, С, Д.

 
 



В схеме использован дешифратор на 2 входа, позволяющий распознавать, какие управляющие сигналы поданы на входы у0, у1 для подключения одной из линий на выход мультиплексора.

На рис.13а дано условное обозначение мультиплексора на принципиальных схемах, а на рис.13б - изображение, которое используют на функциональных схемах ОА. Мультиплексор используют, например, в случаях, когда на одно плечо сумматора надо в разных тактах подавать содержимое различных регистров.

Управление выбором плеча МS, подключаемого к выходу (рис.13б), выполняется в соответствии с таблицей 1.

 

Таблица 1

Управляющие сигналы - Y0 Y1 Y0, Y1
Подключить к выходу Е A B C D

Из приведенной таблицы видно, что когда ни один из управляющих сигналов не подан, к выходу Е подключено плечо А, подача управляющего сигнала у0 подключает плечо В, сигнала у1 - плечо С, подача же обоих сигналов у0, у1 обеспечивает подключение к выходу Е плеча D.

Таким образом, управляющие сигналы у0 и у1 осуществляют выбор одной из четырех входных информационных линий. Если управляющих сигналов больше, то и количество входных линий значительно возрастает. Например, при k = 3 возможен выбор одной из 8 линий, при k = 4 выбор из 16 линий и т.д. Существуют варианты схем MS, в которых имеется дополнительный управляющий сигнал разрешения подключения к выходу, без подачи которого информация ни с одной из информационных линий не поступает на выход (состояние высокого импеданса) или дополнительный сигнал обнуления выходной информации.

Таковы основные операционные устройства, используемые в функциональных схемах ОА. В них, кроме того, могут использоваться отдельные триггеры (например, для фиксации ПРС), сумматоры по модулю 2 (для определения знака результата), инверторы (для формирования цифр частного) и другие.

 



Дата добавления: 2022-02-05; просмотров: 265;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

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

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.013 сек.