Синтез комбинационного устройства рассмотрим на примере реализации преобразователя кода для семисегментных индикаторов. Будем считать, что светодиодные семисегментные индикаторы выполнены с общим катодом, т.е. сегменты высвечиваются при подаче на них уровня логической единицы. Преобразователь кода представим в виде дешифратора с семью выходами (количество выходов КУ равно количеству реализуемых функций). Схема соединения выводов преобразователя к сегментам индикатора приведена на рис. 2.5. Обозначение сегментов индикатора стандартное и соответствует
общепринятым
нормам.
В данном случае будем считать, что
сегменты будут высвечиваться при
подаче на них уровня логической “1”.
Пусть обозначения функций
соответствуют именам сегментов, тогда
таблица состояния функций будет
выглядеть так
Для
зажигания цифры 1 необходимо подать
уровни логической “1” на сегменты
“b” и “c” и т.д. Преобразователь
предназначен для индикации цифр
десятичной системы счисления, и
поэтому значения функций для наборов
переменных, начиная с номера 10, для
индикатора безразличны. Безразличные
значения функций обозначены знаком ~ (тильда).
После заполнения
таблицы состояния устройства
составляются аналитические выражения
(СНДФ) для каждой функции и строятся
карты Карно, предназначенные для
минимизации этих функций. Карты Карно
можно заполнять и без записи СНДФ, что
сократит количество действий
разработчика при синтезе устройства.
Очевидно, что без минимизации функции
преобразователя получились бы весьма
громоздкими, т.к. каждая содержала бы
по девять минтермов, состоящих из
четырех переменных. Порядок
составления карт Карно и получения
минимальных НДФ роли не играют. Для
удобства с точки зрения
последовательности изложения
алгоритма действий, минимизацию
начнем с функции а
(рис.2.6), реализующей индикацию цифры
0.
Для функции b
карта Карно представлена на рис.2.7.
Она содержит три контура,
следовательно, МДФ будет содержать
всего три простых конъюнкции.
Карта Карно для
функции “c”
представлена на рис.2.8. Она содержит
четыре контура, следовательно,
функция будет содержать тоже четыре
минтерма.
Аналогично
строятся карты Карно и записываются
минимальные ДФ и для других функций.
После получения всех МДФ производят
выбор требуемого базиса логических
элементов и составляют
принципиальную схему. Многие
фрагменты отдельных функций могут
быть использованы при реализации
общих для этих функций операций. В
общем случае, принципиальную
схему преобразователя
кода можно построить на базе
элементов И-ИЛИ-НЕ.