4.4. Логические элементы и синтез логических схем
Сложные цифровые логические устройства, входящие в состав компьютера, состоят из ряда элементарных логических элементов, построенных на базе средств электронной техники. При производстве этих электронных логических элементов используют различные технологии и схемотехнические решения, такие как: ДТЛ (диодно-транзисторная логика), ТТЛ (транзисторно-транзисторная логика), ЭСЛ (эмиттерно-связанная логика), технологии, основанные на использовании полевых транзисторов, и т. д. Логические элементы позволяют реализовать любую логическую функцию. Входные и выходные сигналы логических элементов, соответствующие двум логическим состояниям 1 и 0, могут иметь один из двух установленных уровней электрического напряжения, который зависит от схемотехнического решения логического элемента. Например, для логических элементов, основанных на технологии ТТЛ, высокий уровень электрического напряжения (2,4 : 5 В) соответствует значению логической единицы (истина), а низкий уровень (0 : 0,4 В) – логическому нулю (ложь).
Три приведенных ниже логических элемента составляют функционально полную систему для проектирования цифровых логических устройств, в том числе и соответствующих логических блоков и устройств компьютера, поскольку реализуют функционально полный набор логических функций, состоящий из логических функций: И (конъюнкции), ИЛИ (дизъюнкции), НЕ (отрицания).
1. Логический элемент НЕ, который называется также инвертором, выполняет логическую операцию отрицания (инверсии).
2. Логический элемент И, называемый также конъюнктором, выполняет операцию логического умножения (конъюнкции), теоретически может иметь бесконечное число входов, на практике ограничиваются числом входов от двух до восьми.
3. Логический элемент ИЛИ, называемый также дизъюнктором, выполняет операцию логического сложения (дизъюнкции), теоретически может иметь бесконечное число входов, на практике ограничиваются числом входов от двух до восьми.
При проектировании цифровых логических устройств часто возникает задача по заданной таблице истинности записать выражение для логической функции и реализовать ее в виде логической схемы, состоящей из функционально полного набора логических элементов. Данную задачу называют также задачей синтеза логических схем или логических устройств.
Синтез логических схем на основе функционально полного набора логических элементов состоит из представления логических функций, описывающих данные логические схемы в нормальных формах. Нормальной формой представления считается форма, полученная посредством суперпозиций вспомогательных логических функций – минтермов и макстернов.
Минтермом называют логическую функцию, которая принимает значение логической единицы только при одном значении логических переменных и значение логического нуля при других значениях логических переменных. Например, минтермами являются логические функции
Макстерном называют логическую функцию, которая принимает значение логического нуля только при одном значении логических переменных и значение логической единицы при других значениях логических переменных. Например, макстернами являются логические функции
Из минтермов и макстернов методом суперпозиции можно составить логические функции, которые называются соответственно логической функцией, представленной посредством совершенных дизъюнктивных нормальных форм (СДНФ), и логической функцией, представленной посредством совершенных конъюнктивных нормальных форм (СКНФ). Полученные таким образом функции СДНФ и СКНФ будут представлять искомую логическую функцию по заданной таблице истинности. После получения функций СДНФ и СКНФ их необходимо преобразовать (минимизировать). Преобразование данных функций с целью их минимизации осуществляется с помощью законов алгебры логики и специальных разработанных методов: метод Квайна, карты Карно, диаграммы Вейча и т. д.
Рассмотрим задачу синтеза на примере модифицированной таблицы истинности, приведенной на рис. 4.6. Для данной таблицы истинности необходимо записать выражение для выходной функции
Рис. 4.6. Таблица истинности логических переменных
Значения логических переменных