Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ТСвИС / алгебро логические основы К. vetrov-a

.pdf
Скачиваний:
54
Добавлен:
28.05.2015
Размер:
481.33 Кб
Скачать

Поскольку есть переменные, то существуют некие функции (логические), которые в качестве аргументов имеют логические переменные (x, y, z,… или же x1, x2, x3,…).

Логические функции могут быть как функциями одной переменой F(x), так и функциями многих переменных F(x1, x2,

x3, …).

Логические функции ещё называются переключательными функциями.

2.1.1.Основные операции алгебры логики

Валгебре логики существует три операции:

1.Логическое сложение.

2.Логическое умножение.

3.Отрицание.

Логическое сложение

Дизъюнкция или операция ИЛИ. Математическая запись: F = x1 + x2 ; F = x1 x2 .

Словесно звучит так: F= x1 или x2.

Еще эту операцию называют операцией разделения. Электрическая модель этой операции:

Это значит, что логическая функция будет принимать значение 1, если любая из переменных равна 1. Операция ИЛИ может быть для любого количества переменных, но как минимум для двух. Всевозможные состояния функции и возможные значения переменных сводятся в таблицу истинности. Для двух переменных:

х1

х2

F

 

 

 

0

0

0

0

1

1

1

0

1

1

1

1

Условное обозначение логического элемента, реализующего операцию ИЛИ, для двух элементов:

Сколько переменных, столько и входов.

Логическое умножение

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

Электрическая модель для двух переменных следующая:

Воперацииконъюнкцииможетучаствоватьсколькоугодно переменных. Таблица истинности для двух переменных:

х1

х2

F

 

 

 

0

0

0

0

1

0

1

0

0

1

1

1

УсловноеобозначениелогическогоэлементаИдлядвухпеременных:

Математическая запись: F = x1x2 ; F = x1 x2 . Словесно звучит: F = x1 и x2.

Логическое отрицание

Инверсия производится над одной переменой или над группой переменных. Для одной переменой F = x («НЕ x»).

Для группы переменных F = x1 + x2 Условное обозначение инвертора:

2.1.2. Основные теоремы алгебры логики

Дляоднойпеременойиконстант(0 или1) существуетдевятьтеорем:

1. x +1 =1

5. x 1 = x

 

 

 

 

2.

x +0 = x

6.

x 0 = 0

 

 

 

 

9. x = x

– закон двойной инверсии

3. x + x = x

7.

x x = x

 

 

 

 

4.

x + x =1

8. x x = 0

 

 

 

 

Для группы переменных существуют следующие законы: 1. Закон склеивания

F = x1x2 + x1x2 = x2 (x1 + x1) = x2 1 = x2 .

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

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

2. Закон инверсии де Моргана

Этот закон позволяет перейти от операции логического умножения к операции логического сложения и наоборот. Он выражает принцип двойственности в алгебре логики. Закон справедлив для любого количества переменных, но не менее двух.

F = x1 + x2 = x1 x2

F = x1 x2 = x1 + x2

Применять этот закон можно всегда, если предварительно использовать закон двойной инверсии.

П р и м е р : F = x1 + x2 + x3

F = x1 +x2 +x3 = x1x2 x3 = x1x2 x3

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

2.1.3. Способы задания переключательных функций

Логические функции могут быть заданы в трёх видах:

1.Словесно.

2.Таблично.

3.Алгебраически.

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

Пример . Пусть переключательная функция трёх переменных принимает значение 1, если хотя бы одна из переменных принимает значение 0. По словесному заданию делается табличное задание, т.е. составляется таблица истинности:

№ набора

х1

х2

х3

F

 

 

 

 

 

0

0

0

0

1

1

0

0

1

1

2

0

1

0

1

3

0

1

1

1

4

1

0

0

1

5

1

0

1

1

6

1

1

0

1

7

1

1

1

0

Переключательная функция имеет 8 наборов переменных.

Количество комбинаций (наборов) переменных определяется как 2n , где n – количество переменных. Каждая конкретная комбинация переменных называется набором.

В алгебре логики строго доказано, что функция от n переменных будет иметь значения 22n .

Алгебраическое задание переключательной функции

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

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

В этой форме переключательная функция представлена дизъюнкцией конъюнкций переменных каждого набора. Иначе говоря, переключательной функцией этой формы производится сложение каждого набора переменных, а каждый набор переменных – это их конъюнкция. Причём переменные будут представлены в прямом или инверсном виде. Если для данного набора переменных какая-либо переменная имеет значение 0, то она берется в инверсном виде, а если значение 1, то в прямом. Поэтому получается, что каждое слагаемое имеет значение 1. По-другому, каждое слагаемое называется конституентой единицы.

Из приведённой выше таблицы переключательная функция в СДНФ будет иметь вид:

F(x3, x2 , x1) = x3 x2 x1 +x3x2 x1 +x3x2 x1 +x3x2 x1 +x3x2 x1 +x3x2 x1 +x3x2 x1 .

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

х1 х2 х3

х2 &

х1 ·х2

х1

Рис. 1. Схема логического устройства, составленная по ДНФ

П р и м е р :

F(x3, x2, x1) = x2x1 + x3 .

Переключательная функция в СДНФ выписывается только для тех значений, на каком наборе переключательная функция должна принимать значения 1, поэтому в приведенной переключательной функции будет не 8 слагаемых, а 7.

Вторая форма – эта совершенная конъюнктивная нормальная форма (СКНФ).

В этой форме переключательная функция представлена конъюнкцией дизъюнкций переменных, т.е. каждый набор, который эквивалентен нулю, представлен в виде дизъюнкции слагаемых, а все нулевые наборы представлены конъюнкцией. Необходимо помнить о том, что те переменные, которые в наборе имеют значение 1, необходимо брать с инверсией. Внешний вид переключательной функции в СКНФ может быть таким:

F =(x3 + x2 + x1)(x3 +x2 + x1) .

Структурная схема устройства приведена на рис. 2.

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

х1 х2 х3

Рис. 2. Схема ЛУ, составленная в соответствии с СКНФ

Для ранее приведённого примера удобнее переключательную функцию брать в СКНФ.

F= x3 + x2 + x1 .

2.1.4.Минимизация переключательных функций

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

Существует два способа минимизации:

путём алгебраических преобразований;

путём применения карт Карно (диаграмм Вейча).

Минимизация с помощью алгебраических преобразований. Здесь для приведения переключательной функции к мини-

мальному виду применяется в основном теорема склеивания.

При минимизации случайной функции методом склеивания одно и то же слагаемое может участвовать несколько раз, так как согласно алгебре логики x + x + x +... + x = x .

Пример :

Минимизировать методом непосредственных преобразований логическое выражение

F(x3, x2 , x1) = x3x2 x1 + x3x2 x1 + x3x2 x1 + x3x2 x1 + x3x2 x1 + x3x2 x1 +

+x3x2 x1 = х3х2 (х1 + x1) + х3х2 (х1 + x1) + х3х2 (х1 + x1) +

+x3х1(х2 + x2 ) = x3 (х2 + x2 ) + х2 (х3 + x3 ) + x3х1 = х3 + х2 +

+x3х1 = (х3 + x3 )(х3 + х1) + х2 = х3 + х2 + х1.

Минимизация с помощью карт Карно. Карты Карно применяются, если 4, 5 и более переменных. Карты Карно представляют собой ТИ, разделённые на клетки. Число клеток в карте Карно определяется как 2n, где n – число переменных. Каждой стороне карты присваивается своя переменная в прямом и инверсном виде. Переменные прямого и инверсного вида разделены линией. Каждая клетка карты Карно соответствует одному строго определённому набору переменных (рис. 3). При каждом переходе из одной клетки в другую вдоль строки или столбца изменяется значение только одной переменной. Следовательно, если в соседних клетках карты Карно будут стоять 0 или 1, то над соответствующими членами канонической формы может быть проведена операция склеивания. В каждую клетку вносятся значения переключательной функции для данного набора.

Минимизация проводится путём склеивания так называемых соседних квадратов (клеток). Склеивание можно производить по 2 квадрата, по 4 и 8.

Если по 2 квадрата, то соседними будут являться рядом стоящие по горизонтали и по вертикали, или разделённые двумя квадратами по вертикали или по горизонтали.

Рис. 3. Карта Карно для функции четырех переменных

По 4 – это 4 квадрата в строку или столбца; 4 квадрата, образующие квадрат; 4 квадрата по углам.

По 8 – 2 рядом лежащие строки или 2 рядом стоящие столбца, или 2 строки или 2 столбца, разделённые двумя строками или двумя столбцами.

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

Минимизация с использованием факультативных условий. В ряде случаев бывает так, что для каких-либо наборов пере-

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

Рассмотрим это на примере.

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

(4, 5, 6, 7, 8, 9).

Регистрировать – это когда на выходе должна фиксироваться 1 при поступлении любой из этих цифр.

Поскольку для регистрации самой старшей цифры 9 необходимо 4 разряда, то тогда ЛУ должно иметь 4 входа ( x3, x2 , x1, x0 ): каждый вход для своего разряда (рис. 4).

Полная таблица должна содержать 16 наборов, но 10 – 15 не нужны.

Если минимизировать переключательную функцию по карте Карно, то саму функцию в алгебраической форме представлять не обязательно (рис. 5).

Структурная схема установки приведена на рис. 6.

х3 х2 х1 х0

ЛУ

Рис. 4. Структура ЛУ

№ набора

х3

х2

х1

х0

F

 

 

 

 

 

 

0

0

0

0

0

0

1

0

0

0

1

0

2

0

0

1

0

0

3

0

0

1

1

0

4

0

1

0

0

1

5

0

1

0

1

1

6

0

1

1

0

1

7

0

1

1

1

1

8

1

0

0

0

1

9

1

0

0

1

1

 

 

 

 

 

 

х3

 

 

 

х

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х3х2 х1х0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х2

х0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х1

 

 

х

 

х1

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

х3 х2 х1

х1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х3х2 х1

 

 

 

&

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х3

 

 

 

 

 

 

 

 

 

 

 

&

 

 

 

х3х2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 6. Схема логического устройства, составленная по МДНФ

F = x3x2 +x3x2 x1 – МДНФ логической функции.

Полученная схема реализует заданную логику, но её можно упростить, если применить факультативные условия: допустить, что на 10, 11, …, 15 наборах переключательная функция принимает значение 1. Тогда их надо внести в карты Карно

(рис. 7).

Рис. 7. Минимизация с применением факультативных условий

F = x3 +x2 – МДНФ логической функции, полученная по карте Карно. Окончательная структурная схема устройства приведена на рис. 8.

Рис. 8. Схема ЛУ

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

Вцифровой технике в основном используются логические элементы вида: И-НЕ (отрицание конъюнкции), ИЛИ-НЕ (отрицание дизъюнкции).

Число входов может быть от 2 до 12. В соответствии с количеством входов эти элементы обозначаются так: на 2 входа: 2И-НЕ, 2ИЛИ-НЕ.

Условно эти логические элементы на схемах обозначаются так:

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

П р и м е р : F = x3x2 +x3x2 x1 .

Реализация в базисе логических элементов 2И-НЕ.

1. Необходимо избавиться от логического сложения. Для этого над всей функцией применяется закон двойной инверсии, а далее закон де Моргана:

F= x3x2 + x3x2 x1 = x3x2 x3x2 x1 = →

2.Необходимо объединить переменные, чтобы можно было применить двухвходовые логические элементы.

Пример : x3 x2 x1 = x3 x2 x1 .

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

F = x3x2 x3 x2x1

Структурная схема приведена на рис. 9.

х3 х2 х1

 

х1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х2

х1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х3

х2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 9. Схема ЛУ в базисе 2И-НЕ

Реализация в базисе логических элементов 2ИЛИ-НЕ.

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

F= x3 x2 + x3 xr2 x1 = x3x2 + x3 x2 x1 = x3 + x2 + x3 + x2 + x1 =

=x3 + x2 + x3 + x2 + x1 = →

2.Проделываем операцию для объединения переменных по две, чтобы реализовать в базисе логических элементов 2ИЛИ-НЕ.

→ = x3 + x2 + x3 + x2 + x1 .

Структурная схема приведена на рис. 10.

х3 х2 х1

 

 

 

 

х3 + х2

 

 

 

 

 

 

 

 

 

 

 

F

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х3 +

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х2

 

 

 

 

 

 

 

 

 

х2 + х1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х2 + х1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 10. Схема ЛУ в базисе 2ИЛИ-НЕ

2.1.6. Простейшие комбинационные логические схемы

Рассмотрим логические функции двух переменных.

Равнозначность

Операция равнозначность реализует на выходе логического элемента 1 при равенстве переменных на входах.

х1

х2

F

0

0

1

0

1

0

1

0

0

1

1

1

равнозначность

F= x1x2 + x1x2 = →

Кпервому слагаемому применим закон де Моргана:

→ = x1 + x2 + x1x2 .

Структурная схема приведена на рис. 11.

Рис. 11. Структурная схема логики «Равнозначность»

Неравнозначность ( отрицание равнозначности)

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

х1

х2

F

0

0

0

0

1

1

1

0

1

1

1

0

F = x1x2 + x1x 2 .

Структурная схема приведена на рис. 12.

Рис. 12. Схема, реализующая логическую неравнозначность

Логический элемент, реализующий отрицание равнозначности, носит несколько названий и обозначений: 1. Сумматор по модулю 2

2.Полусумматор

3.Исключающее ИЛИ

Импликатор

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

Возбуждён вход – действует 1, а не возбуждён – действует 0.

Здесь возможно два варианта: информационный вход для

x1 и информационный вход для x2 . Выберем один из них,

например, информационный x1 , а не информационный x2 , тогда таблица истинности будет иметь следующий вид:

 

х1

х2

 

F

 

 

0

0

 

1

 

 

0

1

 

0

 

 

1

0

 

1

 

 

1

1

 

1

 

Условное обозначение:

х1

х2

СКНФ: F = x1 + x2 .

Структурная схема, реализующая операцию импликации, приведена на рис. 13.

Рис. 13. Схема, реализующая импликацию

Отрицание импликации ( запрет)

Операция отрицания импликации противоположна импликации, еще называется операция запрет.

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

х1

х2

F

0

0

0

0

1

1

1

0

0

1

1

0

Условное обозначение:

х1

х2

СДНФ: F = x1x2 .

Структурная схема, реализующая операцию отрицания импликации, приведена на рис. 14.

Рис. 14. Схема, реализующая отрицание импликации

Наименования и обозначение булевых функций приведено в приложении Б.

Приложение А

(справочное)

А.1. Числа в различных системах счисления

Десятичная

 

 

Шестнадцате-

Двоично-

Двоичная

Восьмеричная

кодированная

СС

 

 

ричная

десятичная

 

 

 

 

00

00000

00

00

0000. 0000

01

00001

01

01

0000. 0001

02

00010

02

02

0000. 0010

03

00011

03

03

0000. 0011

04

00100

04

04

0000. 0100

05

00101

05

05

0000. 0101

06

00110

06

06

0000. 0110

07

00111

07

07

0000. 0111

08

01000

10

08

0000. 1000

09

01001

11

09

0000. 1001

10

01010

12

0A

0001. 0000

11

01011

13

0B

0001. 0001

12

01100

14

0C

0001. 0010

13

01101

15

0D

0001. 0011

14

01110

16

0E

0001. 0100

15

01111

17

0F

0001. 0101

16

10000

20

10

0001. 0110

17

10001

21

11

0001. 0111

18

10010

22

12

0001. 1000

19

10011

23

13

0001. 1001

20

10100

24

14

0010. 0000

21

10101

25

15

0010. 0001

22

10110

26

16

0010. 0010

23

10111

27

17

0010. 0011

24

11000

30

18

0010. 0100

25

11001

31

19

0010. 0101

26

11010

32

1A

0010. 0110

27

11011

33

1B

0010. 0111

28

11100

34

1C

0010. 1000

29

11101

35

1D

0010. 1001

30

11110

36

1E

0011. 0000

31

11111

37

1F

0011. 0001

Примечание . Точка означает разделение тетрад.