Общий вид автомата с памятью

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

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.

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

Если устройство имеет множество входных сигналов Х, множество выходных сигналов Y и множество внутренних состояний Z, то логическое выражение для каждого выхода в общем виде будет иметь вид:

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

.

Учитывая вышесказанное, функциональная схема такого устройства может быть представлена в виде, изображенном далее. Здесь левый ряд логических элементов И выполняет функции логического произведения комбинации входных сигналов и внутреннего состояния, вентили, соединяющие горизонтальные линии с вертикальными линиями связи - логические элементы ИЛИ, триггера – память внутренних состояний, а дешифратор на выходе триггеров преобразует многоразрядное двоичное число, образованное этими триггерами во внутренние состояния.

Логическую комбинационную схему для формирования выходных сигналов Y из сигналов, обеспечивающих переход в новое внутреннее состояние можно объединить в один блок, а триггера «помнящие» очередное внутреннее состояние в память внутренних состояний. Полученная структурная схема изображена ниже.

Построение комбинационной схемы удобнее выполнять на ПЗУ, прошивку которого осуществлять по автоматным таблицам (таблицам выходов и таблицам переходов). При этом информацию «было» подавать на адресные входы ПЗУ, а содержимое соответствующей ячейки памяти → «стало»


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: