Минимизация булевых функций с помощью карт Карно
Применение графического метода, использующего карты Карно для минимизации булевых функций относительно небольшого числа переменной. Построение таблицы истинности функции, особенности образования импликант разных рангов. Нахождение тупиковых форм.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | реферат |
Язык | русский |
Дата добавления | 07.03.2013 |
Размер файла | 600,9 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Минимизация булевых функций с помощью карт Карно
Для минимизации функций относительно небольшого числа переменной (не более шести) наиболее простым и наглядным является графический метод, использующий карты Карно.
Карта Карно - это прямоугольник, разбитый на квадраты, число которых равно числу наборов рассматриваемой функции, т. е. 2n. Клетки размечаются так, чтобы наборы, для которых возможны смежные конституанты, оказались бы в соседних клетках.
При заполнении карты Карно в ее клетки проставляют значения функции для соответствующих наборов, которые являются координатами клеток. Например, для функции двух переменных А и В (рис. 5) карта Карно имеет вид
Единицы, представленные в клетках, обозначают конституанты единицы рассматриваемой функции. Отыскание минимальной ее формы сводится к определению варианта, при котором все конституанты единицы накрываются (охватываются контурами покрытия) наименьшим числом наиболее коротких импликант. Объединение клеток на карте эквивалентно выполнению операции склеивания.
Всегда нужно стремиться к минимальному количеству контуров и максимальной площади каждого из них, руководствуясь следующими правилами:
· площадь контура покрытия должна быть S
k = 2m-i клеток,
где - целое число, m - число переменных. Если, например, m = 3, то Sk = 1, 2, 4, или 8 клеток;
· число сокращаемых переменных
Nперем. = log2 Sk,
т.е. при Sk = 1 не сокращается ни одна переменная, при Sk = 2 сокращается одна переменная и т.д.
В примере на рис. 5 пара единиц верхней строки охватывается импликантой В (т.е. обе клетки) имеют общий аргумент В). Пара единиц правого столбца накрывается импликантой B, как общей для обеих клеток. Следовательно, минимальная ДНФ функции F(A,B) = В Ъ B.
Если имеется несколько вариантов объединения конституант контурами, то можно получить несколько различных эквивалентных минимальных ДНФ функции, одна из которых выбирается для реализации в цифровом устройстве.
Карту Карно удобно использовать и для минимизации функций, заданных в алгебраической форме, например,
.
Карта Карно, состоящая из 23 = 8 клеток, может быть размечена, как показано на рис. 6.
При охвате единиц контурами склеивания карту Карно можно сворачивать в цилиндр, как вдоль горизонтальной, так и вертикальной оси. В результате все четыре единицы, расположенные в углах Карты, охватываются контуром с общей импликантой . Такой минимизации соответствует выражение
.
Графический метод минимизации - Карты Карно
Карты Карно - это графическое представление операций попарного неполного склеивания и элементарного поглощения.
Карты Карно рассматриваются как перестроенная соответствующим образом таблица истинности функции.
Карты Карно - определенная плоская развертка n-мерного булева куба.
Строится таблица истинности функции определенным образом. Каждая клетка таблицы соответствует вполне определенной вершине булева куба. Нулевые значения не записываются.
Карта Карно для функции 4-х переменных:
Карта Карно рассматривается как поверхность фигуры под названием тор ("бублик").
p-клетки - клетки карты Карно, соответствующие единичному значению функции.
Соседние наборы - наборы, которые различаются только одним аргументом (одной орбитой).
Любой паре соседних наборов в Карте Карно соответствуют соседние клетки.
Две соседние p-клетки на карте Карно дают импликанту первого ранга. Например, клетки 1100 и 1101 отличаются только значением переменной x3, следовательно, они дают импликанту 124.
Две соседние импликанты первого ранга образуют импликанту второго ранга.
На этой карте соседние клетки образуют импликанты a, b, c, d, e. При этом импликанты a и b являются соседними, поэтому они образуют импликанту второго ранга.
Если функция имеет 5 переменных, то рисуются 2 Карты Карно: для x5=0 и для x5=1. Если 6 переменных - 4 Карты, так чтобы в соседних картах соседние клетки имели одинаковые координаты:
Соседние p-клетки, соответствующие импликанте образуют компактную группу.
Количество p-клеток в компактной группе является степенью двойки.
Задача минимизации переключательной функции с помощью карт Карно заключается в нахождении импликант высшего ранга (соответствующих компактным группам наибольшей размерности), покрывающих p-клетки функции наилучшим образом.
Если на картах Карно выделить все компактные группы наибольшей размерности, то дизъюнкция соответствующих конъюнкций даст СкДНФ.
Пример минимизации функции 4-х переменных методом Карт Карно:
00 |
01 |
11 |
10 |
||
00 |
|||||
01 |
|||||
11 |
|||||
10 |
Компактных групп размера 4 - 2
Компактных групп размера 2 - 2
Нахождение тупиковых форм
Обозначения:
Клетки, покрываемые ядром |
||
Клетки, которые покрываются только одной компактной группой наибольшей размерности. |
||
Клетки, соответствующие единичным наборам функции. |
Цветом выделены компактные группы наибольшей размерности, вошедшие в ядро.
Ядро: v v
МДНФ: v v , цена=7
Минимизация булевых функций методом Карно
карно булев импликанта тупиковый
Среди формальных методов большое распространение получил метод Карно и метод Квайна. Метод Карно основан на представлении исходной функции, заданной в форме ДСНФ, в виде карты следующего вида:
Пусть задана функция 3-х переменных
Заданную функцию представим с помощью карты Карно:
Затем производится объединение 2-х, 4-х или 8-ми единиц. В данном случае объединение двух единиц по горизонтали соответствует операции склеивания над конституантами и , в результате которой исключается переменная B и получена импликанта .Объединение двух единиц по вертикали соответствует операции склеивания над конституантами и , в результате которой исключена переменная С и будет получена импликанта . Следовательно, минимальная форма заданной функции примет следующий вид:
Ниже приведены ряд примеров, поясняющие процесс минимизации функции 3-х переменных методом Карно.
В последнем примере показано, что может быть получено несколько минимальных форм. Если объединить единицы так, как показано сплошной линией, то получим форму . При объединении единиц способом, показанным пунктирной линией, получим другую минимальную форму
Рассмотрим минимизацию функции 4-х переменных. Пусть задана функция
.
Представим в виде карты Карно.
В данном случае возможно объединение 4-х единиц, в результате получим минимальную форму
Ниже приведены примеры минимизации функции 4-х переменных.
Методом Карно возможна минимизация функций 5 переменных. Карта в этом случае имеет 32 поля. Рассмотрим минимизацию следующей функции 5 переменных , которая задана в виде карты Карно.
В результате минимизации, получим следующую форму:
Таким образом, при объединении 2-х полей исключается одна переменная, при объединении 4-х полей - две переменные, при объединении 8-ми полей - три переменные.
Метод Карно целесообразно применять для функций, имеющих не более 5 переменных. При большом количестве переменных используют формальные методы Квайна или Квайна-Мак-Класки.
Размещено на Allbest.ru
...Подобные документы
Построение карт Карно. Переход от булевых выражений к функциональным схемам. Минимизация заданной функции. Схемная реализация факторизированного покрытия. Перевод схемы в универсальный базис. Соединение транзисторов с нагрузкой в цепи коллектора.
курсовая работа [468,7 K], добавлен 01.12.2014Разработка функциональных схем основных узлов сумматора-умножителя. Минимизация функции алгоритмом Рота. Поиск простых импликант. Минимизация картами Карно-Вейча. Эффективность минимизации. Логический синтез комбинационного устройства с шестью входами.
контрольная работа [36,3 K], добавлен 31.03.2013Проектирование преобразователя кода (ПК), рассчет его энергопотребления и быстродействия. Составление таблицы истинности ПК. Написание булевых функций, минимизация и преобразование к выбранному базису. Составление структурной схемы преобразователя кода.
курсовая работа [775,3 K], добавлен 09.02.2009Применение математических методов для решения логических задач и построения логических схем. Определение и реализация булевых функций. Основные схемы функциональных элементов. Программируемые логические матрицы. Правила составления таблицы истинности.
курсовая работа [821,6 K], добавлен 19.03.2012Мнемоническая и кодированная форма структурной таблицы. Функции возбуждения триггеров, параметры комбинационных блоков. Синтез комбинационной схемы центрального аппарата методом карт Карно и аналитическим: сравнительное описание и оценка эффективности.
курсовая работа [1,6 M], добавлен 10.02.2014Синтез автомата для преобразования двоично-десятичного кода. Кодировка алфавитов и состояний. Построение булевых функций, минимизация. Разметка вход-выходных слов для автомата Мили и автомата Мура. Реализация на элементах малой степени интеграции.
контрольная работа [141,5 K], добавлен 14.10.2012Основные понятия структурных автоматов. Этапы канонического метода синтеза. Кодирование алфавитов автомата и выбор элементов его памяти. Построение уравнений булевых функций возбуждения и выходов. Методы устранения гонок в структурных автоматах.
курсовая работа [496,3 K], добавлен 27.01.2011Дослідження основ двійкової арифметики. Порозрядні логічні операції, Бульові функції та комбінаційні схеми. Еквівалентні формули та закони. Мінімізація методом послідовного виключення логічних змінних та карт Карно. Зведення до базису та часові діаграми.
курсовая работа [481,0 K], добавлен 14.03.2013Разработка исследовательского комплекса, решающего задачу формирования минимального полинома Жегалкина по вектору значений булевой функции методом частных полиномиальных нормальных форм. Сравнение сред программирования. Макет программного продукта.
дипломная работа [1,3 M], добавлен 29.05.2015Разработка программного обеспечения, реализующего нахождение минимального значения заданной функции многих переменных и ее точку минимума методом сопряжённых градиентов. Минимизация функции вдоль заданного направления. Блок-схема алгоритма минимизации.
отчет по практике [725,6 K], добавлен 01.10.2013Понятие, последовательность построения и схемная реализация цифрового автомата. Описание форм представления функций алгебры логики. Принципы минимизации функций выходов и переходов автомата, их перевода в базис. Сведенья о программе Electronics Workbench.
курсовая работа [2,0 M], добавлен 27.10.2010Определение унитарных и бинарных функций. Представление булевых функций: дизъюнктивная и конъюнктивная нормальная форма. Общая характеристика правил и стратегии игры в шашки. Особенности математической модели цифрового устройства для игры в шашки.
курсовая работа [544,0 K], добавлен 28.06.2011Задача нахождения кратчайшего покрытия булевой матрицы. Алгоритмы поиска кратчайших покрытий методом Патрика и методом Закревского. Метод предварительного редуцирования булевой матрицы. Описание программы "Нахождение кратчайшего покрытия булевых матриц".
курсовая работа [884,1 K], добавлен 12.12.2010Исследование элементов на транзисторно-транзисторной логике. Логическая схема одноразрядного и полного сумматора. Оптимизация функции с помощью карты Карно. Синтез двухразрядного компаратора и проверка его работы. Моделирование преобразователей кодов.
контрольная работа [3,5 M], добавлен 27.03.2016Математическая модель задачи: расчет объема производства, при котором средние постоянные издержки минимальны. Построение графика функции с помощью графического редактора MS Excel. Аналитическое исследование функции, зависящей от одной переменной.
курсовая работа [599,7 K], добавлен 13.02.2010Составление треугольной таблицы. Нахождение списка максимальных классов совместимости, минимального замкнутого покрытия. Получение логических функций выходов автомата. Синтез конечного автомата и функциональной схемы. Принципиальная электрическая схема.
контрольная работа [215,8 K], добавлен 22.06.2012Нахождение высоты конуса наименьшего объема, описанного около данного шара радиуса. Определение исследуемой функции, зависящей от одной переменной. Составление математической модели задачи. Построение графика заданной функции с помощью MS Excel.
задача [3,2 M], добавлен 15.02.2010Особенности использования встроенных функций Microsoft Excel. Создание таблиц, их заполнение данными, построение графиков. Применение математических формул для выполнения запросов с помощью пакетов прикладных программ. Технические требования к компьютеру.
курсовая работа [1,1 M], добавлен 25.04.2013Программное обеспечение для реализации алгоритмов поиска базиса пространства аннигиляторов, статических соотношений для алгебраических атак и алгебраической иммунности для функции, заданной трейс представлением. Оценки порядка алгебраической иммунности.
курсовая работа [561,9 K], добавлен 30.05.2014Построение таблицы истинности, прямое и обратное доказательство, построение которого основывается на тринадцати законах. Построение алгоритма Вонга и метода резолюции, проводится сравнение этих методов на удобство реализации программы на языке Pascal.
курсовая работа [99,9 K], добавлен 26.06.2012