Совершенная дизъюктивная нормальная форма (СДНФ)
Для реализации таблицы истинности при помощи логических элементов "И" (СДНФ) достаточно рассмотреть только те строки таблицы истинности, которые содержат логические "1" в выходном сигнале. Строки, содержащие в выходном сигнале логический 0 в построении цифровой схемы не участвуют. Каждая строка, содержащая в выходном сигнале логическую "1", реализуется схемой логического элемента "И" с количеством входов, совпадающим с количеством входных сигналов в таблице истинности.
Входные сигналы, описанные в таблице истинности логической единицей, подаются на вход этого логического элемента непосредственно, а входные сигналы, описанные в таблице истинности логическим нулем, подаются на вход этого же логического элемента "И" через инверторы. Объединение сигналов с выходов логических элементов "И", реализующих отдельные строки таблицы истинности, производится при помощи логического элемента "ИЛИ". Количество входов в логическом элементе "ИЛИ" определяется количеством строк в таблице истинности, в которых в выходном сигнале присутствует логическая единица.
Рассмотрим конкретный пример. Пусть необходимо реализовать таблицу истинности, приведенную на рисунке 2.1:
Рисунок 2.1. Произвольная таблица истинности.
Для синтеза цифровой схемы, реализующей сигнал Out0, достаточно рассмотреть строки, выделенные красным цветом. В таблице истинности три строки, содержащие единицу в выходном сигнале Out0, поэтому в формуле СДНФ будет содержаться три произведения входных сигналов — термов, а точнее минтермов:
Так как количество переменных в каждом терме (ранг терма) данного логического выражения равно, то такое логическое выражение называется совершенным. (Совершенная Дизъюнктивная Нормальная Форма — СДНФ)
Полученное логическое выражение реализуются микросхемой D2 в схеме, приведенной на рисунке 2. Как и в формуле, каждая строка (терм) реализуется своим логическим элементом "И", затем выходы этих логических элементов объединяются при помощи логического элемента "ИЛИ". Количество входов логического элемента "И" (дизъюнкция) в СДНФ однозначно определяется количеством входных сигналов в таблице истинности. Количество этих элементов, а значит и количество входов в логическом элементе "ИЛИ" определяется количеством строк с единичным сигналом на реализуемом выходе цифровой схемы.
Рисунок 2.2 Принципиальная схема, реализующая таблицу истинности, приведенную на рисунке 2.1.
Для построения схемы, реализующей сигнал Out1, достаточно рассмотреть строки, выделенные зеленым цветом. Эти строки реализуются микросхемой D3. Принцип построения этой схемы не отличается от примера, рассмотренного выше. В таблице истинности присутствуют всего три строки, содержащие единицу в выходном сигнале Out1, поэтому в формуле СДНФ выхода Out1 будет содержаться три произведения входных сигналов:
Обычно при построении цифровых схем после реализации таблицы истинности производится минимизация схемы, но для упрощения понимания материала сейчас минимизация производиться не будет. Это оправдано еще и с той точки зрения, что неминимизированные схемы обычно обладают максимальным быстродействием. При реализации схемы на ТТЛ микросхемах быстродействие всего узла будет равно быстродействию одиночного инвертора (см. описание ТТЛ микросхем).
По СДНФ форме логического выражения обычно строятся современные микросхемы большой интеграции — программируемые логические интегральные схемы (ПЛИС), такие как программируемые логические матрицы (ПЛМ), программируемые матрицы логики ПМЛ или CPLD.