9.4. Синтез комбинационных автоматов в заданном базисе
Синтез комбинационных автоматов.
При синтезе комбинационных автоматов (после этапа абстрактного и структурного синтеза имеются соответствующие переключательные функции) требуется получить схему автомата, например, в виде переключательной схемы или схемы из функциональных (логических) элементов.
Синтез переключательной схемы.
Пусть задана переключательная функция Получим переключательную схему (рис. 57).
Рис. 57. Переключательная схема,
реализующая функцию
На рис. 57 верхняя и нижняя горизонтальные линии обозначают, например, полюсы источника питания, а буква F – некоторый элемент, срабатывающий в случае равенства функции логический единице, т.е. в случае наличия цепи к верхнему полюсу. Символами переменных х1,х2,х3 могут обозначаться, например, контакты некоторых датчиков, а F – обмотка реле, контакт которого включает некоторый исполнительный орган (вентилятор, сирену, нагреватель и др. элементы автоматики). Соответствующая релейно-контактная схема изображена на рис. 58.
Часто датчики подключаются не непосредственно в цепи реализации переключательных функций, а через реле-повторители (рис. 59).
Рис. 58. Релейно-контактная схема
реализации логической функции
Рис. 59. Релейно-контактная схема реализации переключательной функции с реле-повторителями сигналов датчиков
Синтез комбинационных автоматов на основе функциональных (логических) элементов по сравнению с переключательными схемами требует особого представления логической функции – в виде суперпозиции операций заданного базиса.
Синтез в базисе И, ИЛИ, НЕ.
Наиболее просто это сделать, если задать базис И, ИЛИ, НЕ. Предполагается, что переключательная функция представлена в ДНФ.
Пусть, например, задана следующая переключательная функция: z(аbсdx2x1)=
Получим схему в базисе И, ИЛИ, НЕ (рис. 60).
Рис. 60. Схема в базисе И, ИЛИ, НЕ без ограничения числа входов
функциональных элементов
Схема рис. 60 изображена в предположении, что число входов элементов не ограничено.
Если же должны использоваться только двухвходовые элементы, т.е. все операции бинарные (кроме инверсии), то схема будет выглядеть так, как изображено на рис. 61.
Рис. 61. Схема с учетом наличия только двухвходовых элементов И, ИЛИ
Синтез методом каскадов.
При синтезе комбинационных автоматов используется метод каскадов, основанный на разложении Шеннона:
f(x1,...,xi,...,xn)=xif(x1,...,1,...,xn)Úif(x1,...,0,...,xn)=xif(1)Úif(0).
Такое разложение позволяет исключать переменные и понижать размерность по каскадам до тех пор, пока остаточные функции не будут иметь простой вид и их реализация не будет представлять трудности [9].
Реализуем вышерассмотренную функцию z(аbсdx2x1) методом каскадов с использованием блоков исключения переменной вида xif(1)Ú if(0), которые легко реализуются в базисе И, ИЛИ, НЕ.
Очевидно, что:
z(аbсdx2x1)=,
т.е. ,, которые реализуются на двухвходовых элементах И, ИЛИ. Проводить дальнейшее разложение нет необходимости. Соответствующая схема комбинационного автомата изображена на рис. 62.
Рис. 62. Схема, построенная по методу каскадов
Интересно, что схема на рис. 62, построенная по методу каскадов, проще в смысле числа элементов – для ее построения необходимо 11 элементов (9 двухвходовых и 2 инвертора). Сравните ее со схемой на рис. 61, для построения которой потребовалось 13 элементов (11 двухвходовых и 2 инвертора).
В общем случае сложность остаточных функций зависит от порядка исключения переменных и оптимальное их исключение ищут специальными методами, основанными на понятии булевой производной:
=f(x1,x2,...,xi-1,1,xi+1,...,xn)Åf(x1,x2,...,xi-1,0,xi+1,...,xn),
где Å – сумма по модулю 2 [9].
При использовании базисов, отличных от рассмотренного базиса И, ИЛИ, НЕ, блоки исключения переменных и блоки реализации остаточных функций реализуются в заданном базисе.
Например, в импликативном базисе {®,0}:
=(а®(b®0))®0.
Синтез в базисах И-НЕ, ИЛИ-НЕ.
Наиболее часто используются базисы, состоящие из одной функции: И-НЕ, ИЛИ-НЕ.
Представление переключательной функции в этих базисах требует использования только этих операций с учетом ограничений по числу входов соответствующих элементов. Для этого используется закон Де Моргана:
f(аbсd)===– это представление в базисе И-НЕ.
–это представление в базисе ИЛИ-НЕ.
Соответствующие схемы представлены на рис. 63.
Рис. 63. Реализация логической функции f(аbсd)=
в базисе 2И-НЕ (а) и 2ИЛИ-НЕ (б),
т.е. для двухвходовых элементов И-НЕ, ИЛИ-НЕ
В случае превышения ограничения по числу входов элементов следует еще раз применить закон Де Моргана, например:
т.е. получили только одноместные и двухместные операции И-НЕ.
Синтез в базисе Жегалкина.
Полиномом Жегалкина называется представление логической функции в базисе {Å,И,НЕ} (имеется соответствующая алгебра Жегалкина). В данном представлении инверсия реализуется как сумма по модулю 2 с константой 1.
Для представления ДНФ в виде полинома Жегалкина необходимо выразить дизъюнкцию через конъюнкцию и инверсию.
Например:
хÚy==(хÅ1)(yÅ1)Å1=
=xyÅxÅyÅ1Å1=xyÅxÅy.
(1Å1=0).
Пример. Представить в виде полинома Жегалкина логическую функцию xÚyÚz.
xÚyÚz==(хÅ1)(yÅ1)(zÅ1)Å1=(xyÅxÅyÅ1)(zÅ1)Å1=
=xyzÅxzÅyzÅxyÅxÅyÅ1Å1=xyzÅxzÅyzÅxyÅxÅy.
Для преобразования полинома Жегалкина используются обычные приемы элементарной алгебры (исключение составляет равносильность аÅа=0).
Полином Жегалкина может быть получен по таблице истинности путем суммирования по модулю 2 конъюнкций переменных без инверсии xi или инверсных переменных (xjÅ1) соответствующих рабочих наборов.
Например, получим полином Жегалкина для функции f, таблица истинности которой имеет вид табл. 54.
Таблица 54
Таблица истинности
-
x
y
z
f
0
0
0
0
0
0
1
1
0
1
0
1
0
1
1
0
1
0
0
1
1
0
1
0
1
1
0
0
1
1
1
1
Тогда получим:
f=(xÅ1)(yÅ1)zÅ(xÅ1)y(zÅ1)Åx(yÅ1)(zÅ1)Åxyz=
=(xyÅxÅyÅ1)zÅ(xzÅxÅzÅ1)yÅx(yzÅyÅzÅ1)Åxyz=
=xÅyÅz,
что и требовалось доказать, ибо и рассматривалась функция сложения по модулю 2 трех аргументов.
- Содержание
- 6. Элементарные двоичные переключательные функции
- 7. Основные законы булевой алгебры и преобразование
- Приложение 2. Варианты контрольных заданий по дисциплине
- Предисловие
- Дискретная математика
- 1. Множества и алгебраические системы. Булевы алгебры
- 1.1. Основные понятия теории множеств
- 1.2. Основные операции над множествами
- 1.3. Декартово произведение множеств
- 1.4. Соответствия и функции
- 1.5. Отношения
- 1.6. Использование множеств в языке Паскаль
- 2. Элементы общей алгебры
- 2.1. Операции на множествах
- 2.2. Группа подстановок Галуа
- 2.3. Алгебра множеств (алгебра Кантора)
- 2.4. Алгебраические системы. Решетки
- 2.5. Задание множеств конституентами
- 2.6. Решение уравнений в алгебре множеств.
- 3. Элементы комбинаторики
- 3.1. Комбинаторные вычисления
- 3.2. Основные понятия комбинаторики
- 3.3. Размещения
- 3.4. Перестановки
- 3.5. Сочетания
- 3.6. Треугольник Паскаля.
- 3.7. Бином Ньютона
- 3.8. Решение комбинаторных уравнений
- 4. Основные понятия теории графов
- 4.1. Способы задания графов
- 4.2. Характеристики графов
- 4.3. Понятие о задачах на графах
- 4.4. Задача о Ханойской башне
- 5. Переключательные функции и способы их задания
- 5.1. Понятие о переключательных функциях
- 5.2. Двоичные переключательные функции и способы их задания
- 5.3. Основные бинарные логические операции
- 5.4. Понятие о переключательных схемах и технической реализации переключательных функций
- 5.5. Использование логических операций в теории графов
- 6. Элементарные двоичные переключательные функции и функциональная полнота систем переключательных функций
- 6.1. Элементарные переключательные функции одной переменной
- 6.2. Элементарные переключательные (логические) функции двух переменных
- 6.3. Функциональная полнота систем переключательных функций
- 6.4. Базисы представления переключательных функций
- 6.5. Пример анализа и определения свойств пф, заданной десятичным номером
- 7. Основные законы булевой алгебры и преобразование переключательных функций
- 7.1. Основные законы булевой алгебры переключательных функций
- 7.2. Равносильные преобразования. Упрощение формул алгебры переключательных функций
- 7.3. Преобразование форм представления переключательных функций
- 8. Минимизация переключательных функций
- 8.1. Цель минимизации переключательных функций
- 8.2. Основные понятия и определения, используемые при минимизации
- 8.3. Аналитические методы минимизации переключательных функций
- 8.4. Минимизация переключательных функций по картам Карно
- 8.5. Метод поразрядного сравнения рабочих и запрещенных наборов
- Минимизация переключательных функций на основе поразрядного сравнения рабочих и запрещенных восьмеричных наборов.
- 8.6. Минимизация переключательных функций, заданных в базисе {, и, не}
- 8.7. Минимизация систем переключательных функций
- 8.8. Минимизация переключательных функций методом неопределенных коэффициентов
- 9. Понятие об автомате и его математическом описании
- 9.1. Основные определения теории конечных автоматов
- 9.2. Описание конечных детерминированных автоматов
- 9.3. Понятие о технической интерпретации конечных автоматов
- 9.4. Синтез комбинационных автоматов в заданном базисе
- 9.5. Булева производная
- 9.6. Элементарные автоматы памяти на основе комбинационного автомата и задержки
- 9.7. Синтез автомата – распознавателя последовательности
- 10. Элементы теории кодирования
- 10.1. Понятие о кодировании
- 10.2. Системы счисления, как основа различных кодов
- 10.3. Понятие о помехоустойчивом кодировании
- 10.4. Кодирование по Хэммингу
- 10.5. Кодирование с использованием циклических кодов и математического аппарата умножения и деления полиномов. Сигнатурный анализ
- 10.6. Понятие о криптографической защите информации
- 10.7. Понятие о сжатии информации