(Таблица истинности)
№ |
X2 Датчик вкл обмоток двигателя |
Х1 датчика заполнения водой
|
Х0 датчика дверцы |
Υ |
Режим |
0 |
0 |
0 |
0 |
0 |
|
1 |
0 |
0 |
1 |
0 |
|
2 |
0 |
1 |
0 |
1 |
Стирка, против часовой стрелки |
3 |
0 |
1 |
1 |
0 |
|
4 |
1 |
0 |
0 |
1 |
Отжим |
5 |
1 |
0 |
1 |
0 |
|
6 |
1 |
1 |
0 |
1 |
Стирка, по часовой стрелке |
7 |
1 |
1 |
1 |
0 |
|
Очевидно, что при конструировании рассматриваемого цифрового устройства необходимо найти такую логическую функцию, которая бы соответствовала составленной таблице истинности. На первом этапе, пользуясь составленной таблицей, необходимо записать искомую логическую функцию в так называемой совершенной дизъюнктивной нормальной форме (СДНФ). Для этого следует.
В таблице истинности выделить строки, в которых значение функции Υ равно "1". Для каждой такой строки составить конъюнкцию всех аргументов, причем записать аргумент Xi в прямом виде, если его значение в этой строке равно " 1", и в инверсном
i
, если
его значение
равно "0". В нашем случае это строки
2, 4 и 6 в табл. 6:
Y2
=
*Х1
*
,
Y4=
Х2
*
1
*
Y6= Х2 *Х1 *
Полученные логические произведения называются минтермами.
13
2. Записать логическую сумму полученных в п. 1 минтермов.
Y = Y2 +Y4 +Y6 = *Х1* + Х2 * 1 * + Х2 *Х1* или
Y = Y2 ⋁ Y4 ⋁ Y6 = *Х1* ⋁ Х2* 1 * ⋁ Х2*Х1 * (1)
Это и есть искомая функция в виде СДНФ, т. е. в виде логической суммы конъюнктивных термов одинаковой размерности.
Если следовать традиционной методике, то следующим этапом работы должно быть упрощение выражения (1) с помощью приведенных выше законов булевой алгебры. В первую очередь следует вынести за скобки общие сомножители и учесть, что
Х2 + =1 (см. закон 8,б):
Y
=
* (
*Х1
+ Х2*
1
+ Х2*
Х1)
=
*Х1
+ Х2*(
1
+
Х1)] = * Х1 + Х2) (2)
Далее, сумма в круглых скобках выражения (2) может быть представлена в соответствии с законом 9,б как
*Х1 + Х2 = (Х2 + ) * (Х1 + Х2) = Х1 + Х2
где вторая сумма снова равна 1 (см. 8,б). В итоге получаем:
Y = * (Х1 + Х2) (3)
Выражение (.3) трудно представить в более простом виде. Его можно попытаться реализовать с помощью аппаратных элементов из табл. 5. Соответствующая электрическая схема представлена на рис. 1.
Х0
Х1
Х2
Рис. 1. Схема автомата управления двигателем стиральной машины
14
На рис.1 в виде обозначенных именами флажков изображены линии (проводники) входных аргументов (флажки с острием внутрь схемы) и линия выходной функции (флажок острием наружу). Эту схему конструируют и моделируют ее работоспособность в пакете САПР QuartusII.
Конечно, рассмотренная в нашем примере функция очень проста. На практике в разрабатываемых цифровых устройствах, например в реальной стиральной машине, решаемых функций обычно несколько, а аргументов, как правило, существенно больше. Для преобразования сложных функций к виду, пригодному для схемной реализации, существуют некоторые специальные приемы. Однако, в конечном счете, эффективность решения задачи оказывается сильно зависящей от опыта и искусства разработчика. Кроме того, проблема преобразования функций осложняется тем, что для различных вариантов элементной базы (внутреннего устройства микросхем) необходимо использовать различные, часто не вполне четко сформулированные критерии эффективности окончательного вида функций.
К счастью, в современных условиях трудно отыскать разумные доводы для выполнения логических устройств на традиционных дискретных микросхемах с использованием приведенной процедуры проектирования. Сейчас подобные и многократно более сложные логические задачи успешно решаются с применением ПЛИС. А в этом случае большую часть работы по составлению оптимального вида функций и размещению их в конкретных логических элементах выполняет соответствующий пакет САПР, такой, например, как пакет Quartus II [3] фирмы Altera [16]. Более того, даже работа по представлению функций в виде CДНФ оказывается излишней. При использовании ввода логики проекта с помощью программы на специальном языке описания аппаратуры оказывается достаточным представить непосредственно таблицу истинности. Остальные процедуры выполняются автоматически. При этом в течение небольшого промежутка времени, измеряемого не часами, а минутами, можно проверить функционирование устройства и установить его временные параметры и занимаемый аппаратный объем с помощью системы моделирования пакета. В случае если параметры окажутся неудовлетворительными, можно выбрать прибор (микросхему) иной архитектуры и также быстро повторить проектирование и моделирование. И только после получения требуемых результатов принимать решение о приобретении ПЛИС.
В подразд. 4.2 продемонстрирована простота процедуры проектирования цифрового устройства с использованием языка описания аппаратуры в применении к задаче управления двигателем стиральной машины.
