В качестве элементов памяти структурного автомата обычно используются триггеры. Как уже было сказано, с точки зрения прикладной теории цифровых автоматов, триггер - это элементарный автомат Мура, обладающий полной системой переходов и полной системой выходов.
Триггер характеризуется числом информационных входов, внутренних состояний, числом выходных сигналов и т.д. выходные сигналы триггера отождествляются с его внутренними состояниями, именно поэтому таблица переходов совпадает с таблицей выходов и триггер задается только одной из них (таблицей переходов). Как правило, триггер формирует как прямой сигнал, так и инверсный.
Рассмотрим некоторые из этапов канонического метода более подробно, с применением специальных методов.
Рисунок 5- Функциональная схема автомата
Существует только 4 типа запоминающих элементов с одним информационным входом, имеющих полную систему переходов и выходов: D-триггер, Т-триггер,
-триггер, -триггер. Таблицы их переходов представлены табл. 17 - 20. соответственно, а условные графические изображения триггеров представлены на рис. 6. Входы D, T, называются информационными.Таблицы переходов триггеров составляются только для информационных входов. Остальные входы являются вспомогательными. В частности, вход C - вход для подключения синхросерии (о чем будет сказано ниже). Каждый из триггеров имеет два выхода. Появление единичного сигнала на выходе, помеченном на рисунках символом q, означает, что триггер находится в единичном состоянии. Появление единичного сигнала на выходе
говорит о нулевом состоянии.а) б) в) г )
Рисунок 6- Условное графическое обозначение триггеров:
а)D-триггер; б) Т-триггер; в) D-триггер; г) T-триггер
В таблицах переходов две первые колонки одинаковые - в них перечислены все возможные комбинации входного сигнала и состояния элемента памяти. Для того, чтобы элементарный автомат имел полную систему переходов, колонку Q(t+1) следует заполнить таким образом, чтобы во второй и третьей колонках встречались все возможные типы переходов (00, 01, 10, 11). Для триггера типа D колонка Q(t+1) и D совпадают, т.к. выходной сигнал отождествляется с состоянием, то это означает, что данный элемент является элементом задержки на 1 такт. Его характеристическое уравнение имеет вид:
Q(t+1)=d(Q(t), D(t))= DQvD = D.
Триггер типа Т изменяет свое состояние только при подаче на его вход «1». Это триггер со счетным входом. Его характеристическое уравнение имеет вид:
Q(t+1 )=d(Q(t), (t))=
QvT .Триггеры с двумя информационными входами имеют различное построение в зависимости от режимов использования имеющихся входов. Основными, наиболее распространенными двухвходовыми триггерами являются RS-триггер, JK-триггер, синхронизированный D-триггер. Рассмотрим подробнее каждый из них.
RS-триггер
Название этого элемента происходит от английских слов «set-reset» - «установка-сброс». Он имеет два установочных входа: S -установка в 1, R - установка в ноль (сброс). Работа описывается таблицей переходов (табл. 21). На 6 и 7 наборах функция не определена, т.к. считается, что нет необходимости устанавливать данный триггер в положение «1» и «О» одновременно. Таким образом, входная комбинация 11 для RS-триггера является запрещенной и не должна возникать в реальных условиях работы.
Характеристическое уравнение после его преобразования и минимизации имеет вид:
Q(t+1 )=d (Q(t), R(t), S(t))=
Q v S.Это соотношение показывает, что при нулевом сигнале на входе «установка в ноль» (R=0) RS-триггер является дизъюнктором накапливающего типа. Он осуществляет логическое сложение содержимого триггера Q(t) и сигнала S(t), после чего результат операции записывается вместо первого слагаемого. В частном случае, при обнуленном триггере, осуществляется запись в триггер той информации, которая поступила на вход S. Условное графическое обозначение RS-триггера представлено на рис. 7.а).
а) б) в)
Рисунок 7- Условное графическое обозначение триггеров:
а) RS-триггер; б) JK-триггер; в) синхронизированный D-триггер.
J-K-триггер
Он имеет два установочных входа: J - установка в 1, К - установка в ноль. Работа описывается таблицей переходов (табл. 22). Для него не существует запрещенных наборов входных сигналов.
Характеристическое уравнение после его преобразования и минимизации имеет вид:
Q(t+1)=d(Q(t), J(t), (t)) = KQvQJ.
Из этого соотношения следует, что JK-триггер является универсальным, имеющим два режима работы.
1) Режим записи и хранения информации, пришедшей по входу J, если триггер заранее был обнулен, поскольку работа обнуленного JK-триггера описывается уравнением RS-триггера. Данный режим называется RS-режимом.
2) Режим счета, который возникает при обеспечении одинаковых сигналов на обоих входах. Поскольку такой режим описывается уравнением, аналогичным уравнению Т-триггера, то его можно назвать Т-режимом. Условное графическое обозначение JK-триггера представлено на рис. 7.б.
D-триггер
Триггер имеет также 2 входа: информационный (D) и синхронизирующий (С). Функция на выходе триггера принимает значение информационного сигнала, если есть разрешающий сигнал по входу C (С=1). При отсутствии разрешающего сигнала (С=0), значение функции замораживается, т.е. остается равным содержимому триггера на предыдущем такте. Работа описывается таблицей переходов (табл. 23.).
Характеристическое уравнение триггера имеет вид:
Q(t+1 )=d(Q(t), D(t), (t))=
QvDC.Из чего следует, что D-триггер является переключателем накапливающего типа: он пропускает на выход либо сигнал, приходящий по условной шине D, либо сигнал, приходящий по условной шине Q(t), в зависимости от значения управляющего сигнала С. Условное графическое обозначение триггера представлено на рис. 7.в.
Элемент памяти (триггер) может быть задан одним из нескольких способов: сокращенной таблицей переходов, полной таблицей переходов, характеристическим уравнением, матрицей переходов. Рассмотрим последний способ.
Для каждого из 4-х возможных переходов элементарного автомата (00, 01, 10, 11) всегда найдется значение входного сигнала, равное 0 или 1, которое вызывает данный переход. Если элементарный автомат имеет 2 или более входов, то на некоторые переходы значения входных сигналов, действующих на одном или другом входе, оказываются несущественными.
Количество строк матрицы всегда равно 4 (по количеству возможных переходов), количество столбцов равно числу входных сигналов. Элемент матрицы bisk представляет собой значение входного сигнала xk под действием которого элементарный автомат перейдет из состояния i в состояние s. При этом bisk всегда равняется 0 или 1, или неопределен, если он не влияет на данный переход.
Матрица переходов элементарного автомата составляется по таблице переходов.
Рассмотрим пример построения матрицы переходов триггера.
Пусть триггер, в общем случае, задан сокращенной таблицей переходов (табл. 24.). Построить полную таблицу переходов триггера и матрицу переходов.
Полная таблица переходов триггера, построенная по сокращенной, представлена в таблице 25. По полной таблице переходов запишем комбинации входных сигналов, соответствующих всем возможным переходам (табл. 26.) Таким образом:
1. Для перехода "0-0" Х=0, Y может быть равен 0 или 1
2. Для перехода "0-1" Х=1, Y может быть равен 0 или 1
3. Для перехода "1-0" Х может быть равен 0 или 1, а Y=0.
4. Для перехода "1-1" Х может быть равен 0 или 1, а Y=1.
Тогда матрица переходов триггера запишется в виде:
0-0 | 0 | b1 |
0-1 | 1 | b2 |
1-0 | b3 | 0 |
1-1 | b4 | 1 |
где b1,b2,b3,b4 - произвольные сигналы (0 или 1).
Как правило, значение двух различных коэффициентов bi, и bs из одной строки матрицы являются зависимыми друг от друга и нахождение этой зависимости с ростом числа информационных входов усложняется. Установление точной взаимозависимости между входными переменными триггера является обязательным условием, обеспечивающим возможность максимального упрощения схем с памятью. В основе методики лежит таблица, в которой представлены возможные сочетания входных переменных и соответствующие им описания (табл. 27.).