Комбинационные схемы

Содержание



1. Основные аксиомы, теоремы и тождества алгебры логики

2. Переключательные функции

3. Не полностью определенные переключательные функции

4. Построение комбинационной логической схемы по заданной переключательной функции

5. Минимизация переключательных функций с помощью карт Карно

6. Нормальные формы логических уравнений. Преобразование логических уравнений к заданному базису

7. Скобочные формы логических уравнений

8. Комбинационные схемы

Список литературы






1. Основные аксиомы, теоремы и тождества алгебры логики



Методы синтеза и анализа всех классов цифровых схем построены на базе алгебры логики, которая является основным математическим аппаратом описания и преобразования структуры цифровых схем [1].

В алгебре логики рассматриваются переменные, которые могут принимать только два значения: 0 и 1 (например, 0 – событие не происходит, 1 – происходит; 0 – ложное высказывание, 1 – истинное; 0 – низкий уровень напряжения, 1 – высокий; 0 – разомкнутый контакт, 1 - замкнутый). Значения переменных не отображают каких-либо количественных значений, а имеют лишь символическое значение.

Основные соотношения алгебры логики приведены в табл. 1. В справедливости приведенных соотношений можно убедиться, используя метод перебора. При преобразовании логических выражений, как и в обычной алгебре, должен соблюдаться порядок выполнения операций (порядок старшинства операций) – сначала отрицание, затем конъюнкция и потом дизъюнкция. Приведенный порядок выполнения операций можно изменить и задать его с помощью скобок. В тождествах (9.1) – (12.2) правая часть проще левой, поэтому их можно использовать для упрощения сложных логических выражений.

Все тождества записаны парами на основании того, что по принципу двойственности из одного тождества пары можно получить другое взаимной заменой операций дизъюнкции и конъюнкции, а также значений 0 и 1. Тождества (4.1) и (4.2) самодвойственны, так как они не изменяются по принципу двойственности.

Большую роль в теории переключательных функций играет операция сумма по модулю два (исключающее ИЛИ, логическая неравнозначность), которая обозначается символом  и определяется соотношением






 



Операция сумма по модулю два коммутативна, ассоциативна и дистрибутивна относительно операции конъюнкции.



2. Переключательные функции



Любое логическое выражение, составленное из n переменных с помощью конечного числа операций алгебры логики, можно рассматривать как некоторую функцию n переменных. Двоичная функция может принимать только два значения: 0 и 1 – в зависимости от значений переменных. Такие функции являются удобным инструментом для описания, анализа и синтеза переключательных схем (бесконтактных и контактных), поэтому они называются переключательными функциями (ПФ).

Для ПФ n переменных x0,…,xn-1 будем использовать обозначение y (x0,…,xn-1). Совокупность значений переменных, в которой каждая переменная может принимать значения 0 или 1, называется набором. Любая функция n переменных может быть определена на 2n наборах. Это следует из того, что каждому набору соответствует n-разрядное двоичное число, а количество различных двоичных чисел при n разрядах равно 2n.

Существуют несколько способов задания ПФ.

1. Табличный, когда функция задается в виде таблицы истинности (соответствия). Таблица истинности содержит 2n строк ( по числу наборов), n столбцов значений аргументов и один столбец значений функции. В таблице каждому набору аргументов соответствует значение функции.

Таблица истинности ПФ, значения которой соответствуют значениям, принимаемым большинством переменных в наборе (функция голосования), определяет ПФ мажоритарного элемента “два из трех” (переноса двоичного разряда.

2. Координатный способ, когда функция задается в виде координатной карты состояний, например в виде карты Карно. Карта содержит 2n клеток по числу наборов значений переменных. Каждая клетка задается координатами строки и столбца, соответствующими определенному набору. Все аргументы разбиваются на две группы так, что одна группа определяет координаты строки, а другая – столбца. Порядок записи значений переменных в каждой группе задается записью переменных в соответствующем порядке над столбцами и около строк. Кодовые комбинации, задающие координаты двух соседних столбцов (строк), соответствуют двум соседним кодовым комбинациям циклического кода Грея .Соседние комбинации такого кода отличаются значениями только одной переменной. Значение функции на данном наборе проставляется внутри клетки (клетки, соответствующие нулевым значениям ПФ, часто в целях наглядности оставляют пустыми).













На рис. 1,а приведена карта Карно для ПФ мажоритарного элемента “два из трех”, заданной таблицей истинности 2, на рис.1,в – для ПФ компаратора. На рис.1,б,г в клетках проставлены их номера, соответствующие номерам наборов.










Карты Карно являются важным средством проектирования логических схем. Особенность карт в том, что любые две соседние клетки отличаются значением какой-либо одной и только одной переменной. Эта особенность характеризует также клетки первой и последней строк, первого и последнего столбцов, поэтому такие клетки тоже можно считать соседними. Указанная особенность соседних клеток позволяет легко осуществлять упрощение ПФ посредством использования тождества склеивания.

3. Числовой способ, когда ПФ задается в виде десятичных номеров тех наборов переменных, на которых функция принимает значение 1. При этом следует учитывать, что i-я двоичная переменная имеет “вес” 2i. Например, приписывая переменным x2,x1,x0 соответственно “веса” 22,21,20, в числовом виде ПФ рис.1,а будет задана как y( x2,x1,x0 ) = ( 3, 5, 6, 7 ).

Можно использовать для задания функции десятичные номера наборов, на которых функция принимает значение 0. Та же ПФ (рис.1,а) в таком случае будет задана как y( x2,x1,x0 ) = ( 0, 1, 2, 4 ).

4. Аналитический способ, когда ПФ задается в виде алгебраического выражения (структурной формулы), получаемого путем применения логических операций к аргументам ПФ. Следует учитывать, что одну и ту же ПФ можно задать в виде разных структурных формул, которые отличаются друг от друга выбором используемых логических операций и своей сложностью.

При использовании всех n аргументов для записи алгебраического выражения существует две формы структурных формул.

Совершенная дизъюнктивная нормальная форма (СДНФ) представляет собой дизъюнкцию минтермов.

Минтерм (минимальный терм, конституента единицы) есть логическое произведение всех переменных ПФ для наборов, на которых ПФ принимает значение 1.Если в наборе переменная равна 1, то в минтерм эта переменная входит без инверсии, если равна 0 - то с инверсией. Например, если на наборе x2 = 0, x1 = 1, x0 =1 ПФ принимает значение 1, то соответствующий минтерм m3 для третьего набора будет иметь вид m3 =x1 x0 .

Пример: СДНФ для ПФ мажоритарного элемента (рис.1,а)



y= m3m5m6m7  (1)



Совершенная конъюнктивная нормальная форма (СКНФ) представляет собой конъюнкцию макстермов.

Макстерм (максимальный терм, конституента нуля) есть логическая сумма всех переменных ПФ для наборов, на которых ПФ принимает значение 0. Если в наборе переменная равна 1, то в макстерм эта переменная входит с инверсией, если равна 0 - то без инверсии. Например, если на наборе x2 = 0, x1 = 0, x0 =1 ПФ принимает значение 0, то соответствующий макстерм M1 для первого набора будет иметь вид .

Пример: СКНФ для ПФ мажоритарного элемента (рис.1,а)



y =M0M1M2M4 =()()()().(2)



Минтермы (макстермы) называются соседними, если они отличаются формой представления только одной переменной (без инверсии, с инверсией). В примере (1) минтерм m7 является соседним по отношению ко всем остальным (m3, m5, m6). В примере (2) макстерм М0 является соседним по отношению ко всем остальным (М1,М2,М4).Признак соседства минтермов (макстермов) используется при применении закона склеивания (при минимизации ПФ с применением карт Карно).

Определение “совершенная форма” означает, что все минтермы или макстермы имеют одинаковую размерность (ранг), равную числу переменных n, от которых зависит ПФ.

Определение “нормальная форма” означает, что порядок логического уравнения не более двух. Порядок логического уравнения – количество последовательно выполняемых базовых операций алгебры логики при вычислении значения функции (операция инверсии в расчет не принимается). При реализации логических схем порядок ПФ определяет число каскадов логического преобразования входных переменных, необходимых для получения функции.

Можно привести и более простые алгебраические выражения для ПФ мажоритарного элемента (рис.1,а):



(3)

y = ()()()(4)



Способ их получения рассмотрен ниже.



3. Не полностью определенные переключательные функции



ПФ y(xn-1... x0) называется полностью определенной, если ее значения 0 или 1 заданы на всех 2n наборах. Если же значения функции не заданы хотя бы на одном наборе, то она называется не полностью определенной.

Значения функции могут считаться неопределенными, если:

а) в процессе работы логической схемы на ее входы никогда не подаются некоторые наборы сигналов, и, следовательно, функции y в таких случаях можно приписать неопределенные значения; б) разработчика логической схемы не интересует, какое значение примет выходной сигнал при некоторых наборах входных сигналов; в) при некоторых наборах входных сигналов значения выходного сигнала логической схемы 0 и 1 вызывают один и тот же результат в логическом устройстве, для которого он используется в качестве входного.

На рис. 1,д приведена карта Карно для не полностью определенной ПФ. Функция не определена на двух наборах: x3 = 1, x2 = 0, x1 = 0, x0 = 1 и x3 = 0, x2 = 1, x1 = 1, x0 = 0. Не определенные значения функции обозначаются символом  или. Обозначенные такими символами клетки карты Карно будем называть факультативными.

Не полностью определенные функции можно доопределить произвольно , полагая y = 0 или y = 1.



4. Построение комбинационной логической схемы по заданной переключательной функции



Структурные формулы для заданной ПФ позволяют осуществить переход к тому цифровому логическому устройству, которое выполняет логические операции, входящие в структурную формулу.

Например, для реализации выражения (1) требуются 3 элемента НЕ (для получения инверсий переменных - ), 4 трехвходовых элемента И (для получения конъюнкций – 



, , ,) 



и 1 четырехвходовый элемент ИЛИ (для получения логической суммы перечисленных четырех конъюнкций). Для реализации выражения (3) требуются 3 двухвходовых элемента И и 1 трехвходовый элемент ИЛИ.

Сказанное приводит к выводу, что при прямом способе построения логического устройства на основе использования структурной формулы, сложность логического устройства определяется сложностью структурной формулы. Одна и та же ПФ может быть реализована устройствами, отличающимися как своей структурой, так и сложностью (числом логических элементов).

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

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

При прямом способе реализации ПФ (1), например, требуются логические элементы трех типов: НЕ, И, ИЛИ. Система логических элементов НЕ, И, ИЛИ достаточна для построения логических схем любой сложности. Такую систему называют функционально полной системой логических элементов (элементы НЕ, И, ИЛИ образуют основной логический базис).

Используя принцип двойственности и тождества алгебры логики, можно получить функционально полную систему, включающую два или даже один тип логических элементов. Например, элементы НЕ и И образуют логический базис. Элементы НЕ и ИЛИ также образуют логический базис.

Базис, включающий только один тип логических элементов, называется универсальным. Универсальный базис образуют, например, логические элементы И-НЕ. Двухвходовый элемент И-НЕ выполняет логическую операцию . Универсальность элемента доказывается тем, что все три функции НЕ, И, ИЛИ основного базиса могут быть выражены через функцию И-НЕ:










Элементы ИЛИ-НЕ, выполняющие операцию , также являются универсальными. Операции НЕ, И, ИЛИ выражаются через операцию ИЛИ-НЕ следующим образом:







Таким образом, задача синтеза логической схемы по заданной переключательной функции разделяется на две самостоятельные задачи:

получение структурной формулы в простейшей (минимальной) нормальной форме (МНФ); 2) преобразование МНФ к заданному логическому базису.



5. Минимизация переключательных функций с помощью карт Карно



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

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

Введем понятие подкуба, которое используется в теории ПФ и их минимизации. Подкуб – это совокупность 2i соседних клеток карты Карно, заполненных единицами (нулями), для которых по крайней мере одна переменная в координатах всех этих 2i клеток имеет неодинаковые значения (0 и 1). Из определения следует, что подкуб могут образовать 2, 4, 8, 16 и т.д. соседних клетки карты.

Каждый 2i-клеточный подкуб позволяет при минимизации исключить i переменных – 1,2,3,4 и т.д. Действительно, подкуб, состоящий из двух клеток, соседних по горизонтали или вертикали (рис.2,а,б,в,г) характеризуется тем, что координаты его клеток различаются значением одной переменной, а остальные переменные имеют одинаковое значение. 







Переменная, значения которой для этих клеток различны (0 и 1), в соответствии с законом склеивания исчезает. Четырехклеточный подкуб содержит клетки, координаты которых различаются значениями двух переменных (рис.3,а,б,в), следовательно, четырехклеточный подкуб позволяет исключить две переменные. Восьмиклеточный подкуб позволяет исключить три переменные (рис.3,г,д).








Все минтермы (макстермы), вошедшие в подкуб, склеиваются за один прием. Результатом склеивания таких клеток является получение конъюнктивного терма (если склеиваются единичные клетки) или дизъюнктивного терма (если склеиваются нулевые клетки).

Контерм (конъюнктивный терм) – результат склеивания соседних минтермов, входящих в подкуб (соседних единичных клеток). В алгебраическом представлении контерм - есть конъюнкция переменных, имеющих неизменное значение в координатах строк и столбцов всех объединяемых клеток; если неизменное значение переменной в координатах равно 1, то в конъюнкции она записывается без инверсии, если равна 0 – то с инверсией.

На рис.2,а,б,в приведены примеры записи контермов для двухклеточных подкубов, а на рис.3,а,б,в,г,д – четырехклеточных () и восьмиклеточных ().

МДНФ – есть дизъюнкция контермов.

Пример: МДНФ для ПФ y9 (рис.3,е) как результат минимизации по единичным значениям функции имеет вид:



. (5)



Дизтерм (дизъюнктивный терм) – результат склеивания соседних макстермов, входящих в подкуб (соседних нулевых клеток). В алгебраическом представлении дизтерм - есть дизъюнкция переменных, имеющих неизменное значение в координатах строк и столбцов всех объединяемых клеток; если неизменное значение переменной в координатах равно 1, то в дизъюнкции она записывается с инверсией, если равна 0 – то без инверсии.

Для ПФ y9 (рис.3,ж) построенные подкубы имеют следующие дизтермы: 

МКНФ – есть конъюнкция дизтермов.

Пример: МКНФ для ПФ y9 (рис.3,ж) как результат минимизации по нулевым значениям функции имеет вид:



 () () (). (6)



Ранги контермов или дизтермов, которые входят в логическое уравнение МДНФ или МКНФ переключательной функции, в общем случае не одинаковы.

Общие правила минимизации функций, справедливые для любого числа логических переменных:

- прямоугольные области карты Карно, составляющие подкубы, могут состоять из 1, 2, 4, 8, 16 и т.д. только единичных клеток (при получении МДНФ) или только нулевых клеток (при получении МКНФ);

- для подкубов выбирается минимальный вариант их построения на карте Карно, при котором число подкубов минимально, а их размеры максимальны;

- клетки карты Карно могут неоднократно входить в разные подкубы, если это необходимо для увеличения их размеров и уменьшения их количества.

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

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










Формирование подкубов с включением в них факультативных клеток позволяет получать более простые, как правило, структурные формулы МДНФ или МКНФ. Минимизация функции , приведенной на рис.4,а, отличающейся от функции  (рис.3,е) только наличием факультативных клеток, показывает, что включение клеток со знаком  в подкубы позволяет получить выражение функции:



 , (7)



которое существенно проще, чем (5) или (6). Существенное различие в сложности формул может иметь место и при минимизации неполностью определенной логической функции при использовании единичных клеток и нулевых клеток (МДНФ и МКНФ). Для функции , приведенной на рис.4,б, объединение нулевых клеток в подкубы и дает минимизированное выражение (МКНФ): = () (). МДНФ для функции (рис.4,в) сложнее: = .



6. Нормальные формы логических уравнений. Преобразование логических уравнений к заданному базису



Если при проектировании логических схем предъявляется требование получения максимального быстродействия, логическая схема строится на основе представления ПФ в нормальной алгебраической форме.














Всего существует 8 нормальных форм представления ПФ. Получим их на примере проектирования мажоритарной логической схемы (мажоритарного элементы) “2 из 3”, пронумеруем и дадим символьное обозначение путем указания операций первого и второго этапов логического преобразования.

Таблица истинности для мажоритарного элемента приведена в табл.2, карта Карно на рис.5. МДНФ для этой функции является первой нормальной формой. Следующие три нормальных формы получим путем последовательного преобразования МДНФ с применением тождеств двойной инверсии и теоремы де-Моргана. МКНФ – пятая нормальная форма, остальные получены путем ее преобразования.



= 1) И / ИЛИ

= 2) И-НЕ / И-НЕ

= 3) ИЛИ / И-НЕ

. 4) ИЛИ-НЕ / ИЛИ

 5) ИЛИ / И

==

= = 6) ИЛИ-НЕ / ИЛИ-НЕ

==7) И / ИЛИ-НЕ

=.8) И-НЕ / И






При проектировании логических схем в зависимости от наличия определенного типа элементов (базиса) используется соответствующая нормальная форма.



7. Скобочные формы логических уравнений



Для аналитического представления переключательных функций можно использовать не только нормальные формы, но и так называемые скобочные формы представления функций. Скобочные формы получаются путем тождественных преобразований МДНФ (МКНФ) с использованием скобок, изменяющих порядок (последовательность) логических преобразований. При вынесении общих членов за скобки порядок функции увеличивается. В практике проектирования логических схем к скобочным формам приходится обращаться в двух случаях: а) когда необходимо уменьшить аппаратные затраты и стоимость при реализации схем на логических элементах; б) когда число переменных и термов велико и реализация функций на основании МДНФ (МКНФ) с использованием стандартных логических элементов (с стандартным числом входов) невозможна. На рис.6,а представлена карта Карно логической функции, МДНФ которой



y = x3 x2 x1 x3 x2 x0  x3 x1 x0 .(8)



Этой функции соответствует логическая схема второго порядка, показанная на рис.6,б. На основании законов дистрибутивности функцию (8) можно представить в форме



y = x3 [ x2 ( x1x0 )x1 x0 ],(9)



которой соответствует схема на рис.6,в. В этой схеме максимальное число последовательно включенных логических элементов равно четырем, т.е. логическая схема имеет четвертый порядок. Каждый логический элемент имеет конечное быстродействие, которое характеризуется задержкой распространения сигналов от входа к выходу. Чем выше порядок логической схемы, тем больше задержка сигналов, тем ниже быстродействие схемы. Это недостаток логических схем, реализованных на основе скобочных форм ПФ.







Положительное свойство таких схем – меньшая сложность (аппаратные затраты) и стоимость.

Существует несколько способов оценки сложности логических схем: сложность по Квайну, определяемая как суммарное число входов всех логических элементов; сложность, как число логических элементов; сложность как число условных стандартных корпусов микросхем.

Так, суммарное число входов логической схемы четвертого порядка (рис.6,в) равно 10, а логической схемы второго порядка (рис.6,б) – 12.

В общем случае быстродействие и сложность схемы (стоимость) жестко связаны, при проектировании логических схем можно “обменять” быстродействие на стоимость и наоборот.

Второй пример необходимости использования скобочной формы ПФ рассмотрим на примере проектирования мажоритарного элемента “2 из 3” в двух вариантах: когда допустимо использовать логические элементы И-НЕ с любым необходимым числом входов и когда можно использовать только 2-входовые логические элементы И-НЕ.

В минимальной ДНФ логическая функция мажоритарного элемента в базисе И-НЕ имеет вид




y = .(10)



Этому уравнению соответствует логическая схема второго порядка рис.7,а, в которой используются 2- и 3-входовые элементы И-НЕ.

Если для реализации схемы разрешается использовать только 2-входовые элементы И-НЕ, то уравнение (10) преобразуется в скобочную форму



y =,(11)



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







8. Комбинационные схемы



Логическая схема (рис.8) с n входами и k выходами реализует систему переключательных функций y0 ...yk-1. Каждая функция yi (x0 ...xk-1) однозначно соответствует входным наборам сигналов, комбинациям входных сигналов. Такие цифровые устройства образуют класс комбинационных схем (КС). Их часто называют схемами без обратных связей, или схемами без элементов памяти.
















КС с несколькими выходами может быть представлена в виде совокупности схем, у каждой из которых лишь один выход. Работа каждого выхода описывается либо таблицей истинности, либо логическим уравнением.

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

Логические элементы (ЛЭ) общего назначения, выпускаемые в виде готовых интегральных логических схем малой степени интеграции. К ним относятся ЛЭ, представленные на рис.9. Они образуют технически полную систему элементов, т.е. удовлетворяющую требованиям функциональной и физической полноты.

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

Преобразователи кодов – дешифраторы, детекторы состояний, шифраторы, преобразователи специальных кодов, ПЗУ и др.

Коммутационные узлы – ключи, мультиплексоры, мультиплексоры-демультиплексоры и др.

Арифметические узлы – схемы контроля на четность, сумматоры, схемы ускоренного переноса, арифметико-логические устройства, числовые компараторы, умножители и др.

Основными задачами изучения КС являются задачи анализа и синтеза этих схем. Задача анализа – нахождение функции, реализуемой конкретной схемой. Задача синтеза – преобразование заданной логической функции к форме, в которой ПФ представлена через логические функции заданных для реализации элементов. Например: через логические функции ЛЭ основного базиса, универсального базиса; через логические функции, реализуемые дешифратором, мультиплексором и т.п.










Список литературы



1.Пухальский Г.И., Новосельцева Т.Я. Цифровые устройства: Учеб. пособие для втузов. СПб.: Политехника, 1996.

2.Угрюмов Е.П. Цифровая схемотехника. СПб.: БХВ-Петербург, 2001.

3.Потемкин И.С. Функциональные узлы цифровой автоматики. М.: Энергоатомиздат, 1988.

4.Голдсуорт Б. Проектирование цифровых логических устройств: Пер. с англ. М.: Машиностроение, 1985.