Использование триггеров для построения автоматов с памятью. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Использование триггеров для построения автоматов с памятью.



Можно заметить, что граф, изображенный на предыдущем листе, аналогичен по внешнему виду графу RS триггера. Кроме того, для построения автоматов с памятью по определению имеет смысл использовать элементы памяти – триггера. Алгоритм действий разработчика в этом случае представлен ниже.

1) Составляются граф, таблицы переходов и выходов системы.

2) Выбирается тип триггеров, на которых будет происходить реализация устройства и для него составляется таблица переходов триггера.

3) Определяется необходимое количество триггеров, комбинацией этих триггеров кодируются состояния устройства.

4) Таблица переходов переписывается так, чтобы вместо состояний устройства zi указывалась выбранная для этого состояния комбинация состояний триггеров.

5) Для каждого триггера исходя из таблицы, созданной в предыдущем пункте и таблицы переходов триггера (см. п. 2) составляются таблицы работы триггеров.

6) Из последней таблицы получаем логические выражения для сигналов на входах триггеров.

7) Составляется функциональная схема.

 

1) Для рассматриваемо выше примера перепишем таблицы:

Таблица переходов   Таблица выходов
Состояние   Состояние
       
       

2) Для рассмотренного примера решим для реализации использовать RS триггер.

Таблица переходов триггера показывает, какие сигналы надо иметь на его входах для перехода триггера из одного состояния в другое.

возможный переход триггера Необходимые для перехода входные сигналы
R S
Х
Х

В таблице символом Х обозначено безразличное состояние входа (0 или 1).

3) В рассматриваемом примере достаточно использовать один триггер. Пусть в состоянии - на выходе триггера - 0, в - 1.

4) Таблица переходов устройства, переписанная с учетом состояний выбранного триггера

Состояние
         
         

 

5) Таблица работы триггера имеет такую же шапку, что и таблица переходов системы, но внутри нее записываются состояния входов триггера из п.1, обеспечивающих этот переход.

Состояние
Х1 0 Х1 0   Х0 0
1 0 1 0 0 Х1 0 Х0

 

6) При получении выражений для R и S, вместо Х будем устанавливать такой уровень, чтоб выражение получилось проще. Выбранный уровень указан нижним индексом при Х.

7) Функциональная схема устройства, построенная по полученным выше логическим выражениям будет иметь следующий вид:

 

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

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

 

 

Выходной сигнал Х появляется при наличии одной единицы на трех входах а,в,с и исчезает при наличии входах двух единиц, причём если эти две единицы появились на входах, которые при запуске Х были равны нулю, то при исчезновении Х появляется выходной сигнал У, исчезающий при исчезновении любого из выше упомянутых двух сигналов.

 

1) Анализ задания позволяет сделать вывод, что для включения Х необходимо иметь одну из трех входных комбинаций 001, 010 или 100 (для краткости записи здесь и далее вместо комбинации входных сигналов а,в,с будем записывать десятичное число, соответствующее двоичному коду сформированному на входах а,в,с). Для отключения же Х необходимы входные комбинации 110, 101, 011. Если бы не было выходного сигнала У, то для описания работы выходного сигнала Х достаточно было бы двух состояний, в которых Х=0 и Х=1. Вид графа совпадал бы с графом RS триггера. Наличие же выхода У требует «памяти» о том, какая комбинация входных сигналов привела к появлению Х, так как в зависимости от этого при исчезновении Х может появиться выход У. Исходя из этого выделим три состояния при которых будет существовать выход Х, обозначив их как Z1, Z2, Z3. переход в эти состояния будет происходить при входных комбинациях 001, 010 и 100 соответственно. На создаваемом ниже графе этим переходам будет соответствовать три дуги, около которых для краткости записи указаны десятичные коды указанных выше входных комбинаций – 1, 2, 4 соответственно. Параллельно созданию графа будем вести заполнение таблицы переходов, в которой для первой строки (Z0) остальные входные комбинации не приведут к изменению состояния. На графе соответствующая этому дуга помечена как ост.

Закончив анализировать возможные переходы для состояния Z0, переходим к анализу следующего состояния Z1. Это состояние соответствует наличию выходного сигнала Х за счет появления входной комбинации 001. Как указано в задании, Х исчезнет при наличии двух единиц на входах, следовательно из этого состояния возможен переход только при входных комбинациях 110, 101, 011. Однако при комбинации 110 должен появиться У, поэтому из этого состояния укажем две дуги – в Z0 при 5 и 3 комбинации, и в Z4 при комбинации 6 (110). Естественно в Z4 должен существовать У. При остальных входных комбинациях состояние не должно изменяться, для чего соответствующую этому дугу пометим как ост.

Аналогично Z1 рассматриваем состояния Z2 и Z3 и для них заполняем соответствующие строки таблицы переходов.

При рассмотрении очередного состояния, необходимо помнить, что оно введено для существования выхода У. По заданию У исчезает при исчезновении любого из выше упомянутых двух сигналов, этому соответствуют все входные комбинации кроме 6 и 7 (110 и 111). Поэтому при указанных входных комбинациях Z4 остается, а в остальных система возвращается в исходное состояние Z0, в котором отсутствуют оба выхода. Кроме комбинаций 1,2,4 (появление одной единицы), которые должны привести к появлению Х (смотри дуги, соединяющие Z4 с Z1, Z2 и Z3).

Аналогично Z4 рассматриваем состояния Z5 и Z6 и для них заполняем соответствующие строки таблицы переходов.

Таблица переходов
Состояние Комбинация входных сигналов
a b c a b c a b c a b c a b c a b c a b c a b c
Входная комбинация
               
Десятичный код входной комбинации
               
Z0 Z0 Z1 Z2 Z0 Z3 Z0 Z0 Z0
Z1 Z1 Z1 Z1 Z0 Z1 Z0 Z4 Z4
Z2 Z2 Z2 Z2 Z0 Z2 Z5 Z0 Z5
Z3 Z3 Z3 Z3 Z6 Z3 Z0 Z0 Z6
Z4 Z0 Z1 Z2 Z0 Z3 Z0 Z4 Z4
Z5 Z0 Z1 Z2 Z0 Z3 Z5 Z0 Z5
Z6 Z0 Z1 Z2 Z6 Z3 Z0 Z0 Z6
было Состояние стало

Полный граф устройства примет вид изображенный ниже. Над графом выполнена таблица переходов системы. Таблицу выходов в данном случае выполнять не имеет смысла, так как при составлении графа было решено, что Х=Z1+Z2+Z3 У=Z4+Z5+Z6.

 

2) Реализацию устройства, как и в предыдущем примере, произведем на RS триггерах, таблица переходов такого триггера расположена ниже

возможный переход триггера Необходимые для перехода входные сигналы
R S
Х
Х

 

3) Осуществим реализацию работы устройства, закодировав 7 внутренних состояний от Z0 до Z6 трёхразрядным двоичным числом. При этом для запоминания 7 состоянии потребуется 3 триггера (ТО, Т1, Т2).

4) Перепишем таблицу переходов, заменяя Zi двоичным числом, десятичный эквивалент которого равен i.


 

состояние Код входной комбинации
Zi ТОТ1Т2                
Z0                  
Z1                  
Z2                  
Z3                  
Z4                  
Z5                  
Z6                  
Было Стало

 

5) Полученную таблицу переходов преобразуем в три таблицы работы триггеров.

Для триггера Т0:

состояние было Код входной комбинации
               
Z0 *(1) 0 *(1) 0 *(1) 0 *(0) 0 *(1) 0 *(0) 0 *(0) 0 *(0) 0
Z1 *(1) 0 *(1) 0 *(1) 0 *(0) 0 *(1) 0 *(0) 0 0 1 0 1
Z2 *(1) 0 *(1) 0 *(1) 0 *(0) 0 *(1) 0 0 1 *(0) 0 0 1
Z3 *(1) 0 *(1) 0 *(1) 0 0 1 *(1) 0 *(0) 0 *(0) 0 0 1
Z4 1 0 1 0 1 0 1 0 1 0 1 0 0 *(0) 0 *(1)
Z5 1 0 1 0 1 0 1 0 1 0 0 *(0) 1 0 0 *(1)
Z6 1 0 1 0 1 0 0 *(0) 1 0 1 0 1 0 0 *(1)
Было Необходимые для перехода уровни RS входов

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

6) Из таблицы получим следующие логические выражения:

R0=0+1+2+3(Z4 +Z5)+4+5(Z4 +Z6)+6(Z5 +Z6)

S0=3Z3+5Z2+6Z1+7Z0

 

5) Для триггера Т1:

состояние было Код входной комбинации
               
Z0 *(0) 0 *(0) 0 0 1 *(0) 0 0 1 *(1) 0 *(1) 0 *(0) 0
Z1 *(0) 0 *(0) 0 *(0) 0 *(0) 0 *(0) 0 *(1) 0 *(1) 0 *(0) 0
Z2 0 *(0) 0 *(0) 0 *(1) 1 0 0 *(1) 1 0 1 0 1 0
Z3 0 *(0) 0 *(0) 0 *(1) 0 *(0) 0 *(1) 1 0 1 0 0 *(0)
Z4 *(0) 0 *(0) 0 0 1 *(0) 0 0 1 *(1) 0 *(1) 0 *(0) 0
Z5 *(0) 0 *(0) 0 0 1 *(0) 0 0 1 *(1) 0 *(1) 0 *(0) 0
Z6 1 0 1 0 0 *(1) 0 *(0) 0 *(1) 1 0 1 0 0 *(0)
Было Необходимые для перехода уровни RS входов

6) R1=0Z6+1Z6+3Z2 +5+6Z2

       
   


S1=2Z1 +4Z1

 

5)Для триггера Т2:

состояние было Код входной комбинации
               
Z0 *(0) 0 0 1 *(0) 0 *(1) 0 0 1 *(1) 0 *(1) 0 *(1) 0
Z1 0 *(0) 0 *(1) 0 *(0) 1 0 0 *(1) 1 0 1 0 1 0
Z2 *(0) 0 *(0) 0 *(0) 0 *(1) 0 *(0) 0 0 1 *(1) 0 0 1
Z3 0 *(0) 0 *(1) 0 *(0) 1 0 0 *(1) 1 0 1 0 1 0
Z4 *(0) 0 0 1 *(0) 0 *(1) 0 0 1 *(0) 0 *(1) 0 *(0) 0
Z5 1 0 0 *(1) 1 0 1 0 0 *(1) 0 *(0) 1 0 0 *(0)
Z6 *(0) 0 0 1 *(0) 0 *(1) 0 0 1 *(0) 0 *(1) 0 *(0) 0

6) R2=0Z5+2Z5+3 +5(Z1 +Z3)+6+7(Z1 +Z3)

 

S2=1Z2 +4Z2+5Z2+7Z2

 

7) Функциональная схема создаваемого устройства примет вид:

Здесь блок «комбинационная логика» функционирует по логическим выражениям определенным в пунктах 6) для каждого триггера, дешифратор преобразует трехразрядное двоичное число, полученное на выходах триггеров Т0, Т1 и Т2 в состояния Z0…Z6.

 

Если граф имеет несколько «лепестков», разница в которых только в сигнале, который придёт первым, то можно унифицировать решение составить таблицу переходов и схему по ней только для одного лепестка. Для других же лепестков схема будет такой же только на входы надо будет подавать другие сигналы.

 



Поделиться:


Последнее изменение этой страницы: 2016-09-20; просмотров: 213; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.135.183.89 (0.03 с.)