Реализация булевых функций

Представление булевой функции в виде суммы максимум Реализация булевых функций - student2.ru произведений делает возможной реализацию этой функции. На рисунке схемы функции большинства входные сигналы А, В и С показаны с левой стороны, а функция М, полученная на выходе, - с правой. Поскольку необходимы дополнительные величины (инверсии) входных переменных, для их получения сигнал проходит через инверторы 1, 2 и 3.

Например, вентили 5, 6 и 7 на входе получают сигнал А. Схема содержит четыре вентиля И, по одному для каждого члена в уравнении для М (то есть по одному для каждой строки в таблице истинности с результатом 1). Каждый вентиль И вычисляет одну из указанных строк таблицы истинности. Все данные произведения суммируются (операция ИЛИ) для получения конечного результата.

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

1. 1.Составить таблицу истинности для данной функции.

2. 2.Включить в схему инверторы, чтобы иметь возможность инверсии каждого входного сигнала.

3. 3.Нарисовать вентиль И для каждой строки таблицы истинности с результатом 1.

4. 4.Соединить вентили И с соответствующими входными сигналами.

5. 5.Вывести выходы всех вентилей И и направить их на вход вентиля ИЛИ.

Построение схемы с использованием одного типа вентилей.

Можно легко преобразовать схемы, построенные по представленному алгоритму, в форму НЕ-И или НЕ-ИЛИ. Чтобы осуществить такое преобразование необходимо реализовать вентили НЕ, И и ИЛИ с помощью какого-нибудь одного типа вентилей. На рисунке показано, как это сделать на базе вентиля НЕ-И или НЕ-ИЛИ.

Реализация булевых функций - student2.ru

Построение вентиля НЕ только на базе вентиля НЕ-И или НЕ-ИЛИ

Реализация булевых функций - student2.ru

Построение вентиля НЕ-И только на базе вентиля НЕ-И или НЕ-ИЛИ

Реализация булевых функций - student2.ru

Построение вентиля НЕ-ИЛИ только на базе вентиля НЕ-И или НЕ-ИЛИ

Для того чтобы реализовать булеву функцию только на базе вентиля НЕ-И или НЕ-ИЛИ, можно сначала следовать описанному алгоритму, сконструировав схему с вентилями НЕ, И и ИЛИ. Затем нужно заменить многовходовые вентили эквивалентными схемами на двухвходовых вентилях. Данная процедура не приводит к оптимальным схемам с точки зрения минимального числа вентилей, но она демонстрирует, что подобное преобразование осуществимо.

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

Эквивалентность схем

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

Например, рассмотрим схему и таблицу истинности для функции Реализация булевых функций - student2.ru .

Реализация булевых функций - student2.ru Реализация булевых функций - student2.ru

Выражение Реализация булевых функций - student2.ru по дистрибутивному закону может быть преобразовано в Реализация булевых функций - student2.ru . На рисунке показана схема и таблица истинности для функции Реализация булевых функций - student2.ru .

Реализация булевых функций - student2.ru Реализация булевых функций - student2.ru

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

Из таблиц истинности на рисунках ясно видно, что функция Реализация булевых функций - student2.ru эквивалентна функции Реализация булевых функций - student2.ru . Несмотря на эту эквивалентность, схема функции Реализация булевых функций - student2.ru проще, поскольку содержит меньше вентилей.

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

Чтобы использовать данный подход, нужно знать некоторые соотношения (законы) булевой алгебры:

Реализация булевых функций - student2.ru

Все соотношения можно легко доказать, составив для них таблицы истинности.

Соотношение Де Моргана может быть расширено на выражения с более чем двумя переменными. (например, Реализация булевых функций - student2.ru ).

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

Если принимается соглашение, что 0 В — это логический ноль, а 3,3 В или 5 В — логическая единица, то получаем соглашение, называемое позитивной логикой.

Если принимается условие, что 0 В — это логическая единица, а 3,3 В или 5 В — логический ноль, то получаем соглашение, называемое негативной логикой.

3 !Устройство ЦП. Цикл выполнения команды (Упрощенная схема…)

Наши рекомендации