Синтез цифровых автоматов

11304
знака
5
таблиц
4
изображения

6.1 Теоретические сведения 

Цифровым автоматом называется логическая схема, у которой выходные сигналы зависят не только от комбинации входных сигналов, но и от комбинации самих выходных сигналов, которая имела место перед изменением какого-либо входного сигнала. Чтобы такая зависимость возникла, в составе логической схемы необходима память. Сочетание комбинационной схемы с памятью и образует цифровой автомат. Цифровой автомат называют последовательной схемой (в отличии от комбинационной схемы, которая памяти не имеет).

Обобщенная структура цифрового автомата показана на рисунке 6.1.

 

1.jpg

Рисунок 6.1

КС – комбинационная схема, RG – регистр памяти, X – комбинация входных переменных, Y – комбинация выходных переменных, Z – комбинация на выходе регистра памяти (внутреннее состояние автомата),

F – код перехода (комбинация, задающая состояние регистра памяти).

Код перехода F является функцией входных переменных X и состояния Z регистра (автомат Мура) Для одного и того же автомата возможны оба способа реализации.

Синтез автомата включает в себя следующие этапы:

а) формирование списка входных функций;

б) определение необходимого числа состояний автомата;

в) построение графа переходов или таблицы состояний автомата;

г) разработка регистра состояний автомата;

д) разработка комбинационной схемы автомата.

Задача синтеза автомата при современной электронной базе возникает, когда нет готовой типовой интегральной схемы, подходящей для данного случая и когда алгоритм работы интегрируемого автомата не слишком сложен. Если алгоритм сложный, то устройство разбивают на несколько отдельных автоматов или на используют микроконтроллер. Автомат можно построить из отдельных типовых интегральных схем или на базе программируемой логической интегральной схемы (ПЛИС).

Порядок синтеза автомата лучше рассмотреть на конкретном примере.

Пусть требуется разработать схему управления поддержания уровня воды в баке в определенных пределах с возможностью включения и выключения насоса заполнения вручную в любой момент. Включение должно быть возможно только в случае, если уровень воды не превосходит верхний.

а) Формирование списка входных и выходных переменных.

Входные переменные:

П – включение насоса вручную (единичный уровень)

С– выключение насоса вручную (нулевой уровень)

В – сигнал датчика верхнего уровня (при контакте с водой единичный уровень)

Н– сигнал датчика нижнего уровня (при контакте с водой единичный уровень)

Сигналы П и С импульсные (от кнопок с самовозвратом), В и Н постоянные (пока имеется контакт с водой).

б) Определение необходимого числа состояний автомата.

Будет разрабатываться автомат Мура. В данном случае, исходя из задания, он должен иметь три состояния: начальное Z0, когда насос выключен и включить его можно только сигналом2.jpg(пуск); Z1, когда насос выключен датчиком В верхнего уровня; Z2, когда насос включен любым способом.

в) Построение графа переходов.

Граф переходов нагляднее таблицы состояний и показан на рисунке 6.2 Направления переходов показаны стрелкой, а состояния обозначены в кружках.

3.jpg
Рисунок 6.2

 

Дуги обозначены сигналами, при которых выполняется переход. После включения питания автомат должен устанавливаться в состояние Z0 (как это обеспечить в данном примере не рассматривается). Из состояния Z0 его можно вывести только сигналом2.jpg(пуск). Если вода в баке не достигает верхнего уровня, сигналом 5.jpgавтомат переводится в состояние Z2 (насос включается сразу), если вода в баке достигает верхнего уровня, сигналом 6.jpg автомат переводится в состояние Z1( насос включается, когда вода в баке опустится до нижнего уровня или после повторного сигнала 2.jpg, когда вода в баке будет ниже верхнего уровня).

Из состояния Z1 автомат может перейти в состояние Z2 если появится сигнал 8.jpg (воды в баке меньше нижнего уровня) или сигнал 9.jpg (ручной пуск), а так же в состояние Z0, если появится сигнал 10.jpg (стоп). Из состояния Z2 автомат может перейти в состояние Z1, если появится сигнал В (достигнут верхний уровень) или в состояние Z0, если появится сигнал 10.jpg (стоп). Сигнал 12.jpg из любого состояния переводит автомат в состояние Z0.

Из приведенного описания графа следует, что в двух случаях при одновременной подаче сигналов возникает конфликт. Например, при одновременной подаче сигналов 8.jpg (включить насос) и 10.jpg (выключить насос). Что бы разрешить этот конфликт сигналу 10.jpg следует придать приоритет, т.е. включать насос сигналом 8.jpg, когда сигнал выключения отсутствует, т.е (с=1). Таким образом, вместо сигналов 17.jpg, 8.jpg, 19.jpg, 6.jpg надо использовать сигналы 21.jpg, 22.jpg, 23.jpg, 24.jpg, что и отражено на графе.

 Табличное описание автомата представлено в таблице состояний – выходов 6.1.

Таблица 6.1

 

Сигнал

Состояния

Z0

Z1

Z2

25.jpg

Z2

Z2

Z2

24.jpg

Z1

Z1

Z2

21.jpg

Z0

Z1

Z1

22.jpg

Z0

Z2

Z2

29.jpg

Z0

Z0

Z0

Выход

-

-

Y

 

На пересечении столбца и строки приводится новое состояние автомата, в которое он перейдет из состояния, указанного в заглавии столбца, под воздействием сигнала данной строки.

Последняя строка определяет выходной сигнал и отражает тот факт, что он определяется состоянием Z2.

г) Разработка регистра состояния автомата.

Регистр может состоять как из асинхронных, так и синхронных динамических триггеров. Можно использовать готовый регистр в интегральном исполнении. В случае применения асинхронных триггеров отсутствует тактовый генератор, но необходимо принять меры против появления гонок.

Минимально необходимое число триггеров (разряда регистров) равно ближайшему большему целому двоичного логарифма от числа состояний автомата. Максимальное число триггеров (разрядов регистра) равно числу состояний автомата. Чем меньше триггеров, тем сложнее комбинаторная схема. Единых рекомендаций по выбору типа и числа триггеров нет. Выбор определяется опытом и склонностью разработчика к определённой элементной базе, а так же техническими требованиями.

Рассмотрим два варианта. Первый при минимальном числе триггеров и их типы – асинхронные RS. Второй при максимальном числе триггеров и регистре в интегральном исполнении на базе динамических D триггеров.

Первый вариант. Число триггеров N= log 2 3=1,59. Ближайшее большее целое 2. В целях уменьшения количества состояния регистра, связанные наибольшим числом дуг стараются по мере возможности кодировать соседними кодами (т.е. кодами, отличающимися одним разрядом). В нашем случае это состояния Z0 и Z2, Z1 и Z2.

Результаты кодирования состояний автомата представлены в таблице 6.2. Состояние Z3 = 10 не используется.

Таблица 6.2

 

Состояние автомата

Код

Q1

Q0

Z0

0

0

Z1

1

1

Z2

0

1

 

Но если автомат в результате помех оказался в этом состоянии, самостоятельно он из него не выйдет. Поэтому необходимо принять меры для выхода из этого состояния. Вариантов может быть несколько. Например, сигналом 2.jpg перейти в состояние Z2, если уровень воды не достиг верхнего уровня, или в состояние Z1, если бак заполнен до верхнего уровня. Этот вариант и отражен на графе рисунка 6.2

Второй вариант. Число триггеров n = 3. Каждое состояние автомата кодируется единицей на выходе какого-либо одного триггера. Результаты кодирования представлены в таблице 6.3

Таблица 6.3

Состояние автомата

Код

Q1

Q2

Q3

Z0

0

0

1

Z1

0

1

0

Z2

1

0

0

 

Под состоянием Z3 на графе рисунка 6.2 понимаются в этом случае все остальные возможные состояния автомата.

д) Разработка комбинационной схемы.

Все ранее определенные сигналы и состояния регистра помещаются в сводную таблицу, на основании которой и разрабатывается комбинационная схема. Рассмотрим синтез комбинационной схемы на базе ПЗУ в интегральном исполнении для регистра из D триггеров.

Для первого варианта все сигналы сведены в таблицу 6.4.

Таблица 6.4.

 

 

 

Входы комбинационной схемы

Имя
состояния

регистра

Имя след. состояния регистра

Выходы комбинационной схемы

Входные сигналы

Состояние регистра

Коды перехода в следующее состояние

П

С

В

Н

Q1

Q0

S1

R1

S0

R0

1

1

1

1

x

0

0

Z0

Z1

1

0

1

0

2

1

1

0

x

0

0

Z0

Z2

0

0

1

0

3

x

0

x

x

1

1

Z1

Z0

0

1

0

1

4

1

1

0

x

1

1

Z1

Z2

0

1

0

0

5

x

1

x

0

1

1

Z1

Z2

0

1

0

0

6

x

0

x

x

0

1

Z2

Z0

0

0

0

1

7

x

1

1

x

0

1

Z2

Z1

1

0

0

0

8

1

1

1

x

1

0

Z3

Z1

0

0

1

0

9

1

1

0

x

1

0

Z3

Z2

0

1

1

0

 

Входов у комбинационной схемы 6, поэтому полная таблица истинности должна содержать 64 строки. Что бы сделать таблицу более компактной, сигнал на входе, значение которого не влияет на состояние выходного сигнала, обозначен знаком x (т.е. учитывает сразу два значения 0 и 1). Исключены строки, содержащие комбинации сигналов, при которых регистр не изменяет своего состояния, так как при этом на входе RS триггеров нужно подавать 0. Т.к. запись функции предполагается в нормальной дизъюнктивной форме, то важны единичные значения функции.

Функций всего 5, входы RS триггеров и выход Y. Поскольку выходной сигнал определяется состоянием Z2 регистра, то его выражение очевидно, и он в таблице не представлен.

В строке таблицы 6.4 указано исходное состояние регистра; следующее состояние регистра; комбинация входных сигналов, которая переводит его в это следующее состояние и сигналы, которые должны подаваться на входы триггеров для перевода его в это состояние. В таблице учтено, что некоторые разряды регистра при переходе из одного состояния в другое не меняют своего значения и при этом на входы данного триггера можно подавать 0.

Из таблицы сразу можно записать выражения функций в НДФ.

31.jpg

32.jpg

33.jpg

34.jpg

Рисунок 6.3

35.jpg

36.jpg

Минимизацию функций можно провести любым известным способом. В данном случае после минимизации с помощью карт Карно получается:

37.jpg

38.jpg

39.jpg

40.jpg

41.jpg

Таблица 6.5

Номер строки

Входы комбинационной схемы

Имя состояния регистра

Имя  следующего состояния регистра

Выходы комбинационной схемы

Входные сигналы

Состояние регистра

Коды перехода в следующее состояние

П

С

В

Н

Q2

Q1

Q0

D2

D1

D0

 

1

2

3

4

 

1

1

X

1

 

1

1

0

1

 

1

0

X

0

 

X

X

X

X

 

0

0

0

0

 

0

0

1

1

 

1

1

0

0

 

Z0

Z0

Z1

Z1

 

Z1

Z2

Z0

Z2

 

0

1

0

1

 

1

0

0

0

 

0

0

1

0

5

6

7

8

9

X

X

X

0

1

1

0

1

X

0

X

X

1

X

X

0

X

X

X

X

0

1

1

0

0

1

0

0

0

0

0

0

0

1

1

Z1

Z2

Z2

Z0

Z0

Z2

Z0

Z1

Z0

Z0

1

0

0

0

0

0

0

1

0

0

0

1

0

1

1

10

11

12

13

0

X

X

X

1

1

1

X

X

1

0

X

1

X

X

X

0

0

1

0

1

1

0

0

0

0

0

0

Z1

Z1

Z2

Z3

Z1

Z1

Z2

Z0

0

0

1

0

1

1

0

0

0

0

0

1

14

15

16

17

 

X

X

X

X

X

X

X

X

X

X

1

0

X

X

X

X

 

X

0

0

0

1

0

1

1

 

1

1

0

0

 

Z3

Z3

Z3

Z3

 

Z0

Z0

Z1

Z2

0

0

0

1

0

0

1

0

1

1

0

0

 

 

Принимается, что RS триггеры будут построены на ЛЭ 2И-НЕ. Такие триггеры имеют инверсное управление. Преобразуя полученные после минимизации выражения к виду, обеспечивающему реализацию с меньшим числом корпусов.

42.jpg

43.jpg 

44.jpg

45.jpg

46.jpg

 

Схемная реализация автомата показана на рисунке 6.3

Для второго варианта все сигналы связаны в таблицу 6.5. Входов у комбинационной схемы 7. 

Таблица 6.5 составлена по тому же принципу, что и таблица 6.4, только в ней учтено, что для сохранения информации Д триггера в момент подачи синхронизирующего импульса на его вход Д нужно подавать информацию, которая в нём хранится и под состоянием Z3 понимаются все неиспользуемые состояния регистра, в которых он может случайно оказаться под действием помехи. Данная таблица одновременно является и таблицей прошивки ПЗУ. Входы комбинационной схемы – это адресные входы, ПЗУ, а выходы комбинационной схемы это выходы ПЗУ, т.е. по адресу, заданному входной комбинацией записан код перехода в следующее состояние.

Схема автомата показана на рисунке 6.4

47.jpg
Рисунок 6.4

 

С – сигнал от генератора тактовых импульсов, максимальная частота его определяется суммарным временем задержки в ПЗУ и регистре, минимальная частота определяется необходимым быстродействием автомата.


Информация о реферате «Синтез цифровых автоматов»
Раздел: Радиоэлектроника
Количество знаков с пробелами: 11304
Количество таблиц: 5
Количество изображений: 4

Похожие материалы

Скачать
113094
120
81

... состоянии am. Рассмотренные выше абстрактные автоматы можно разделить на: 1)  полностью определенные и частичные; 2)  детерминированные и вероятностные; 3)  синхронные и асинхронные; Полностью определенным называется абстрактный цифровой автомат, у которого функция переходов и функция выходов определены для всех пар ( ai, zj). Частичным называется абстрактный автомат, у которого функция ...

Скачать
55876
14
15

... в народном хозяйстве. Специальная часть. 3. 1. Определение задачи. Из задания на курсовое проектирование определим суть задачи: для некоторого синхронного цифрового автомата необходимо спроектировать устройство управления на основе жёсткой логики, которое в соответствии с заданными кодами микрокоманд формирует на выходной десятиразрядной шине управляющую последовательность цифровых сигналов. 3. ...

Скачать
16804
14
0

... . Функционирование цифрового автомата проверить на примере массива данных состоящей из шести элементов. Элементы массива A=5, B=2, x=2. Функционирование цифрового автомата представлено в табл.4 R1 R R3 R4 Sm1 Sm2 Выполняемая операция 0011 y1:R1ßx 0011 y2:R2ßB 0101 ...

Скачать
11077
8
0

... развились и на практике чаще применяют именно импульсные последовательности. Генератор импульсов‑ автогенератор ,вырабатывающий импульсы прямоугольной формы. Генераторы обеспечивают работу цифрового устройства и характеризуются частотой сигнала, стабильностью частоты, скважностью, видом последовательности сигнала и другими параметрами. В соответствии с принятыми условиями необходимо ...

Скачать
22928
12
12

для проектирования цифрового автомата (ЦА) в соответствии с заданием на курсовое проектирование, которое приводится ниже. Построить структурную схему ЦА с указанием схемы запуска, цепей формирования тактовых сигналов (Ф), сигналов сброса (W), входных сигналов (X) и т.д. 2. Определить период функционирования ЦА в соответствии с заданием на курсовое проектирование. 3. Определить необходимое ...

0 комментариев


Наверх