КЛЕВО_FPGA
.pdfГлава 6. Логические схемы
Задача 6.4. На рисунке показана цифровал схема, в которой может иметь место «структурный риск». Время задержки одного вентиля (И, ИЛИ, НЕ-ИЛИ) всегда равно to.
а) Задайте булеву функцию у = /(жз,а^2?^ь^о)- б) Внесите функцию в диаграмму Карнр-Вейча.
в) Промаркируйте на диаграмме Карно-Вейча позиции, для ко торых возможен риск срыва.
г) Предложите схему с аналогичной функцией, в которой не про является «структурный риск».
ГЛАВА 7
АСИНХРОННЫЕ
ТРИГГЕРЫ
Схему асинхронного триггера можно представить как схему, полу ченную из логической схемы, у которой, по крайней мере, один из выходов соединен со входом. В дальнейшем эта логическая схема обозначается как SN1. Триггеры называют также последовательпостными схемами или конечными автоматами. Поведение тригге ра зависит как от значений входных переменных в данной момент времени, так и от входных переменных х^, в предыдущие момен ты времени. Поэтому он может хранить информацию. Хранящаяся информация называется параметрами состояния, здесь они обозна чаются через Zi.
^ |
»+1 |
логическая |
|
-N |
схема |
SN1 |
£"
элемент Y^ задержки
Р и с . 7.1. Асинхронный триггер: логическая схема с обратной связью, ис пользующая входной вектор X и вектор обратной связи Z, соот ветствующий моментам времени m и m -h 1.
J\AR развязки входов и выходов асинхронных триггеров требу ется введение элемента задержки в цепь обратной связи. Триггеры, в которых тактовый сигнал управляет развязанными буферными накопителями в цепи обратной связи, называют синхронными триг герами. Вследствие задержки между входом и выходом рациональ ным является рассмотрение параметров состояния в два различных момента времени обозначенных индексами m и m + 1. Рассматри ваться должны только входные сигналы ж^, которые изменяют свои значения в дискретные моменты времени. Интервал между двумя изменениями входного сигнала должен быть настолько большим, чтобы в промежутке на всех соединительных линиях установились фиксированные значения сигналов. Это называют «работой в основ ном режиме».
Глава 7. Асинхронные триггеры
7.1. Принципиальные особенности структуры триггеров.
В триггер всегда входит логическая схема SN1, которая имеет цепь обратной связи с элементом, вносящим задержку. Но триггер имеет также выходы, сигналы на которых могут быть выявлены двумя различными способами во второй логической схеме SN2 (рис. 7.2):
• В автомате Мура (Moore's Automaton) входные переменные у вычисляются только на основе параметров состояния Z ^
• В случае же автомата Мили (Mealy's Automaton), напротив, в составе логической схемы SN2 применяются не только па раметры состояния Z^, но также и входные переменные ж, служащие входными величинами.
логическая
схема
|
SN1 |
|
|
|
элемент |
И-1 |
|
|
задержки |
|
|
|
логическая |
|
|
^ |
схема |
i> |
|
SN2 |
|||
|
|
а)
Рис . 7.2. а) Автомат Мура; в) Автомат Мили.
|
логическая |
z^' |
|
|
схема |
||
-Ч |
SN1 |
|
|
|
|
||
|
элемент |
]/LA |
|
|
задержки |
|
|
-И |
логическая |
|
|
схема |
|
||
-Ч |
SN2 |
^ |
|
fiix^ |
|||
|
b)
7.2.Анализ асинхронных триггеров.
вкачестве примера проведен анализ триггера НЕ-ИЛИ (NOR). Он представляет собой идеальную логическую схему с обратной связью (рис. 7.3). Сокращения 5 и i?, которыми обозначаются входные сиг налы, означают «установка» (set) и «возврат» (reset). Здесь один вы ход обозначен через Qi, часто также обозначающийся как Q, Вто рой выход Q2 может быть также обозначен как инвертирующий выход — Q. Но при этом второму выходу инвертирующая функция придается не всегда, как это будет показано ниже.
1.2. Анализ асинхронных триггеров.
а (-0
ei(0
Рис. 7.3. Триггер NOR (в скобках другие обычно применяемые обозначения выходов).
Разобраться в работе данной схемы можно на основе опыта, при обретенного ранее при анализе логических схем.
1.Начнем со случая S = 1, R = 0. В этом случае сигнал на вы ходе верхнего NOR-вентиля имеет значение Q2 = 0. Сигналы на обоих входах нижнего NOR-вентиля имеют значения О, так что Qi = 1. Установка триггера произведена. Внесем резуль тат в таблицу истинности табл. 7.1, где показаны две возмож ные формы представления таблицы истинности.
2.В противоположном случае, когда 5 = О, i? = 1, вследствие
симметрии устанавливаются значения на выходах Qi = О и Q2 = 1- Триггер установлен в исходное состояние.
3.Теперь рассмотрим вариант, когда 5 = О, Л = О, В этом случае поведение триггера будет определяться предыдущим состоя нием.
Если имеет место выходной сигнал Qi == 1, то входной сигнал верхнего вентиля равен 1 и сохраняется Q2 = 0. Сохраняется также Qi = 1, так как сигналы на обоих входах этого венти ля имеют значение 0. Данное состояние стабильно и поэтому удерживается.
Напротив, если на выходе имеем Q2 = 1^ из соображений сим метрии получим, что удерживаются Qi = О и Q2 = I. Поэто му в табл. 7.1 вносится информация о том, что предыдущее
состояние запоминается {Q^ = Q^^^). Указанные в табл. 7.1 формы представления различаются значениями, которые име ют выходные сигналы Q и —Q в моменты времени ш и ш + 1.
4.В соответствии с оставшимся вариантом S = 1и R = 1.В этом случае оба выхода устанавливаются на 0. Этот вариант ис ключается, так как выходы не будут взаимно инверсными.
96 Глава |
7. Асинхронные |
триггеры |
|
|
|
|
|||
Таблица 7.1. Две формы |
таблицы |
истинности |
вентиля НЕ-ИЛИ на |
||||||
|
|
/25-триггерах. |
|
|
|
|
|
||
S |
R |
Q"^+i |
-iQ"^+i |
s |
R |
Q"^ |
Q"^-^^ |
||
0 |
0 |
Q"' |
- Q"^ |
0 |
0 |
0 |
0 |
||
0 |
0 |
1 |
1 |
||||||
0 |
1 |
0 |
1 |
|
|||||
|
0 |
1 |
0 |
0 |
|||||
1 |
0 |
1 |
0 |
|
|||||
|
0 |
1 |
1 |
0 |
|||||
1 |
1 |
- |
- |
|
|||||
|
1 |
0 |
0 |
1 |
|||||
|
|
|
|
|
|||||
|
|
|
|
|
1 |
0 |
1 |
1 |
|
|
|
|
|
|
1 |
1 |
0 |
- |
|
|
|
|
|
|
1 |
1 |
1 |
- |
|
7.3. Систематический анализ.
Систематический анализ может быть проведен на основе составле ния булевых функций /i и /2 (см. рис. 7.2) для логических схем SN1 и SN2. Перечертим структурную схему в соответствии с рис. 7.4 и введем суммарное время задержки ti.
Z\
S |
>1 |
т+\ |
|
||
Я |
|
2\ |
|
|
Рис. 7.4. а) Логическая схема с обратной связью (НЕ-ИЛИ вентиль на осно ве Т^^-триггера).
С ПОМОЩЬЮ передаточной функции выходной сигнал идеальной логической схемы SN1 описывается как функция входных величин
i t , D , ZJ-^
z•^+^ = ^ (-Л ( 5 V z ^ ) V Л) = -^RS V -^Rz^ |
(7.1) |
Выходные функции описывают поведение логической схемы SN2^ которая частично совпадает с логической схемой SNl^ поскольку применен верхний вентиль НЕ-ИЛИ:
|
|
(7.2) |
Q"2 |
. (5 V z"^) = ^S-^zf |
(7.3) |
l.S. Систематический анализ.
На основании этих уравнений могут быть составлены табл. 7.1. Но уравнения состояний могут быть также внесены в, так называ емую, таблицу последовательности состояний (табл. 7.2).
Таблица 7.2. Диаграмма последовательности состояний в форме диаграм мы Карно-Вейча.
|
|
|
^1 |
|
|
V I |
5 Ч?2 |
|
^1 |
-п5-пЯ |
5-пД |
5Д |
-п5/г |
-^S-^R |
S-^R |
SR |
-n5i? |
0 |
© |
1 |
® |
© |
01 |
00 |
00 |
01 |
1 |
® |
® |
0 |
0 |
10 |
10 |
10 |
10 |
В первую диаграмму вносится новое состояние Z'^'^ . Эта вели чина влияет на изменение ее значения на выходе за счет обратной связи с входом. Во вторую диаграмму внесены входные величины, в данном случае Q'^ и Q'^^,
На следующем шаге в таблице последовательности состояний стабильные состояния обозначаются кружками. Они характеризу ются уравнением Z'^ = Z'^^^. В этих случаях система после уста новки выходного состояния удерживается в стабильном состоянии. В качестве примера можно рассмотреть входную комбинацию i? = О, S — 1 при одновременном соблюдении равенства Z'^^^ = 1.
Другой формой отображения является диаграмма состояний на рис. 7.5. В диаграмме состояний внутренние состояния, в данном случае Z]^~^ , обозначены кружками. Возможные переходы отмече ны стрелками. Необходимые ^^ля них условия, определяемые вход ными переменными, отмечены на стрелках. Наклонной чертой от них отделены значения входных переменных. Из данной диаграм мы, например, можно увидеть, что возможен переход от Z ^ = О к Zf^ — 1 при i? = О, 5 = 1, что так называемый, рефлексивный переход имеет место при Zj^ = О, при R = S = I; состояние Z^^ = 1 является рефлексивным для —R независимо от S,
^/01 ос -^5/00 — — у - > ^ -ЯПО
RS/00
R/IO
Рис . 7.5. Диаграмма состояний; в кружках стоят значения ZJ^, после косой черты QiQ2-
Глава 7. Асинхронные триггеры
Представленный в этом параграфе систематический анализ дает те же результаты, что и анализ в параграфе 7.2, проведенный на основе простых наблюдений.
7.4. Анализ с учетом задержки вентилей
Ниже будет показано, что вышеприведенный анализ слишком упро- п];ен, поскольку он не полностью учитывает задержку сигнала в вен тилях. Этот анализ не отражает некоторые из возникаюш;их про блем. Продемонстрируем на основе НЕ-ИЛИ триггера, как можно проанализировать работу схемы, в которой оба NOR-вентиля име ют конечное время задержки (рис. 7.6).
о |
|
>1 |
Z2 |
|
Z2 |
|
<3 |
|
tl |
I |
or |
||
|
1« • — |
|
<J |
|||
|
|
J |
|
|||
|
|
Г=:^<С^ |
|
|
||
7? |
с |
>1 |
/1 |
^ 1 |
Q' |
|
|
• |
|
, |
|
|
|
i\ |
|
|
|
|
Z\ |
|
Рис. 7.6. Логическая схема с обратной связью (^-S-NOR-xpHrrep), учиты вающая время задержки вентилей ti и t2.
Можно видеть, что теперь имеются две переменных, характери зующие состояния. Для них можно определить по рис. 7.6 переда точные функции:
(7.4)
(7.5)
и выходные функции:
(7.6)
(7.7)
Из уравнений состояния вновь можно получить KV-диаграмму. Сигналы Zj^"^ , Z^^ задаются как функции величин на входе i?, 5, Z]^, Z'2' (табл. 7.3). Стабильные состояния отмечены кружками.
В тех случаях, когда Z]^"^^ ф Zp или Z^"^^ ф Z'^', следует пе реход к другой комбинации входных сигналов. Эти нестабильные входные состояния выделены подчеркиванием.
Если ^щя одной комбинации входных переменных подчеркнуты обе переменные, характеризующие состояния, то изменяются обе
Ц. Анализ с учетом задержки вентилей
величины. При этом говорят о двухкомпонентном переходе. В этом случае решающим моментом является соотношение задержек. Пе реход с более короткой задержкой вентиля первым воздействует на выход и вентиля это определяет следуюп1;ее состояние.
Таблица 7.3. Таблица последовательностей состояний в форме iiTF-диаг раммы.
|
п'т-\-11I ^т-\-\ |
|
|
|
ут пгт |
-п/г-5 |
-^RS |
RS |
R^S |
|
||||
00 |
п |
01 |
(00) |
10 |
01 |
® |
© |
00 |
00 |
11 |
00 |
00 |
00 |
00 |
10 |
® |
00 |
00 |
® |
Теперь в соответствии с табл. 7.3 составим диаграмму состоя ний. Поясним это на примере. Допустим, что триггер с входны ми переменными i? = 1, 5 = 1 находится в стабильном состоянии ^т2^771 _ QQ g табл. 7.3 находим в первой строке стабильное состо яние
^m+i^m+i ^ QQ Переключим ВХОДЫ в состояние R = 0^ S = 0. Состояния, которые могут установиться, следует искать в первом столбце таблицы. Поскольку характеризующие состояние перемен ные Z'2'Z'i^ — 00 вначале остаются без изменения, мы должны про вести считывание в первой строке таблице под новой комбинацией входных переменных новых переменных, характеризующих состоя ния. Находим Z^"^^Z]^~^^ = 11. Это означает, что обе, характеризу ющие состояние, переменные имеют тенденцию к изменению. При этом возможны три варианта:
1. Если время задержки у первого вентиля меньше (t\ < ^2)7 то
|
триггер переходит в стабильное состояние Z^~^^Z]^~^^ = 01. |
||
2. |
Если ^1 > ^2, то триггер переходит в стабильное |
состояние |
|
3. |
Если ti = t2^ то переход переходит в направлении Z^^ |
Z^'^ |
= 1 1 . |
|
Опять имеет место двухкомпонентный переход. Следователь |
||
|
но, триггер опять переключится обратно к Z^'^^Z^'^^ |
= 00, |
|
после чего процесс будет повторяться периодически.
Таким образом, мы видим, что поведение триггеров зависит от времени задержки вентилей. Рассматриваемый процесс называют «гонка» или «race», причем в зависимости от того, различны или одинаковы конечные состояния, различают критичные и некритич ные гонки. В рассматриваемом случае «гонка», переходящая при пе реключении от RS = 11 к RS = 00, представляет собой критичный
Глава 7. Асинхронные |
триггеры |
вариант, так как при этом триггер может вести себя тремя различ ными способами.
Вьппесказанное поясняется на рис. 7.7 а. Переходы состояний при смене — 11 (в состоянии Z'2'Z'^ — 00) на RS = 00 дают конеч ный результат в соответствии с временами задержки вентилей. Это единственный случай, когда в iiS'-NOR-Tpnrrepe имеет место «кри тичная гонка». Ее можно избежать, если исключить состояния 11.
tiXi
Л=/2 -®
h<t2
а)
Р и с . 7.7. а) |
Переходы состояний /?5'-К0К-триггера |
для |
случая замены |
|
RS |
= 11 (в состоянии Z^Z"^ |
= 00) на RS |
= |
00, разделенные |
по направлениям в соответствии с временами задержек вентилей. |
||||
Ь) Диаграмма состояний для |
всех переходов. |
|
|
|
На рис. 7.7 b показана диаграмма состояний со всеми возможны ми переходами. Устанавливаем, что состояние 00 лежит в центре и поэтому его необходимо проходить при каждом переходе. Если за претить входную комбинацию RS = 11, то в этом случае триггер не сможет стабильно оставаться в состоянии 00 и тогда это состояние будет быстро проходиться. Больше «критичных гонок» не имеется, поскольку приходят только однокомпонентные переходы.
Если триггер находится в состоянии 10, он стабилен при S = 0. В этом случае триггер возвращен в исходное состояние. Если затем изменить состояния входов на SR = 10, то триггер перейдет через состояние 00 в состояние 01, не оставаясь в состоянии 00.
Просуммировав выше сказанное, можно установить, что:
1.Состояние R = S = 1 у jR^-NOR-Tpnrrepa приводит к появле нию некомплиментарных выходных сигналов.
2.Если за запреш;енным состоянием RS = 11 следует состоя ние RS = 00, то в результате в соответствие с рис. 7.7 может
7.5, Элементы ЗУ
иметь место поведение трех видов: колебания между 00 и 11, стабильность состояний 10 и 01. Это единственная «критич ная гонка», которая может произойти в триггере. Ее можно избежать, если за запрещенным состоянием сразу не следует состояние RS — 00.
3.В асинхронных схемах возникают проблемы, если переходные функции не реализуются без рисков. Тогда на входах логиче ской схемы SN1 могут появиться короткие помехи, приводя щие к ложному или непредсказуемому поведению триггеров.
4.Двухкомпонентных переходов переменных, характеризующих состояние, следует по возможности избегать, поскольку суще ствует возможность появления «гонки».
7.5.Элементы ЗУ
впоследнем параграфе было показано, что применение асинхрон ных триггеров проблематично. Поэтому применяются только те схемы, поведение которых хорошо известно. К ним относятся триг геры (flip-flop, сокращенно FF), которые кратко описаны в данном параграфе. Все схемы можно реализовать в интегральном виде.
7.5.1.Дд^-триггер
Д^-триггер может быть сконструирован из NANDили NOR-венти- лей. Дб'-триггер с NAND-вентилями можно также рассматривать как работающий с отрицательной логикой.
Проблематичным р^ля Д5-триггеров является то, что появление даже коротких импульсов помехи на входах R и S ведет к ошибоч ным установке и возврату в исходное состояние триггера. Поэто му при работе с Дй'-триггерами, управляемыми тактовым уровнем, применяют дополнительно тактовый сигнал, ограничивающий вре мя, в течение которого входы активны.
7.5.2. Д^-триггер с тактовым входом
RS-триггер с тактовым входом обозначают также как Д^-защелку (RS-latch) или триггер в функции «промежуточное ЗУ» (рис. 7.9). Хотя этот триггер составлен из NAND-вентилей, он работает с по ложительной логикой. Передаточную функцию для управляемого со стояниями Д^-триггера можно определить из структурной схемы 7.9.
gm+i ^^ (^ (5С) ь Ь [RC) ЯП)) = sc^b |
(RC) ЯП = |
=sc у кя"^ \/--ся"" |
' |
