Лаб. 1.комб.схемы (1076477), страница 2
Текст из файла (страница 2)
Элементарные логические операции над двоичными переменными реализуются электронными схемами, которые называются электронными логическими элементами или просто логическими элементами. Число входов логического элемента соответствует числу аргументов воспроизводимой им булевой функции.
Один и тот же закон преобразования информации можно реализовать, используя различные типы и комбинации логических элементов и различные связи между ними. Для набора логических элементов можно ввести понятие функциональной полноты.
Набор логических элементов обладает функциональной полнотой, если при помощи конечного числа этих элементов можно построить схему с любым законом функционирования.
Любая комбинационная схема может быть построена с применением лишь трех видов логических элементов (технических аналогов булевых функций – дизъюнкции, конъюнкции, инверсии): элемента ИЛИ, элемента И, элемента НЕ соответственно. Следовательно, совокупность элементов ИЛИ, И, НЕ является функционально полной системой.
Функционально полной системой является также система, состоящая из одиночного элемента И-НЕ (элемент Шеффера) или одиночного элемента ИЛИ-НЕ (элемент Пирса), или одиночного элемента И-ИЛИ-НЕ.
На основе элемента Шеффера можно получить, используя законы алгебры логики, три основные логические функции ИЛИ, И, НЕ, составляющие основной функционально полный набор (ОФПН) функций.
На рис.1.1 приведены условные графические обозначения (УГО) основных логических элементов: ИЛИ, И, НЕ, ИЛИ-НЕ, И-НЕ, И-ИЛИ-НЕ, используемых при синтезе комбинационных схем.
Рис.1.1 УГО логических элементов: ИЛИ, И, НЕ, ИЛИ-НЕ, И-НЕ, И-ИЛИ-НЕ.
Функциональная полнота системы элементов И-НЕ иллюстрируется на рис.1.2.
Рис.1.2
Аналогично можно показать функциональную полноту системы элементов ИЛИ-НЕ; И-ИЛИ-НЕ.
Синтез комбинационных схем.
Существуют различные способы задания или представления булевых функций:
1. Словесное представление функций.
Например: функция от трех аргументов принимает значение 1, если два любых аргумента или все три равны 1. Во всех других случаях функция равна 0.
Этим высказыванием значения выходной функции соответствующей схемы полностью задано.
2. Табличный способ.
При этом способе функция представляется в виде таблицы истинности, в которой записываются все возможные наборы аргументов и для каждого набора устанавливается значение функции 0 и 1.
3. Алгебраический способ.
От таблицы истинности можно перейти к алгебраической форме представления функции. В такой форме удобно производить различные преобразования функций, например, с целью их минимизации.
Дизъюнктивная нормальная форма (ДНФ) представляет собой логическую сумму элементарных логических произведений, в каждое из которых аргумент или его отрицание входят не более одного раза.
Если каждое слагаемое содержит все переменные или их отрицания, то в этом случае логическая функция представлена в совершенной дизъюнктивной нормальной форме (СДНФ).
Конъюнктивная нормальная форма (КНФ) представляет собой логическое произведение элементарных логических сумм, в каждую из которых аргумент или его отрицание входят не более одного раза.
Переход от таблицы истинности к СДНФ можно осуществить следующим путем. Для каждого набора, на котором функция равна единице, записывается произведение всех аргументов, причем, если аргумент в этом наборе принимает значение "0", то пишется его отрицание. Затем производится логическое сложение этих элементарных произведений.
Для перехода от таблицы истинности к СКНФ логической функции, по каждому набору двоичных переменных, на котором функция принимает значение “0”, записывается дизъюнкция всех переменных, и полученные дизъюнкции логически перемножаются. При записи логических сумм инвертируются те переменные, которые в таблице истинности имеют значение единицы.
Пример написания СДНФ и СКНФ логической функции. Пусть логические функции у1 и у2 заданы в виде таблицы истинности, табл.1.3.
Таблица.1.3.
х1 | х2 | х3 | у1 | у |
0 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 1 | 1 |
0 | 1 | 0 | 0 | 1 |
0 | 1 | 1 | 1 | 1 |
1 | 0 | 0 | 0 | 1 |
1 | 0 | 1 | 1 | 1 |
1 | 1 | 0 | 0 | 1 |
1 | 1 | 1 | 1 | 0 |
Тогда СДНФ и СКНФ логических функций у1 и у2 запишутся следующим образом:
Комбинационные схемы, реализующие вышеприведенные СДНФ и СКНФ логических функций, должны содержать, рис.1.3 – 1.6 соответственно:
У1сднф–четыре трехвходовые схемы И и одна четырехвходовая схема ИЛИ,
У1скнф–четыре трехвходовые схемы ИЛИ и одна четырехвходовая схема И,
У2сднф–шесть трехвходовых схем И и одна шестивходовая схема ИЛИ,
У2скнф–две трехвходовые схемы ИЛИ и одна двухвходовая схема И.
Минимизация булевых функций.
Основная задача состоит в получении такой формы, которой соответствует логическая функция с минимальным числом элементов. Различают несколько методов минимизации булевых функций.
При эвристических методах преобразования логических функций, использующих законы алгебры логики. Конечный вид минимизируемой функции в значительной степени зависит от квалификации и опыта разработчика цифровых устройств.
Методы Квайна и Мак-Класки используются, вследствие четко сформулированных правил проведения отдельных операций, для минимизации сложных функций по разработанным алгоритмам с использованием ЭВМ.
Метод карт Карно или карт Вейча, отличающихся способом обозначения строк и столбцов таблицы истинности, нашел применение при минимизации логических функций с числом двоичных переменных не боле 5-6.
Метод карт Карно.
Карту Карно можно рассматривать как графическое представление совокупности всех наборов переменных для данного числа переменных. Каждый набор переменных изображается на карте в виде клетки. Таким образом, при n=3 карта имеет 8 клеток, а при n=6 – 64 клетки, рис.1.7,1.8 соответственно.
х1х2 х3 | 00 | 01 | 11 | 10 |
0 | ||||
1 |
Рис.1.7
х1х2х3 х4х5х5 | 000 | 001 | 011 | 010 | 110 | 111 | 101 | 100 |
000 | ||||||||
001 | ||||||||
011 | ||||||||
010 | ||||||||
110 | ||||||||
111 | ||||||||
101 | ||||||||
100 |
Рис.1.8.
Карта Карно образуется путем такого расположения клеток, при котором наборы переменных, находящиеся в соседних клетках, отличаются значением одной переменной. В картах Карно соседними считаются также крайние клетки каждого столбца или строки. Расположенные в них наборы переменных отличаются значением одной переменной.
Минтермы логической функции, т.е. наборы двоичных переменных, при которых эта функция равна 1, отмечаются единицами в соответствующих клетках. Для наборов переменных не входящих в логическую функцию соответствующие им клетки остаются пустыми.