- •Введение
- •Предмет, научные основы и краткая история развития дисциплины
- •Раздел I
- •Классификация дискретных устройств
- •Понятие о математическом описании дискретных устройств
- •Структура дискретных устройств (автоматов)
- •Глава 2 логические функции и их свойства
- •Логические функции и способы их задания
- •Основные операции алгебры логики и их релейная интерпретация
- •Элементарные логические функции и функциональная полнота систем логических функций
- •Техническая реализация логических функций
- •Глава 3 преобразование логических функций
- •Основные законы алгебры логики
- •Основные формулы равносильных преобразований
- •Аналитические формы представления логических функций
- •Задачи и сущность минимизации логических функций
- •Таблично-аналитический метод минимизации логических функций
- •Карты Карно
- •Минимизация логических функций по картам Карно
- •Решетка соседних чисел и обобщенных кодов
- •Минимизация логических функций на основе решетки соседних чисел и обобщенных кодов
- •Минимизация логических функций на основе поразрядного сравнения рабочих и запрещенных наборов
- •Минимизация логических функций методом поразрядного сравнения рабочих и запрещенных обобщенных кодов
- •Общие выводы
- •Раздел II
- •Анализ комбинационных дискретных устройств, построенных на бесконтактных элементах
- •Глава 5 описание и анализ условий функционирования дискретных устройств с памятью
- •Задачи и последовательность анализа дискретных устройств
- •Элементарные автоматы памяти (элементы памяти)
- •Анализ дискретных устройств с памятью, построенных на бесконтактных элементах
- •Переходные процессы в дискретных устройствах с памятью (состязания элементов памяти)
- •Переходные процессы в комбинационных дискретных устройствах. Причины возникновения состязания сигналов
- •Определение состязаний сигналов в комбинационных дискретных устройствах, построенных на бесконтактных элементах
- •Аналитический метод анализа переходных процессов в комбинационных ду
- •Устранение состязаний сигналов в комбинационных дискретных устройствах
- •Оглавление
- •Раздел I 4
- •Раздел II 64
Минимизация логических функций методом поразрядного сравнения рабочих и запрещенных обобщенных кодов
Часто при синтезе сложных дискретных устройств, особенно микропрограммных автоматов (МПА), условия их работы, т.е. логические функции (ЛФ), описывающие возбуждение элементов памяти и появление сигналов на входе, получаются сразу в обобщенных кодах (ОК) – рабочих и запрещенных. Для их минимизации методом поразрядного сравнения рабочих и запрещенных весовых состояний ОК можно перевести в рабочие и запрещенные весовые состояния в восьмеричной системе счисления, но этот путь долгий и сложный.
Разработан (Викентьевым Л. Ф.) метод минимизации ЛФ, не полностью определенных, заданных рабочими и запрещенными ОК.
Рассмотрим его.
Рабочий ОК – это ОК, описывающий такие наборы переменных, на которых ЛФ равна 1, т.е. покрывающий попарно соседние рабочие весовые состояния (ВС).
Запрещенный ОК – это ОК, описывающий такие наборы переменных, на которых ЛФ равна 0, т.е. покрывающий попарно соседние запрещенные ВС.
Разряды обобщенного кода, занятые символами 1 и 0, называются значащими разрядами ОК. Количество тире в ОК называется рангом ОК.
Сущность метода минимизации не полностью определенных ЛФ, заданных рабочими и запрещенными ОК, заключается в том, что поочередно рассматриваются рабочие ОК (сравниваются с запрещенными ОК), в которых стараются как можно больше значащих разрядов заменить символами «–» (тире), стремясь получить ОК максимального ранга, включающий в себя как можно больше рабочих ОК и не включающий ни одного запрещенного.
Методика минимизации заключается в следующем. Каждый рабочий ОК сравнивается со всеми запрещенными ОК, и в нем оставляют лишь те минимально необходимые значащие разряды, которые отличают его от всех запрещенных ОК.
Получают результирующий рабочий ОК, содержащий минимальное число значащих разрядов.
Если в ходе сравнения получаются одинаковые результирующие ОК (а к этому всегда надо стремиться), то по закону повторения оставляют только один из них.
Совокупность полученных результирующих ОК образует приведенную систему простых импликант, а дизъюнкция соответствующих им членов ДНФ является одной из частных МДНФ (одной из тупиковых ДНФ).
П р и м е р 1. Получена таблица соответствия для функции Z1 при базе y2y1x3x2x1.
Каждая строка таблицы представляет собой ОК, первые четыре строки – рабочие ОК, последние три строки – запрещенные ОК.
По очереди сравниваем каждый рабочий ОК с каждым запрещенным ОК и минимально необходимые для их различия значащие разряды обводим «рамкой». Запишем результирующие ОК, объединим повторяющиеся, перейдем к импликантам при заданной базе (табл.3.6).
Получим частную МДНФ
Поскольку двоичное число является частным случаем обобщенного кода – обобщенный код нулевого ранга, то, очевидно, этот метод можно применять для минимизации ЛФ, зависящих от любого числа переменных и заданных в СДНФ или символической формой. При этом следует рабочие и запрещенные весовые состояния (члены СДНФ) записать в виде ОК (двоичных чисел) и поступать, как указано выше.
Таблица 3.6
y2 |
y1 |
x3 |
x2 |
x1 |
Z1 |
Результирующий ОК |
Импликанта |
0 |
0 |
– |
– |
1 |
1 |
0 – – – 1 |
|
0 |
0 |
– |
0 |
0 |
1 |
0 – – 0 – |
|
0 |
1 |
– |
– |
1 |
1 |
– 1 – – – |
y1 |
0 |
1 |
– |
– |
0 |
1 |
– 1 – – – | |
0 |
0 |
– |
1 |
0 |
0 |
|
|
1 |
0 |
1 |
– |
– |
0 |
|
|
1 |
0 |
0 |
– |
– |
0 |
|
|
Поясним это на примерах, рассмотренных ранее.
П р и м е р 2. Минимизировать функцию 37, 22, 31, [00, 16, 10].
Перейдем от ВС к ОК и выполним минимизацию.
37 |
→ |
011 111 |
→ |
– 1 – – – – |
– 1 – – – – |
|
|
22 |
→ |
010 010 |
→ |
– 1 – – – – |
→ |
x5 | |
31 |
→ |
011 001 |
→ |
– 1 – – – – |
|
| |
00 |
→ |
000 000 |
|
|
|
|
|
16 |
→ |
001 110 |
|
|
|
|
|
10 |
→ |
001 000 |
|
|
|
|
|
Получили ответ такой же, как и ранее y = x5, трудовые затраты – меньше.
Заметим, что если ВС много, то желательно соседние ВС объединять в ОК.
П р и м е р 3. Минимизировать ЛФ 73, 66, 43, 52, 56, 67, [00, 03, 15, 22, 23, 37, 40].
111 011 |
|
111 011 |
1 – – – 1 – |
→ |
x6x2 |
110 110 |
|
110 11– | |||
100 011 |
|
100 011 | |||
101 010 |
|
101 –10 | |||
101 110 |
|
|
|
|
|
110 111 |
|
|
|
|
|
000 000 |
|
–00 000 |
|
|
|
000 011 |
|
0–0 011 |
|
|
|
001 101 |
|
001 101 |
|
|
|
010 010 |
|
010010 |
|
|
|
010 011 |
|
|
|
|
|
011 111 |
|
011 111 |
|
|
|
100 000 |
|
|
|
|
|
Получили тот же результат y=x6x2, трудовые затраты – больше, большая вероятность ошибки.
П р и м е р 4. Минимизировать ЛФ 21, 22, 27, [06, 20, 24, 26].
21 |
→ |
10 001 |
→ |
10 001 |
|
– – – – 1 |
→ |
b |
22 |
→ |
10 010 |
→ |
10 010 |
|
– – 01 – |
→ |
|
27 |
→ |
10 111 |
→ |
10 111 |
|
|
|
|
06 |
→ |
00 110 |
|
–0 110 |
|
|
|
|
20 |
→ |
10 000 |
|
10 –00 |
|
|
|
|
24 |
→ |
10 100 |
|
|
|
|
| |
26 |
→ |
10 110 |
|
|
|
|
|
|
Получили ответ .