Задача анализа логических схем
Задача анализа заключается в определении функции f, реализуемой заданной логической схемой. При решении такой задачи удобно придерживаться следующей последовательности действий.
Логическая схема разбивается на ярусы. Ярусам присваиваются последовательные номера.
Выводы каждого логического элемента обозначаются названием искомой функции, снабжённым цифровым индексом, где первая цифра - номер яруса, а остальные цифры - порядковый номер элемента в ярусе.
Для каждого элемента записывается аналитическое выражение, связывающее его выходную функцию с входными переменными. Выражение определяется логической функцией, реализуемой данным логическим элементом.
Производится подстановка одних выходных функций через другие, пока не получится булева функция, выраженная через входные переменные.
Пример 1. Найдите булеву функцию логической схемы и составьте таблицу истинности для логической схемы.
Решение. Разбиваем логическую схему на ярусы, что уже показано на рисунке. Запишем все функции, начиная с 1-го яруса:
Теперь запишем все функции, подставляя входные переменные x, y, z:
В итоге получим функцию, которую реализует на выходе логическая схема:
.
Таблица истинности для данной логической схемы:
x
|
y
|
z
|
|
|
|
|
f
|
1
|
1
|
1
|
0
|
1
|
1
|
1
|
1
|
1
|
1
|
0
|
0
|
0
|
0
|
1
|
0
|
1
|
0
|
1
|
0
|
0
|
0
|
1
|
0
|
1
|
0
|
0
|
0
|
0
|
0
|
1
|
0
|
0
|
1
|
1
|
0
|
0
|
0
|
1
|
0
|
0
|
1
|
0
|
0
|
0
|
0
|
1
|
0
|
0
|
0
|
1
|
0
|
0
|
0
|
1
|
0
|
0
|
0
|
0
|
1
|
0
|
1
|
0
|
0
|
Найти булеву функцию логической схемы самостоятельно, а затем посмотреть решение
Пример 2. Найдите булеву функцию логической схемы и составьте таблицу истинности для логической схемы.
Решение примера 2 на логические схемы и таблицы истинности
Пример 2. Найдите булеву функцию логической схемы и составьте таблицу истинности для логической схемы.
Решение. Разбиваем логическую схему на ярусы. Запишем все функции, начиная с 1-го яруса:
Получаем функцию, которую реализует на выходе логическая схема:
.
Таблица истинности для данной логической схемы:
x
|
y
|
|
|
f
|
1
|
1
|
0
|
1
|
0
|
1
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
1
|
1
|
0
|
0
|
1
|
0
|
0
|
.
Пример 3. Найдите булеву функцию логической схемы и составьте таблицу истинности для логической схемы.
Решение примера 3 на логические схемы и таблицы истинности
Пример 3. Найдите булеву функцию логической схемы и составьте таблицу истинности для логической схемы.
Решение. Разбиваем логическую схему на ярусы. Запишем все функции, начиная с 1-го яруса:
Теперь запишем определяющие функции, подставляя входные переменные x, y, z:
В итоге получим функцию, которую реализует на выходе логическая схема:
.
Таблица истинности для данной логической схемы:
x
|
y
|
z
|
|
|
f
|
1
|
1
|
1
|
0
|
1
|
1
|
1
|
1
|
0
|
0
|
0
|
0
|
1
|
0
|
1
|
1
|
0
|
1
|
1
|
0
|
0
|
1
|
1
|
1
|
0
|
1
|
1
|
0
|
1
|
1
|
0
|
1
|
0
|
1
|
0
|
1
|
0
|
0
|
1
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
.
Продолжаем искать булеву функцию логической схемы вместе
Пример 4. Найдите булеву функцию логической схемы и составьте таблицу истинности для логической схемы.
Решение. Разбиваем логическую схему на ярусы. Запишем все функции, начиная с 1-го яруса:
Теперь запишем все функции, подставляя входные переменные x, y, z:
В итоге получим функцию, которую реализует на выходе логическая схема:
.
Таблица истинности для данной логической схемы:
x
|
y
|
z
|
|
|
f
|
1
|
1
|
1
|
0
|
1
|
1
|
1
|
1
|
0
|
0
|
1
|
1
|
1
|
0
|
1
|
1
|
0
|
1
|
1
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
0
|
1
|
1
|
0
|
1
|
0
|
0
|
1
|
1
|
0
|
0
|
1
|
0
|
1
|
1
|
0
|
0
|
0
|
0
|
1
|
1
|
Пример 5. Найдите булеву функцию логической схемы и составьте таблицу истинности для логической схемы.
Решение. Разбиваем логическую схему на ярусы. Структура данной логической схемы, в отличие от предыдущих примеров, имеет 5 ярусов, а не 4. Но одна входная переменная - самая нижняя - пробегает все ярусы и напрямую входит в логический элемент в первом ярусе. Запишем все функции, начиная с 1-го яруса:
Теперь запишем все функции, подставляя входные переменные x, y, z:
В итоге получим функцию, которую реализует на выходе логическая схема:
.
Таблица истинности для данной логической схемы:
x
|
y
|
z
|
|
|
f
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
0
|
1
|
1
|
1
|
1
|
0
|
1
|
1
|
0
|
1
|
1
|
0
|
0
|
1
|
0
|
1
|
0
|
1
|
1
|
1
|
1
|
1
|
0
|
1
|
0
|
1
|
1
|
1
|
0
|
0
|
1
|
1
|
0
|
1
|
0
|
0
|
0
|
1
|
0
|
1
|
Пройти тест по теме Математическая логика
Задача синтеза логических схем в булевом базисе
Разработка логической схемы по её аналитическому описанию имеет название задачи синтеза логической схемы.
Каждой дизъюнкции (логической сумме) соответствует элемент "ИЛИ", число входов которого определяется количеством переменных в дизъюнкции. Каждой конъюнкции (логическому произведению) соответствует элемент "И", число входов которого определяется количеством переменных в конъюнкции. Каждому отрицанию (инверсии) соответствует элемент "НЕ".
Часто разработка логической схемы начинается с определения логической функции, которую должна реализовать логическая схемы. В этом случае дана только таблица истинности логической схемы. Мы разберём именно такой пример, то есть, решим задачу, полностью обратную рассмотренной выше задаче анализа логических схем.
Пример 6. Построить логическую схему, реализующую функцию с данной таблицей истинности:
x
|
y
|
f
|
1
|
1
|
0
|
1
|
0
|
0
|
0
|
1
|
1
|
0
|
0
|
0
|
Решение. Разбираем таблицу истинности для логической схемы. Определяем функцию, которая получится на выходе схемы и промежуточные функции, которые на входе принимают аргументы x и y. В первой строке результатом реализации выходной функции при том, что значения входных переменных равны единицам, должен быть логический "0", во второй строке - при разных значениях входных переменных на выходе тоже должен быть логический "0". Поэтому нужно, чтобы выходная функция была конъюнкцией (логическим произведением).
Теперь подбираем промежуточные функции. Получаем следующую таблицу для промежуточных функций и выходной функции - конъюнкции промежуточных функций:
Для построения логической схемы необходимо элементы, реализующие логические операции, указанные в выходной функции, располагать в порядке, заданной этой функцией. Из выражения видно, что понадобятся 3 схемы "НЕ", две двухвходовых схемы "И" и одна двухвходовая схема "ИЛИ". В соответствии с выходной функцией получаем следующую логическую схему:
А теперь очередь дошла до функций алгебры логики четырёх переменных. Сначала выполним синтез логической схемы в булевом базисе.
Пример 7. Построить в булевом базисе логическую схему, реализующую функцию алгебры логики
Решение. Для построения логической схемы потребуются 4 схемы "НЕ", одна трёхвходовая схема "И", 2 двухвходовые схемы "И" и одна трёхвходовая схема "ИЛИ". В соответствии с этим получаем следующую логическую схему:
Задача синтеза логических схем в базисах "И-НЕ" и "ИЛИ-НЕ"
Часто для сокращения числа микросхем используют элементы "И-НЕ" или/и "ИЛИ-НЕ". Рассмтрим примеры, как построить схему, реализующую ту же функцию, что в предыдущем примере, но, сначала в базисе "И-НЕ", а затем в базисе "ИЛИ-НЕ".
Пример 8. Построить в базисе "И-НЕ" логическую схему, реализующую функцию алгебры логики .
Решение. Логическая функция должна быть приведена к виду, содержащему только операции логического умножения (конъюнкции) и инвертирования (отрицания). Это делается при помощи двойного инвертирования исходного выражения функции и применения закона де Моргана:
Для построения логической схемы потребуются 8 схем "И-НЕ". Получаем следующую логическую схему:
Пример 9. Построить в базисе "ИЛИ-НЕ" логическую схему, реализующую функцию алгебры логики .
Решение примера 9 на логические схемы и таблицы истинности
Пример 9. Построить в базисе "ИЛИ-НЕ" логическую схему, реализующую функцию алгебры логики .
Решение. Логическая функция должна быть приведена к виду, содержащему только операции логического сложения (дизъюнкции) и инвертирования (отрицания). Это делается также при помощи двойного инвертирования исходного выражения функции и применения закона де Моргана:
Для построения логической схемы потребуются 8 схем "И-НЕ". Получаем следующую логическую схему:
Do'stlaringiz bilan baham: |