Понятие последовательностного автомата
Последовательностные цифровые устройства часто называют последовательностными схемами, последовательностными автоматами, дискретными автоматами с памятью, многотактными автоматами.
Кроме комбинационных устройств, рассмотренных в предыдущей главе, существует класс цифровых устройств, в которых при одинаковых воздействиях на входе, на выходе автомата могут возникать различные выходные состояния. Состояние выхода такого устройства зависит не только от того, какие сигналы присутствуют на его входах в данный момент времени, но и от того, какие последовательности сигналов поступали на входы устройства в предшествующие моменты времени, т.е. как говорят, автомат помнит свою предысторию и хранит ее в памяти. Поэтому такие устройства называют последовательностными или многотактными автоматами.
Для описания последовательностного автомата с памятью, помимо состояний входов X(t) и выходов Y(t), необходимо также знать состояние памяти автомата, как говорят, его внутреннее состояние S(t).
В общем виде, последовательностный автомат рассматривается состоящим из двух частей: комбинационного устройства (КУ) и памяти, состоящей из элементов памяти (ЭП) (рис. 3.1).
В качестве элементов памяти могут быть применены как однобитовые элементы памяти (различные типы триггеров), так и многобитовые (многоразрядные) цепочки триггеров.
Функционирование (т.е. изменение состояния устройства) многотактного автомата происходит в дискретные моменты времени, ход которого обозначается натуральными числами t = 1, 2, 3 и т.д. В каждый момент дискретного времени t автомат находится в определенном состоянии S(t), воспринимает через входы соответствующую данному моменту комбинацию входных переменных X(t), выдает на выходах некоторую функцию выхода Y(t), определяемую как
Y(t) = f (S(t),X(t)),
и переключается в новое состояние S(t+1), которое определяется функцией переходов jкак
S(t+1)= j ( S(t),X(t)).
Закон функционирования последовательностных автоматов может задаваться в виде уравнений, таблиц и графов. Под законом функционирования понимается совокупность правил, описывающих последовательность переключения состояний автомата и последовательность выходных сигналов в зависимости от последовательности поступления входных сигналов.
ЭП часто реализуется на основе бистабильных ячеек (БЯ). ЭП бывают: динамические, статические и квазидинамические. Наибольшее распространение получили первых два вида: статические и динамические. Статические ЭП реа- лизуются на БЯ. Динамические ЭП строятся, используя свойство хранения заряда между затвором и истоком полевых транзисторов МДП структуры.
БЯ - является простейшим типом триггера, реализованного с помощью элементов базиса И - НЕ или ИЛИ - НЕ с соответствующими обратными связями и позволяет хранить один бит цифровой информации (бит - единица цифровой информации, соответствующая одной логической “1” или логическому “0”).
Триггер - это последовательностная схема с двумя состояниями, каждое из которых при опреленных условиях на входах поддерживается постоянным (т.е. стабильным). Каждому из этих состояний ставится в соответствие логическое значение, которое “хранит” триггер (если на выходе триггера высокий уровень напряжения - “1” и “0” - в противном случае). Таким образом, в последовательностной схеме для представления значений каждой переменной, которую нужно хранить для использования в настоящем или в будущем, следует использовать отдельный триггер. Совокупное состояние последовательностной схемы, запоминающее устройство которой реализовано на триггерах, представляет собой просто комбинацию состояний этих триггеров.
Вообще говоря, у триггера должна быть по крайней мере одна выходная линия, представляющая логическое значение, соответствующее состоянию триггера. Когда на выходной линии логическая 1, говорят, что триггер установлен, в противном случае говорят, что триггер сброшен. Триггер имеет несколько входных линий, сигналы на которых (вместе с текущим состоянием триггера) определяют следующее состояние триггера. От функций входных линий зависит тип триггера.
Простейшим триггером является RS - триггер. RS - триггер имеет два входа и два выхода. Входы и выходы триггера имеют свои обозначения. Один из входов триггера называется установочным входом и обозначается буквой S(от английского set - установить), а другой - входом сброса и обозначается буквойR( от reset - сбросить). Триггер (рис. 3.2) имеет два симметричных выхода. На одном выходе (условно называемом прямым выходом) сигнал представляется без отрицания (выход Q), а на другом - с отрицанием (`Q - инверсный выход).
По способу подачи переключающих сигналов (в зависимости от комбинации входных сигналов) триггеры делятся на RS, MS, D, JK, T - триггеры.
Рис. .3.2. Графическое обозначение
RS- триггера
Триггеры бывают переключающимися уровнем и фронтом тактирующего сигнала (импульса). Несмотря на большое разнообразие триггеров, практически все триггеры строятся на базе RS -триггеров.
RS - триггер
Важным методом, используемым для описания функционирования RS- триггера, является метод таблиц состояний (таблиц переходов). Таблица состояний (рис. 3.3.а) RS-триггера в сокращенной форме (эту таблицу называют также управляющей таблицей, таблицей функционирования) содержит два входных сигнала (сигналы R и S) и один выходной сигнал Q (функция). Хотя триггеры имеют два выхода - один прямой Q, а другой - инверсный `Q,в описании триггера и в таблице состояний указывают лишь состояние прямого выхода Q.
Из таблицы состояний триггера видно, что при подаче на вход R уровня лог. «1» триггер принимает состояние логического «0», а при подаче управляющего сигнала «1» на вход S - состояние «1». Следует отметить также, что если до подачи управляющего сигнала, например, на вход R, триггер находился в состоянии логического «0», его состояние не изменится и после подачи сигнала «1» на вход R. Если на обоих входах триггера имеются уровни логического «0»- это состояние соответствует режиму хранения и триггер сохраняет предыдущее состояние. В таблице это состояние обозначено условно Q0. При подаче на входы R и S одновременно уровня «1» триггер будет находиться в неопределенном (или неправильном) состоянии, поэтому такое сочетание сигналов R и S называется запрещенной комбинацией управляющих сигналов и в таблице состояний обозначается буквойa.
Сокращенная таблица состояний триггера отражает лишь динамику изменения состояния триггера и не учитывает свойство триггера запоминать единицу информации. Полная таблица состояний триггера должна учитывать влияние (на процесс управления) значения предыдущего состояния триггера Q0. Причем Q0представляется как входная переменная. Полная таблица состояний RS -триггера приведена на рис. 3.3, б.
Таблицу состояний строят так же, как и таблицу истинности.
Анализ таблицы показывает, что только в ситуациях, описываемых строками 4 и 5, происходит изменение состояния триггера.
Рис. 3.3. RS - триггер: а) - упрощенная таблица состояний; б) полная таблица
переходов; в) Карта Карно; г) RS - триггер, управляемый сигналом низкого
уровня ( триггер); д) RS - триггер на элементах базиса ИЛИ-НЕ
Рассмотрим строку 4. После того, как подается сигнал на вход R, триггер сбрасывается, т.е. переходит из состояния “1” в состояние “0”.
Рассмотрим строку 5. Триггер устанавливается, т.е. переходит из состояния “0” в состояние “1”, в результате подачи сигнала “1” на вход S. Для строк 1 и 2 сигналы S =01*и R=0, и, следовательно, никаких изменений в состоянии триггера не происходит. Для строки 3 сигнал R=1, и этот сигнал в нормальных условиях должен сбросить триггер, но так как триггер уже “сброшен” и Q = 0, то сигнал R = 1 не изменяет его состояние.
Аналогично для строки 6 сигнал S = 1, и этот сигнал в обычных условиях будет устанавливать триггер в “1”, но Q = 1, и, следовательно, состояние триггера останется без изменений до поступления следующего сигнала R.
Особенность RS-триггера заключается в том, что при подаче одновременно на входы R и S сигнала, соответствующего логической 1, состояние триггера становится неопределенным: на обоих выходах Q и`Q установится уровень “1”, а после снятия со входов управляющих сигналов, в силу случайных причин, триггер может установиться в состояние “0” либо “1”. Очевидно, чтодля нормальной работы триггера необходимо исключить указанное сочетание входных сигналов, приводящее к неопределенному состоянию, что можно осуществить, предусмотрев выполнения запрещающего условия R×S=0.
Из таблицы состояний может быть получено уравнение, описывающее поведение триггера. Это уравнение носит название характеристического уравнениятриггера. Оно показывает, как меняется состояние триггера в зависимости от текущих значений состояния и входов.
Для получения упрощенного аналитического выражения, описывающего поведение RS-триггера, построим карту Карно и проведем соответствующие контуры (рис. 3.3, в). Полученное характеристическое уравнение триггера имеет вид
.
Применив закон де Моргана преобразуем полученные выражение в базис И-НЕ:
.
Схема RS- триггера, реализованного в выбранном базисе, приведена на рис. 3.3, г.
Из формулы RS - триггера видно, что при реализации его в базисе И-НЕ, триггер управляется сигналами низкого уровня, т.е. уровня лог. "0" (если не предусмотрены инверторы). Для приведения поведения триггера, выполненного на элементах И-HE, в соответствие с таблицей состояний сигналы S и R необходимо инвертировать.
Из анализа схемы рис. 3.3, г очевидно, что простой RS триггер можно сконструировать, соединив “крест-накрест” два элемента И-НЕ.
Входные линии триггера обозначены как и , поскольку триггер устанавливается при =0 и сбрасывается при =0. Такой триггер иногда называют RS-триггер с инверсными входами или конъюнктивной бистабильной ячейкой.
Схема RS-триггера, реализовнная в базисе И-HЕ в соответствии с таблицей состояний, приведена на рис. 3.3, д. Для построения RS -триггера на элементах ИЛИ-НЕ приведем формулу триггера в базис ИЛИ-НЕ
.
Схема RS -триггера, выполненная на элементах базиса ИЛИ-HЕ, приведена на рис. 3.4, а. Временные диаграммы, поясняющие работу RS-триггера, приведены на рис. 3.4, б.
Из временных диаграмм (рис. 3.4, б) следует, что рассмотренные выше RS-триггеры опрокидываются, т.е. управляются сигналами R и S, в любой момент времени. В тех случаях, когда длительности управляющих сигналов не синхронизированы (не согласованы), триггер может находиться в неопределенном состоянии (интервалы времени t4, t5), и поэтому такие триггеры называют асинхронными.
Триггер, построенный на базе элементов ИЛИ-НЕ, называют также дизьюнктивной бистабильной ячейкой. Бистабильные ячейки, помимо самостоятельного применения, входят в качестве составного узла в триггеры других типов.
Синхронный RS -триггер.Синхронные триггеры снабжаются дополнительным входом, по которому поступает синхронизирующий (тактирующий) сигнал. При этом изменение состояния триггера происходит (при наличии управляющего сигнала) только в те моменты времени, когда на специальный синхровход триггера поступает тактирующий импульс (рис 3.5, а). Синхронный RS-триггер строится в соответствии с рис. 3.5, б, а его условное изображение на принципиальных и функциональных схемах приведено на рис. 3.5, в. Синхронизирующий вход обозначается буквой С.
Входные сигналы S и R являются информационными, а на входе С- синхронизирующими, по ним происходит переключение триггера. Следует отметить, что для надежной работы триггера необходимо, чтобы длительность переключающего сигнала (синхронизирующего сигнала) на входеСбыла не меньше времени переключения триггера. Временем переключения (срабатывания, установки) триггера называется время, которое проходит от момента изменения входных сигналов до соответствующего изменения состояния выходов и определяющееся задержками распространения сигнала логическими элементами, входящими в состав триггера.
Двухступенчатый RS - триггер.Рассмотренные схемы RS-триггеров являются одноступенчатыми. Применение одноступенчатых RS-триггеров в качестве самостоятельных запоминающих элементов ограничено. Это связано с неустойчивой работой последовательностной схемы (цифрового автомата), память которой выполнена на одноступенчатых RS-триггерах. Сигналы переключения триггера S(t), R(t) формируются в цифровом автомате комбинационной схемой, в их формировании участвуют, наряду с внешними логическими сигналами, сигналы Q(t) и (t). Переключение одноступенчатого триггера под действием сигналов S(t) и R(t) вызывает изменение значений сигналов Q(t) и (t), а их изменение может привести к изменениям сигналов S(t) или R(t) в том же такте времени t и, как следствие, к ложному срабатыванию триггера. Для устойчивой работы триггера необходимо, чтобы сигналы Q(t) и (t) изменялись только после прекращения действия входного сигнала S(t) или R(t). Это требование выполняется в двухступенчатых триггерах (MS-триггерах). Базовыми схемами для построения двухступенчатых триггеров являются одноступенчатые RS-триггеры.
Двухступенчатый триггер состоит из двух секций (ступеней), соединенных каскадно, как показано на рис. 3.6 а, причем, каждая секция содержит по синхронному RS-триггеру. Первая секция, ведущая или М-секция (М происходит от английского MASTER) принимает информацию со входных линий S и R. Состояние выходов ведущей секции подается на вторую секцию, ведомую, или S-секцию (S происходит от английского SLAVE).
Для ведущего триггера используется обычная синхронизация, в то время как для ведомого триггера импульс синхронизации инвертируется. Изменение состояния выхода ведущего триггера будет происходить в момент появления положительного импульса синхронизации, и эти изменения будут переданы на входы ведомого триггера. Однако, никакие изменения на выходе ведомого триггера не будут происходить до тех пор, пока не появится положительный сигнал инвертированного импульса синхронизации, т.е. отрицательный (задний фронт) фронт исходного синхроимпульса. Следовательно, изменения на выходах Q и не произойдет до тех пор, пока не завершится импульс синхронизации. На рис. 3.6, б показаны временные диаграммы работы триггера.
На функциональных схемах двухступенчатый триггер изображается в соответствии с рис. 3.6, в. Символ ТТ в поле условного обозначения означает , что триггер двухступенчатый.