ОперационныйСинтез (775245), страница 4
Текст из файла (страница 4)
Если комбинационный элемент выполняет двух- или многоместную операцию, целесообразно входное слово представлять совокупностью двух или нескольких слов (подслов):
x{1: n} =x{1:q} . x{q+1:n}
или
x{1:n} = x{1:p} . x{p+1:q} x{s+1: n},
здесь знак . (точка) означает соединение (конкатенацию) отдельных слов в общее слово х{1:n}. Для удобства записи полсловам присваиваются индивидуальные имена с самостоятельными полями разрядности:
х{1:n} = x1{1:r1}.х2{1:r2} xi{1:ri} ;
значения r1, r2, ..., ri могут быть как одинаковыми, так и отличаться друг от друга.
Итак, предложение операционного описания элемента, обрабатывающего I. входных слов, записывается теперь в виде
y{1:k} = F(x1{1:r1} . x2{1:r2} . . . . . xi{1:ri}). (3.2)
Отдельные операционные элементы связываются друг с другом и входом и выходом операционного устройства при помощи проводов. Принято группы проводов, несущих одинаковую функциональную нагрузку, называть шиной и присваивать ей имя выходного слова того элемента, который создает на этой шине сигналы. Для различения шин целесообразно обозначать их такими именами, которые отображали бы характер преобразования информации в операционном элементе, работающем на эту шину. Поэтому выражение (3.2) может быть записано в виде
F{1:k} = F(х1{1:r1} . х2{1:r2} . . . . . xi{1:ri}). (3.3)
Операционные элементы комбинационного типа строятся из элементарных логических элементов, образующих базовую систему элементов [1] . Поскольку каждый из логических элементов обладает конечным временем переключения, выходные сигналы операционного элемента F изменяются с некоторой задержкой относительно моментов изменения входных сигналов х. Такой режим работы операционного элемента называется асинхронным.
При построении реальных операционных элементов цепочки элементарных логических элементов, связывающих входы х и выходы F, могут быть разной длины, поэтому формирование разрядов выходного слова заканчивается в разные моменты времени. Это обстоятельство приводит к некоторым затруднениям при согласовании во времени работы комбинационных операционных элементов в операционном устройстве. Для исключения этого явления на операционные элементы подаются специальные синхронизирующие, или стробирущие сигналы, позволяющие коду F{1:k} проходить на выход элемента лишь после окончания всех переходных процессов. Отсутствие стробирующего сигнала соответствует нулевому значению выходного кода F{1:k}. Такой режим работы операционного элемента называется синхронным; он описывается следующим предложением операционного описания:
У: F{1:k} = F(x1{1:r1}.x2{1:r2) xi{1:ri}) , (3.4).
здесь У - имя стробирующего сигнала; при У = 0 выходной код F{1:k} = 0 .
Существует ряд операционных элементов комбинационного типа, у которых входные или выходные шины включают в себя лишь один провод. В этом случае поле разрядности может быть опущено. Например, для операционного элемента с одним выходом имеем
F=F(x1{1:r1}.x2 xi). (35)
Отсутствие поля разрядности y x2 и xi означает, что эти входные шины включают в себя по одному проводу.
Графическое изображение операционных элементов комбинационного типа строится согласно требованиям ГОСТа:
-
Элемент изображается в виде прямоугольника.
-
Движение информации в элементе происходит слева направо, входные сигналы подходят к левой стороне прямоугольника, выходные отходят от правой стороны.
-
Имя функции преобразования записывается в левом верхнем углу прямоугольника.
-
Входные и выходные шины изображаются двойными линиями; расстояние между линиями не зависит от разрядности шины.
-
Запрещается использование стрелок, указывающих направление движения информации по проводам и шинам.
Условное изображение комбинационных операционных элементов представлено на рис. 1. Изображения отличаются количеством входных шин, количеством проводов в шинах, наличием или отсутствием стробирующего сигнала. Для определенности будем считать, что счет проводов в шине идет сверху вниз - верхний провод шины имеет номер левой цифры поля разрядности, нижний провод - правой цифры поля разрядности.
Рис. 1. Условное изображение операционного элемента комбинационного типа: а - с тремя входными шинами и стробирующим сигналом; б - с одной входной шиной и стробирующим сигналом; в - с одноразрядным выходом; г - с одноразрядным выходом и стробирующим сигналом.
Наша промышленность выпускает широкий ассортимент микросхем, которые могут использоваться для построения комбинационных операционных элементов либо непосредственно, либо в определенных комбинациях. Несмотря на различив в способе построения базового элемента - диодно-транзисторное, транзисторное, с использованием МОП- или КМОП-структур, функциональный набор элементов внутри серии элементов приблизительно одинаков, поэтому практическую реализацию комбинационных операционных элементов мы будем рассматривать на элементах наиболее распространенной серии K155.
Операционные элементы комбинационного типа мы опишем в порядке увеличения их функциональной сложности: схемы поразрядного преобразования, схемы свертки, схемы формирования признака логического отношения, схемы формирования признака арифметического отношения и, наконец, схемы сложного преобразования кодов, такие, как сумматоры, дешифраторы, мультиплексоры и демулътиплексоры. Рассмотрение будет сопровождаться рекомендациями по их реализации на элементах серии K155. Этим перечнем не ограничивается возмогший набор комбинационных операционных элементов. Сюда не вошли, например, устройства умножения, программируемые матрицы и другие. Тем не менее, материал этой главы затрагивает все базовые вопросы, необходимые для построения наиболее распространенных комбинационных операционных элементов.
3.2. Схемы поразрядного преобразования
Схемы поразрядного преобразования строятся, как это вытекает из смысла операции, в виде совокупности однотипных логических схем, функционально не связанных между собой. В таких схемах разрядность входных слов (кодов) и слова (кода) преобразования всегда одинакова, и операционное описание элемента принимает вид
y{1:k} =A{1:k} f B{1:k}, (3.6)
где y{1} = A{1} f B{1};
В качестве f можно использовать любые логические функции двух переменных. Если одно из слов принимает одинаковые значения по всем разрядам, то шина этого слова может быть заменена одним проводом, в результате чего операционное описание упрощается:
у{1:k} = A f B{1:k}. (3.7)
Если в качестве f выступает функция "И", то выражение (3.7) описывает работу коммутатора, в котором роль стробирующего сигнала У играет переменная А:
y{1:k} = A & B{1:k} (3.8)
или согласно (3.4).
A y{1:k} = B{1:k}. (3.9)
Выражения (3.8) и (3.9) являются эквивалентными, но первое из них более информативно, поскольку подчеркивает конъюнктивную связь стробирующего сигнала и коммутируемого кода. Функция "И" в выражении (3.6) воспринимается как функция выделения тех разрядов слова B{1:k}, для которых соответствующие разряды слова А{1:k} принимают единичное значение. Например, для выделения первых пяти разрядов слова B{1:k} слово А{1:k} должно принять значение А{1:k} = 1111100 ... 0. Функция "ИЛИ" используется для формирования выходного слова по его частям. Эти части записываются в словах А л В таким образом, чтобы при дизъюнктивном их соединении было сформировано требуемое слово - разряды А и В, не формирующие у, заполняются нулями. Пусть при выполнении операции y{1:k}=A{1:k} V B{1:k} (3.10)
первая половина слова у формируется словом А, а вторая - словом В. Тогда реальное преобразование описывается как y{1:k} = А{1: k/2) . 00...0 V 00...0 . B{k/2+1:k}.
Функция "равнозначность" применяется для установления тождественности слов А и В:
y{1:k} =А{1:k} = B{1:k}.
При совпадении слов А и В по всем разрядам код выходного слова будет состоять из одних единиц. Напомним, что функция равнозначности описывается в нормальной форме записи следующим образом [1]:
у = AВ + -А-B.
Функция отрицания равнозначности (функция сложения по модулю два, функция "Исключающее ИЛИ") устанавливает поразрядное несовпадение слов A и В: у{1:k} = A{1:k} mod2 B{1:k} . (3.11)
Код слова y принимает единичное значение во всех разрядах, если коды слов А и В взаимно инверстны. Если код А тождественно равен единице, то выходной код у формируется как инверсия кода B. Действительно, преобразуя функцию отрицания равнозначности (3.12)
y = А┐B + ┐АВ для A =1, получаем у = ┐В , откуда здесь ┐ - знак инверсии кода.
Рис. 2. Схемы поразрядного преобразования: а - инвертор; б - поразрядное "И"; в - коммутатор кода; г - поразрядное "ИЛИ"; д - совпадение; е – несовпадение; ж - 6 "НЕ" К155ЛН1; з - 4"И" K155ЛИ1; в - 4"ИЛИ" К155ЛЛ1; к - 4"ИСКЛЮЧ. ИЛИ" К155ЛП5.
Условное обозначение схем поразрядного преобразования приведено на рис. 2, а-е. Имя выходных шин отражает характер преобразования - инверсия, коммутация, и, или, совпадение, несовпадение. На том же рисунке приведены микросхемы K155, из которых могут быть собраны реальные схемы требуемой разрядности.
3.3. Схемы свертки по логической функции
Схемы свертки по логической функции связывают все входные переменные операционного элемента одной и той же функции ψ : у = ψ х{1:п}. (3.13)
В качестве ψ могут выступать все логические функции многих переменных, подчиняющиеся перестановочному закону [1] . Свертка по "И" у = & x{1:n} устанавливает наличие единиц во всех разрядах входного кода х{1:n} . Свертка по "ИЛИ" y = V x{1:n} проверяет, имеется ли во входном коде x{1:n} хотя бы одна единица. Свертка по mod 2 y = mod 2x {1:n} формирует единичный входной сигнал при нечетном количестве единиц в коде слова x{1:n} и нулевой при их четном количестве. Условное обозначение схем сверток приведено на рис.3,а,б,в.
e)
Рис. 3 Схемы свертки по функции: а - по "И"; б - по "ИЛИ"; в - по "mod 2"; г – пирамидальное соединение; д - цепочечное соединение; е - по "И" на 16 входов на К155ЛА2 и К155ЛА3; ж - по "mod2” на 8 входов на К155ИП2
Реализация схем свертки по "И" и "ИЛИ" на микросхемах K155 встречает значительные трудности, поскольку схемы "И" и "ИЛИ" выпускаются только в двухвходовом варианте. Действительно, для построения схемы на п входов потребуется п-1 двухвходовых схем. Эти схемы могут соединяться либо пирамидально, либо цепочечно, как это показано на рис. 3,г,д. Некоторый выигрыш может быть получен при использовании восьмивходовых схем "И-НЕ", но для этого реализуемую функцию необходимо представить в базисе Функции "Штрих Шеффера" [I]. На рис. 3,е изображена шестнадцативходовая схема свертки по "И", логическое выражение которой было получено в результате следующих преобразований: