Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

КЛЕВО_FPGA

.pdf
Скачиваний:
39
Добавлен:
14.04.2015
Размер:
8.21 Mб
Скачать

Глава 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/г

-^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 у кя"^ \/--ся""

'