Методика синтеза цифрового автомата
Из принципа работы цифрового автомата следует, что наиболее важным его параметров является количество необходимых для реализации заданного алгоритма состояний . Эта величина определяет требуемый объем памяти автомата и, следовательно, разрядность его кода состояния. Из структуры, приведенной на рис.9.1. следует, что при заданном сигнале число различных выходных сигналов будет определяться числом различных значений кода состояния. Поэтому число требуемых состояний автомата легко определить как максимальное число различных выходных кодов, формируемых на выходе автомата при одном значении входного кода . Тогда минимальная разрядность кода состояния автомата определяется выражением:
, (9.4)
то есть как округление значения до наибольшего целого числа.
Составим методику синтеза цифрового автомата.
1. На основании заданного алгоритма работы определить требуемое число состояний и объем памяти цифрового автомата.
2. С использованием графа переходов или таблицы состояний формализовать алгоритм работы цифрового автомата.
3. Выбрать тип триггера для реализации блока памяти.
4. Используя формальное описание алгоритма работы и таблицу переходов выбранного типа триггера составить расширенную таблицу истинности для описания комбинационно логического устройства автомата.
5. Минимизировать ФАЛ, описывающие работу комбинационно логической части автомата.
6. Составить логическую схему автомата.
Возвращаясь к обобщенной структурной схеме последовательностного устройства (см. рис.9.1) можно сказать, что блок памяти может использовать любые из рассмотренных типов триггеров. Код следует рассматривать как сигналы на информационных входах триггеров, код - как сигнал синхронизации, а код (состояние цифрового автомата) - как выходные сигналы триггеров ( ). В этом случае смена состояний на выходе блока памяти происходит по сигналу синхронизации триггеров.
Заметим, что приведенная методика не является однозначной и в зависимости от выбора типа триггера и соотношения внутренних ( и ) и внешних ( и ) переменных позволяет синтезировать целый ряд устройств, реализующих заданный алгоритм работы, но отличающихся внутренней структурой и, следовательно, сложностью технической реализации.
Проиллюстрируем рассмотренную методику примером.
Упражнение 9.3. По словесному описанию синтезировать логическую схему цифрового автомата.
Описание: На выходе цифрового автомата формируется циклическая последовательность прямых унитарных трехразрядных кодов. При этом, если входной сигнал равен лог. «1», единица сдвигается в сторону старшего разряда. Если входной сигнал равен лог. «0», то единица сдвигается с сторону младшего разряда.
Решение:
Анализ приведенного описания показывает, что на выходе автомата при должна формироваться следующая последовательность кодов: 001, 100, 010, 001, 100… и т. д. При выходная последовательность имеет вид: 001, 010, 100, 001, 010 …и т.д. В обоих случаях на выходе формируется только 3 различных кода. Следовательно, число требуемых состояний, формируемых на выходе блока памяти цифрового автомата должно равняться 3. Минимальная разрядность кода состояния при этом равна:
.
Рис.9.10. Граф автомата к упражнению 9.3. | Таким образом, для реализации заданного алгоритма блок памяти должен содержать 2 триггера. Два триггера позволяют получить 4 различных состояния, следовательно, одно из возможных состояний автомата является лишним. Для обеспечения надежной работы устройства предположим, что в случае появления на выходе блока памяти неиспользуемого кода состояния |
(аварийный режим работы) устройство вернется в исходное состояние (например ) и сформирует на выходе нулевой код (признак сбоя в работе) Учитывая, что смена входного сигнала не изменяет выходной код автомата, а только влияет на порядок появления кодов, составим граф переходов автомата. Спроектированный с учетом сказанного граф приведен на рис.9.10. В этом графе состояниям могут быть поставлены в соответствие произвольные значения двухразрядного двоичного кода, формируемого на выходе блока памяти, то есть данному графу могут соответствовать несколько различных цифровых автоматов.
Сопоставим состояния автомата (вершины графа) произвольным значениям выходного кода (таблица 9.4.) и составим его таблицу состояний (таблица 9.5)
Таблица 9.4.
| Таблица 9.5 Таблица переходов графа рис.9.10
|
Таблица состояний (табл.9.5) позволяет составить расширенную таблицу истинности автомата. Ее особенностью является наличие в ней не только текущих состояний, действующих на выходе блока памяти, но и следующих состояний, что необходимо для определения кода (таблица 9.6).
Таблица 9.6. Расширенная таблица истинности для случая использования -триггеров
Значения переменных во всех столбцах таблицы состояний, кроме столбца , берутся из графа переходов с учетом назначений, сделанных в таблице 9.4. Значения кодов (информационные сигналы триггеров и ) получаются с использованием таблицы переходов -триггера (табл.9.3) по известным текущему и следующему его состояниям. Так, например, при состояния автомата должно измениться с 00 на 10. Это означает, что триггер, управляемый старшим разрядом кода , по сигналу синхронизации должен переключиться ( ), а триггер, управляемый младшим разрядом кода переключаться не должен ( ).
Полученная расширенная таблица истинности позволяет получить ФАЛ, описывающие работу комбинационного логического устройства автомата. В полученных выражениях состояния представлены выходными сигналами триггеров ( ). Минимизация выражений получена с использованием карт Вейча.
В качестве примера рассмотрим реализацию этого же алгоритма с использованием -триггеров. Расширенная таблица истинности в этом случае будет иметь вид (таблица 9.7.)
Таблица 9.7. Расширенная таблица истинности для случая использования -триггеров
1х | 0х | ||||
0х | х1 | ||||
х1 | 1х | ||||
х1 | х1 | ||||
0х | 1х | ||||
1х | х1 | ||||
х1 | 0х | ||||
х1 | х1 |
Очевидно, что в таблице 9.7 изменился только код , который стал четырехразрядным. Следовательно, изменятся только ФАЛ для управляющих сигналов триггеров и .
На рис.9.11 и 9.12 приведены логические схемы автоматов, соответствующих таблицам 9.6 и 9.7.
Рис.9.11. Логическая схема цифрового автомата по таблице 9.6
Сравнение схем рис.9.10 и 9.11 показывает, что не смотря на то, что в схеме рис.9.11 использован -триггер, для управления которым необходимо два информационных сигнала, схема цифрового автомата содержит на два логических элемента меньше, то есть она проще.
К сожалению, без сравнительного анализа нескольких вариантов реализации, заблаговременно невозможно сказать применение какого типа триггера приведет к получению наиболее простой технической реализации цифрового автомата. Можно только констатировать, что использование или триггеров приводит к уменьшению разрядности кода . Однако, при этом, как правило, получаются более сложные ФАЛ. Применение же или триггеров увеличивает разрядность кода , однако из-за наличия в таблицах переходов этих триггеров необязательных сигналов, ФАЛ, описывающие получение сигналов кода обычно получаются проще.
Дата добавления: 2016-03-10; просмотров: 1123;