Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции начало рус.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
757.76 Кб
Скачать

Минимизация ф а л

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

Минимизацией – называется процесс сокращения числа операций и переменных, входящих в аналитическое выражение для ФАЛ.

При решении задач минимизации ФАЛ, зависящих от небольшого числа переменных (п ≤ 6), находят широкое применение графические методы. При большем числе переменных эти методы теряют свое основное свойство – наглядность – и становятся не эффективными.

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

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

Между представлением функции в табличной (таблица истинности), алгебраической (в виде СДНФ и СКНФ) и координатной (карта Карно) формах имеется однозначное соответствие : карта Карно содержит k = 2п клеток (п – число переменных данной логической функции), что равно количеству строк в таблице истинности функции или числу единичных наборов переменных СДНФ и нулевых наборов переменных СКНФ, вместе взятых.

Принято называть клетки карты Карно, в которых представлены единичные значения функции, единичными (обозначаются они в карте – „1“), а клетки, соответствующие нулевым значениям функции, - нулевыми (на карте Карно они обычно не отмечаются).

x3x4 00 01 11 10

0 0 1

01 1 1

1 1 1 1

10 1

В основе метода минимизации с помощью карт Карно лежит операция (правило) склеивания:

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

1

Рассмотрим действие этого правила на конкретном примере (Рис.11)

Совокупность 2i(i=0,1,2,…6) соседних клеток карты Карно называется подкубом. Подкубы могут содержать: 1, 2, 4, 8, 16… и т.д. клеток, т.е. размерность подкуба определяется числом входящих в него клеток. В подкубы можно объединять как единичные наборы (конъюнктивные термы), так и нулевые (дизъюнктивные термы), и называться они будут соответственно единичными и нулевыми подкубами. Под кубы образуются с целью исключения 1, 2 или нескольких переменных, входящих в единичные или нулевые наборы, с помощью правила склеивания. На рис.11 показаны примеры 2,4 – клеточных подкубов. Чтобы получить МДНФ, необходимо взять дизъюнкцию единичных наборов переменных, входящих в подкуб, т.е. сложить вклады всех подкубов. При этом если переменные меняют свое значение в разных наборах, они исключаются по правилу склеивания. Для каждого примера (рис.11):

В клад 1 2х-клеточных подкуба: + х1х2х3х4

х1х2х3х4

x1+x1=1 х2х3х4

В клад 2 4х-клеточный подкуб:+ х1х2х3х4

x1+x1=1 х1х2х3х4

x3+x3=1 х1х2х3х4

х1х2х3х4

x2 x4

FМДНФ2х3х42х4

Чтобы с помощью карты Карно успешно решать задачи минимизации логических функций, необходимо знать и уметь различать типичные конфигурации подкубов. На рис.12 показаны типичные конфигурации 2-х, 4-х и 8- клеточных подкубов. Особое внимание следует обращать на подкубы, которые имеют видимый разрыв, т.к. объединяемые ими соседние клетки находятся в крайних строках и столбцах карты Карно.

х3х4 00 01 11 10 х3х4 00 01 11 10

х 1х2 х1х2

0 0 1 1 00 1 1

01 1 01 1 1 1 1

1 1 1 11 1 1 1 1

1 0 1 1 10 1 1

а) б)

х3х4 00 01 11 10

х1х2

00 1 1

01 1 1

11 1 1

10 1 1

в)

Рис.12 :Типичные двух клеточные (а), четырех клеточные (б) и восьми клеточные (в) подкубы на картах Карно 4-х переменных.

Любой 2-х клеточный подкуб позволяет исключать 1 переменную; 4-х клеточный 2 переменные; 8 клеточный - 3 переменные.

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

Правило образования подкубов для получения минимального значения функции:

1. образовать двух клеточные подкубы из наборов, имеющих только одного соседа;

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

3. из оставшихся наборов образовать пересекающиеся подкубы максимально возможной величины;

  1. сравнить результаты выполнения 2 и 3 пунктов правила и выбрать оптимальный;

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

  3. закончить образование подкубов, если все наборы задействованы.

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

Примеры:

х3х4 00 01 11 10 х3х4 00 01 11 10

х 1х2 х1х2

00 1 00

01 1 1 1 01 1 1 1

11 1 1 1 11 1 1

10 1 10 1 1

х3х4 00 01 11 10 х3х4 00 01 11 10

х1х2 х1х2

00 1 1 1 1 00 1 1 1

01 1 1 01 1 1 1

11 1 1 11 1 1 1 1

10 1 1 1 1 10 1 1 1 1

Рис.13

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]