- •1.Основы теории множеств Введение
- •1.1.Основные понятия
- •1.2.Способы задания множеств
- •1.3.Отношения между множествами
- •1.4.Алгебра множеств
- •1.4.1Операции над множествами
- •1.4.2Основные тождества (законы) алгебры множеств
- •1.4.31.4.3 Способы доказательства тождеств
- •1.5.Упорядоченные множества
- •1.5.1Понятие вектора
- •1.5.2Прямое (декартово) произведение множеств
- •1.5.3 Декартова степень множества
- •Контрольные вопросы Основные понятия, положения и формулировки
- •Контрольные задачи
- •2.Приложение булевой алгебры к синтезу комбинационных схем Введение
- •2.1.Элементы булевой алгебры
- •2.2.Разнообразие булевых функций
- •2.3.Нормальные формы булевых функций
- •2.4.Числовая и символическая формы представления булевых функций
- •2.5.Преобразование произвольной аналитической формы булевой функции в нормальную
- •2.6.Приведение произвольных нормальных форм булевой функции к каноническим
- •2.7.Разнообразие двоичных алгебр
- •2.8.Задача минимизации булевых функций и методы ее решения
- •2.8.1. Постановка задачи минимизации
- •2.8.2. Методы минимизации булевых функций
- •Минимизация булевых функций, представленных в других базисах:
- •2.9.Кубическое представление булевых функций
- •2.10. Графическое представление булевых функций. Геометрическая интерпретация кубов малой размерности
- •2.11.Покрытия булевых функций
- •2.11.1. Построение покрытий булевых функций из кубов различной размерности. Соответствие между покрытием и днф булевой функции
- •2.11.2. Цена покрытия
- •2.11.3. Нулевое покрытие булевой функции и получение мкнф
- •2.12. Минимизация булевых функций на картах Карно
- •2.12.1. Представление булевых функций на картах Карно
- •2.12.2. Образование кубов различной размерности на картах Карно
- •2.12.3. Определение минимальных покрытий и мднф
- •2.12.4. Минимизация частично определенных булевых функций
- •2.13.Импликанты булевой функции. Системы импликант
- •Аналогия между импликантами и кубическим представлением булевой функции
- •2.14.Минимизация булевых функций методом Квайна-Мак-Класки
- •2.14.1Нахождение множества максимальных кубов (простых импликант) булевой функции
- •2.14.2Определение ядра покрытия
- •2.14.3Определение множества минимальных покрытий
- •2.15.Функциональная полнота системы булевых функций
- •2.15.1Теорема о функциональной полноте (теорема Поста)
- •Другая формулировка теоремы Поста:
- •2.15.2 Замечательные классы булевых функций
- •2.15.3Конструктивный подход к доказательству функциональной полноты системы булевых функций
- •Контрольные вопросы и задачи
- •3. Синтез комбинационных схем
- •3.1. Типовые логические элементы и их обозначения на функциональных схемах
- •Способы кодирования логических сигналов
- •Понятие логической схемы. Типы логических схем
- •Основные параметры комбинационных схем
- •Задачи анализа и синтеза комбинационных схем
- •Построение комбинационных схем по минимальным нормальным формам в различных базисах
- •Булев базис (и, или, не)
- •Сокращенный булев базис (и, не)
- •Сокращенный булев базис (или, не)
- •Универсальный базис (и-не)
- •Универсальный базис (или-не)
- •Задача факторизации булевых функций
- •Оценка эффекта факторизации
- •3.9. Декомпозиция булевых функций
- •3.10. Синтез многовыходных комбинационных схем
- •3.11. Минимизация системы булевых функций
- •Раздельная минимизация функций системы
- •Совместная минимизация функций системы
- •3.12. Факторизация системы булевых функций
- •3.13. Декомпозиция системы булевых функций
- •Раздельная минимизация
- •Раздельная факторизация
- •Декомпозиция системы булевых функций
- •Контрольные вопросы и задачи
- •Вопросы к рубежному контролю
- •Литература
- •3.Мальцев и.А. Дискретная математика. СПб.:Изд. "Лань", 2011. – 304 с.
- •4.Шевелев ю.П. Дискретная математика. СПб.:Изд. "Лань", 2008. – 592 c.
- •Кафедра вычислительной техники
- •Основы теории множеств и приложение булевой алгебры к синтезу комбинационных схем
Совместная минимизация функций системы
Р
ешим
задачу минимизации совместно для обеих
функций системы. Приведем систему
булевых функций к одной функции от
четырех переменных, введя вспомогательную
переменную v.
Значение переменной v=0
используется для задания у1,
а v=1
- для y2.
Карта Карно для обобщенной функции
Y=(y1,
y2)
от четырех переменных: v,
x1,
x2,
x3
приведена на рис. 3.19.
Минимальное покрытие состоит из трех кубов, первый из которых принадлежит только функции y2, второй – y1, а третий обеим функциям. Справа от кубов покрытия отмечается их принадлежность функциям системы.
Сначала
выделяют общий терм для обеих функций
.
Составим минимальные ДНФ для функций
системы с учетом общего терма.
Сравнение результатов раздельной и совместной минимизаций показывает, что цена после совместной минимизации меньше (рис.3.20.).
Пример 3.8. Выполнить минимизацию системы булевых функций:
Введем вспомогательные переменные:
……..v1v2=00 y1
……..v1v2=01 y2
……..v1v2=10 y3
……..v1v2=11 y4
Выполним совместную минимизацию функций системы (риc. 3.21).
После получения минимального покрытия, с целью удобства, рядом с каждым кубом покрытия рекомендуется проставить его принадлежность функциям системы.
При совместной минимизации булевых функций может оказаться, что некоторые кубы поглощаются другими, т.е. после получения минимальной формы следует проверить необходимость использования каждого общего куба для покрытия отдельных функций.
Р
ис.
3.21. Совместная минимизация функций
системы
Заметим, что второй куб, покрывающий вершины всех функций системы, на самом деле, соответствует простой импликанте только для функции y3, а вершины остальных функций покрыты другими кубами. Поэтому принадлежность кубов функциям можно записать следующим образом:
оо
При введении вспомогательных переменных следует учитывать, что кодирование функций системы влияет на результат минимизации. И для похожих функций следует использовать соседнее кодирование. Так, если функции системы обозначить:
v1v2=00 y3
v1v2=01 y1
v1v2=10 y2
v1v2=11 y4,
то
после совместной минимизации
.
При записи минимальных форм сначала выделяются термы, общие для нескольких функций и обозначаются вспомогательными функциями (z1, z2 и т.д.).
Далее выписываются минимальные формы для отдельных функций с учетом их собственных термов и общих термов, принадлежащих данной функции.
Если число функций не равно 2k, где k=1, 2. …, то появляются незадействованные комбинации вспомогательных переменных и все наборы аргументов для них являются безразличными. Безразличные наборы аргументов используются для минимизации.
Пример 3.9. Рассмотрим систему булевых функций:
Введем
вспомогательные переменные:
v1v2=00 y1
v1v2=01 y2
v1v2=10 y3
v1v2=11 d
Выполним совместную минимизацию функций системы на картах Карно (риc. 3.22):
Рис. 3. 22. Минимизация функций системы
Общие термы: ррр
д
ддд
Заметим, что третий куб, покрывающий вершины всех функций системы, на самом деле, соответствует простой импликантам только для функции y1 и y2, а вершины функции y3 покрыты другими кубами.
Замечание. Для большого числа функций от многих аргументов применение карт Карно для совместной минимизации выглядит затруднительным. В этом случае можно использовать следующие подходы:
применение машинных методов;
раздельная минимизация и использование карт Карно;
выделение подмножеств из функций системы для их совместной минимизации.
