Можно привести и более простые алгебраические выражения для ПФ мажоритарного элемента (рис.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 – то без инверсии.