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

Вводый курс цифровой электроники (К.Фрике, 2003)

.pdf
Скачиваний:
196
Добавлен:
12.08.2013
Размер:
8.2 Mб
Скачать

Глава 10. Цифровые счетчики

10.1.4. Временные характеристики асинхронных счетчиков

Асинхронные счетчики перестают вести себя идеально при величи­ нах тактового периода Тр, имеющих тот же порядок, что и время задержки tpd триггеров. На рис. 10.7 показаны выходные сигналы триггеров асинхронного счетчика с временем задержки вентиля, которое приблизительно соответствует половине тактового пери­ ода. Можно видеть, что между правильными результатами счета лежат дополнительные результаты счета.

^1

Рис. 10.5. Обратный счетчик по модулю 8, состоящий из трех JK-триг- геров

^1 4

 

 

Гп п

 

п г

П

П П

П

 

Qo 1i

 

 

 

 

 

1

1

1—1

1

1

1

е.,i

 

 

 

 

—' ^

Qi i i 1

 

 

1

 

1

 

 

 

 

t

1

 

 

:

 

• /

 

 

 

 

 

Рис. 10.6. Временная диаграмма обратного счетчика по модулю 8, пока­ занного на рис. 10.5

При несколько больших величинах времени задержки триггеров результат счета 100 больше не наступает. При этом считывание результатов счета также становится невозможным. Максимальная тактовая частота fmax асинхронного счетчика с п ступенями, все из которых имеют одинаковое время задержки вентиля tpd^ опреде­ ляется уравнением (10.1). Но реальные счетчики не достигают этих значений.

/шах = ^

(10.1)

10.2. Синхронные счетчики 251

Асинхронные счетчики выполнены относительно просто. Но изза их проблематичности при высоких частотах это преимущество отступает на второй план. Представленные ниже синхронные счет­ чики позволяют избежать этих проблем с помощью одного такта сдвига процесса переключения в последних ступенях.

^1 4

Qo

ч

000 ' 001

010 011 ^^QI 101

110 111 ^

Рис . 10.7. Временная диаграмма показанного на рис. 10.1 двоичного счет­ чика по модулю 8, имеющего конечное время задержки.

10.2. Синхронные счетчики

логическая схема

D,=Qr'

U е."

ро^д,""

So"

 

 

ID

ID

М

Н>С1

 

t>ci

 

CLK

Рис. 10.8. Принцип построения синхронного счетчика

Синхронный счетчик является синхронным драйвером, в котором вы­ полняются сформулированные в главе 8 временные условия. Рис. 10.8 иллюстрирует принцип построения синхронного счетчика с D-триг- герами. Могут также быть использованы RSили JK-триггеры. В синхронных счетчиках каждый регистр переключается почти од-

Глава 10. Цифровые

счетчики

повременно. В каждый тактовый период запомненные в регистрах состояния воспроизводятся из старых состояний в логической схеме.

Конструирование синхронного счетчика может быть произведе­ но описанными в главе 8 методами. В дальнейшем будут предста­ влены два примера.

10.2.1. 4-битовый двоичный счетчик

Постановка задачи.

Должен быть сконструирован 4-битовый двоичный счетчик, со­ держащий четыре JK-триггера. Он должен выдавать сигнал перено­ са С^ при переключении из положения 1111 в положение 0000. Снача­ ла сформируем таблицу последовательности состояний (табл. 10.1).

Таблица 10.1. Таблица последовательностей состояний 4-битового двоич­ ного счетчика.

\/^т

глт глт

глт

Q-+1 Q^+1

дГ"^' Qo^'.

L^m глт

глт

/^т дж+1 gm+ 1

QT'^' Qo^^'

V3

42

41

40

\Ч!з

42

41

 

40

 

 

! 0

0

 

0

0

0

0

0

1

1 1

0

0

 

0

1

0

0

1

0

0

 

0

1

0

0

1

0

1

0

0

 

1

1

0

1

0

0

0

 

1

0

0

0

1

1

1 1

0

1

 

0

1

0

1

1

0

0

 

1

1

0

1

0

0

1

0

 

1

1

1

1

0

0

0

1

0

 

0

0

1

0

1

1

1

0

 

0

1

1

0

1

0

1

0

 

1

0

1

1

0

1

1

0

 

1

1

1

1

0

0

 

1

1

0

0

1

1

1

1

1

1

0

 

1

1

1

1

0

 

1

1

1

1

0

0

0

1

1

1

1

 

0

0

0

0

Затем на основе таблицы последовательности состояний должны быть разработаны уравнения запуска для четырех JK-триггеров. Для этого вновь используем табл. 8.4, в которой зафиксированы урав­ нения запуска для обеспечения перехода от одного состояния к сле­ дующему состоянию. Получим четыре KB-диаграммы (рис. 10.9), в которые внесем пары значений функций JiKi.

Можно сформулировать следующие уравнения запуска JK-триг­ геров:

 

(10.2)

Ji — Ki — Q^

(10.3)

 

(10.4)

Jz = K^ = Qlo^QTQT

(10.5)

10.2. Синхронные счетчики 253

Уз^з

 

е."

 

J2K2

 

 

 

 

 

 

 

 

 

Qi"

 

 

 

 

 

 

 

 

 

 

 

fod'

Od

dO

dO

 

rbd •

dO

do

Od

 

Od

Od

dO

dO

 

Od

dO

dO

Od

 

Od

Id

dl

dO

\Qo'

Id

dl

dl

Id

[Qo"

 

 

ег Od Od dO dO

Qr I Od dO dO Od

Qi"

02"

JiKi

JQ^O

 

Qi"

or

 

rod

Od

Od

Od

 

rTd~

Id

Id

Id

 

Id

Id

Id

Id

 

dl

dl

dl

Id j

Qr \

dl

dl

dl

dl

Qr I

dl

dl

dl

Id 1 \QO^

do

dO

dO

do

Id

Id

Id

Id

 

 

 

 

62"

 

 

 

 

Qi"

 

 

Р и с . 10.9. KB-диаграмма для функций запуска JK-триггеров

 

Для того, чтобы выявить систематику, уравнения были выведе­ ны с помощью KB-диаграммы. Но эти уравнения можно также запи­ сать напрямую, если выявить из таблицы истинности, что триггер изменяет состояние, когда на выходах всех предшествующих триг­ геров находится 1.

В таблице перенос С4 не приведен. Он рассчитывается аналогич­ но на основе указанного выше рассуждения по формуле:

С4 = QfQ^QTQ'i

(10.6)

Структурная схема полного счетчика представлена на рис. 10.10

Глава 10. Цифровые счетчики

Qi

Q^

&l

ни

 

u

&

и

&

HlJ

 

 

 

•<j>Cl

 

<i>ci

 

 

 

-<|>C1

JlK

P-

IK

 

IK

 

JlK

 

 

|R

 

|R

 

-JR

RST^

CLK^

Рис. 10.10. Структурная схема синхронного 4-битового двоичного счетчика

10.2.2.Счетчик по модулю 6 с использованием кода Грея

Вкачестве примера рассмотрим конструирование счетчика по мо­ дулю 6 с использованием кода Грея. Необходимо сосчитать 6 чисел, передаваемых с помощью кода Грея, и при самом высоком результа­ те счета произвести перенос. Используем в счетчике три D-тригге- ра. Начнем с формирования таблицы последовательности состояний (табл. 10.2). Для этого сформируем циклический код Грея с 6 состо­ яниями. При самом высоком результате счета, равном 100, сигнал переноса СЦ будет равен 1.

На основе таблицы последовательности состояний можно соста­ вить KB-диаграммы для трех D-триггеров:

Таблица 10.2. Таблица последовательности состояний счетчика по модулю 6 с использованием кода Грея.

QT

QT

Q^

Q-+1

Qr+'

Q^S"^'

Сц

0

0

0

0

0

1

0

0

0

1

0

1

1

0

0

1

0

0

1

0

0

0

1

1

1

1

0

0

1

0

0

1

0

0

0

1

0

1

0

0

0

1

1

1

0

d

d

d

0

1

1

1

d

d

d

0

 

 

 

 

 

10.2. Синхронные счетчики 255

Из этого получим функции запуска D-триггеров:

 

 

 

 

 

D2 = Q r ^ = QT-Qo

 

 

 

(10.7)

 

 

 

 

 

 

 

 

 

 

(10.8)

 

 

 

 

 

 

 

 

 

 

(10.9)

Пг^Ог"

 

 

D,=Q'

 

 

 

 

Do=Qo'

 

 

Q2

 

 

 

Ог

 

 

 

 

QT

1

1

 

бо" 1 1

1

 

 

 

1

d

 

Q<r

d

d

1

d

<i

fio"

1

<i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

^

ег

Рис. 10.11.

• ^

.

• - *

 

er

er

KB-диаграммы для запуска D-триггеров счетчика по модулю 6 для сигналов с использованием кода Грея

А^ля функции D\ термы типа don't care всегда интерпретируют­ ся как 1, в то время как все другие термы don't care устанавлива­ ются равным 0. Поэтому при следующем такте счетчик выходит из неиспользуемых состояний в состояние 010. Перенос Сц может быть

задан без KB-диаграммы

 

Си = ^Q'S^^QTQ?

(10.10)

Схема счетчика показана на рис. 10.12. Диаграмма состоянии схемы с обоими неприменяемыми состояниями, приведенная на рис. 10.13, показывает, что схема из этих состояний и после включения начи­ нает цикл счета в следующем такте.

 

йо"

 

 

 

дГ

 

62"

Do,

в^^}

 

^1

Di

 

^.

 

ID

 

&

ID

 

ID

 

|-|>С1

-.Q"

 

 

р-п.е"

Н>С1

^Qi"

 

 

 

 

 

 

 

 

 

 

 

 

 

 

& Не*

CLK.

Рис. 10.12. Схема счетчика по модулю б с использованием кода Грея

256 Глава 10. Цифровые счетчики

Рис. 10.13. Диаграмма состояний счет­ чика по модулю 6, использу­ ющего код Грея

10.2.3.Синхронный 4-битовый реверсивный двоичный счетчик 74191

74191

CTRDIV16

 

G1

 

 

 

 

D/^U

M2[Down] 2(CT=0)Z6

 

 

MAX/MIN

 

M3[UP]

3(CT=15)Z6 tr

 

CLK

1,2-/1,3+

 

 

 

 

^LOAD .

C5

^'^'^

 

 

nRCO

 

 

 

xo

5D

[1]

 

 

Qo

^1

 

[2]

I

Qi

 

 

 

 

 

X2

 

[3]

 

 

 

 

 

 

 

 

^3

 

[4]

I

 

23

 

 

 

 

 

Рис. 10.14. Логический символ 4-битового реверсивного двоичного счет­ чика 74191

В ЭТОМ параграфе представлен 4-битовый реверсивный двоичный счетчик (forward-backword counter). Данная схема типична для это­ го типа счетчиков. Логический символ показан на рис. 10.14.

Обозначение CTRDIV16 (counter dividing by 16) показывает, что счетчик считает до 16. С помощью сигнала -^CTEN (counter enable) счетчик активируется. С помощью D/^И направление счета может быть переключено с прямого на обратное.

10.3. Упраэюнения

С появлением каждого нарастающего фронта тактового сигнала CLK счет продолжается. На логическом символе приведены значки 1, 2— и 1, 3-h. Это означает, что тактовый сигнал связан с контактом ^CTEN (на котором стоит GI) функцией И. Имеется переключение режима работы (зависимость от моды М), в соответствии с кото­ рым М2 определено д^ля счета в обратном направлении с входами DI-И. Кроме того, инвертированный тактовый сигнал привязан к контакту -^RCO через функцию И, что отмечено обозначением G4.

Выход MAX/MIN имеет различные функции при прямом счете (цифра 3) и обратном счете (цифра 2). Итак, вновь имеем зави­ симость от М. При обратном счете выход MAX/MIN переходит в состояние 1, если состояние счетчика соответствует О, это обозна­ чается через СТ == 0.

Соответственно при прямом счете максимальное состояние счет­ чика обозначается СТ = 15. Выход MAX/MIN соединен, кроме то­ го, Z-зависимостью (Z6) с выходом MAX/MIN, если одновременно тактовый сигнал CLK = О (из-за G4) и на контакте — CTEN — О (из-за 04). Это установлено последовательностью цифр 6, 1, 4 на контакте -^RCO^ которая определяет зависимость Z и обе зависимо­ сти G. Из этого следует, что -^RCO является синхронным выходом, в то время как выход MAX/MIN работает асинхронно. Счетчик мо­ жет быть загружен параллельно через входы (д:з,^2,^ь^о) = 1000, счетчик будет подсчитывать 7 ступеней до 1111. После этого он выдает сигнал переноса ^ЯСО = 0. Если связать этот выход с ->LOAD^ счетчик будет загружен до состояния 1000 и цикл начнется снова.

Очевидно, что счетчик может быть использован как делитель частоты на 16, так как он выдает при непрерывном счете через каждые 16 тактовых импульсов сигнал переноса -iRCO.

10.3. Упражнения

Задача 10.1. Сконструируйте асинхронный обратный счетчик, кото­ рый пробегает последовательность 000, 111, 110, 101, 100, 011, 000 и т.д.

Задача 10.2. Сконструируйте двоичный счетчик, который при У = 1 в прямом направлении просчитывает последовательность 000, 001, 010, 011, 100, 000. При F = О счетчик должен считывать ту же после­ довательность в обратном направлении. Используйте 3 D-триггера.

Задача 10.3. Как должен быть подключен модуль двоичного счетчика 74191, чтобы его можно было использовать как десятичный делитель.

ГЛАВА 11

СДВИГОВЫЕ

РЕГИСТРЫ

Сдвиговые регистры состоят из цепочки триггеров, в которых пе­ редача информации осуществляется как в «пожарной цепочке» ПЗС (bucket-brigade). Они могут быть построены, например, из D-триг- геров или из JK-триггеров. На рис. 11.1 показан пример регистра с четырьмя JK-триггерами. Для того, чтобы информация передава­ лась одновременно по всей цепочке, применяются триггеры с упра­ влением фронтом.

 

 

 

Qi

 

 

02

 

Q3

 

Q4

Ess

J\

и

Ji

IJ

 

и

JA

IJ

As

 

/^>C1

 

>C1

 

 

>C1

 

>C1

 

 

 

IK

 

 

 

IK

!p -

 

Kx

IK

P Кг

p

Къ

IK

p KA

CLK

(1

 

\

 

(

 

 

 

 

Рис . 11.1. Цепочка сдвигового регистра из четырех JK-триггеров.

Представленный сдвиговый регистр имеет последовательный вход Es и последовательный выход Ag. Параллельные выходы обозначе­ ны как Qi, Функция этого сдвигового регистра со сдвигом вправо описывается следующими уравнениями:

gm+l ^

(11Д)

gm+1 ^

gm ^ прИ О < i < 4

(11.2)

ЛГ-Qr

(11.3)

Сдвиговые регистры находят универсальное применение в цен­ тральных процессорах (CPU) компьютеров при проведении опера­ ций умножения и деления. Они также применяются ^[^ля последова­ тельно-параллельного и параллельно-последовательного преобразо­ ваний кодов. Кроме того, они служат как ЗУ на основе «пожарных цепочек» (first-in first-out, FIFO, обратного магазинного типа).

11.1. Временные характеристики сдвиговых регистров

Сдвиговые регистры могут обладать следующими свойствами:

способностью переключения между сдвигом влево и сдвигом вправо

наличием параллельных входов для одновременной установки триггеров

наличием параллельных выходов

наличием последовательных входов и выходов

11.1.Временные характеристики сдвиговых регистров

Втом случае, если применяется триггер с малым расстоянием меж­ ду действующим интервалом и интервалом переброса, проблематич­ ным становится появление тактового фазового сдвига (clock skew). Подобные регистры образуются, в частности, при использовании буферных триггеров. Фазовый тактовый сдвиг может привести к тому, что при одном тактовом импульсе информация передается на многие ступени либо теряется. Это является следствием перекры­ тия действующего интервала и интервала переброса из-за влияния тактового фазового сдвига.

Рассмотрим этот случай на примере регистра, состоящего из двух управляемых одним фронтом буферных D-триггеров (рис. 11.2). Вто­ рой D-триггер будет запускаться с тактовым фазовым сдвигом to.

Es

Dx

IFi

\QxJ>i

As

 

 

IJJ

 

 

 

 

>C1

p-

 

 

 

 

 

("тк

,

tA

 

 

Р и с . 11.2. Сдвиговый

регистр

с D-триггерами

управляемыми передним

фронтом.

 

 

 

На рис. 11.3 а показаны соотношения без тактового сдвига (^о = 0)- Действующие интервалы и интервалы переброса обоих триггеров занимают одни и те же интервалы времени. Как следует из рисунка, информация правильно передается от одного триггера к следующему.

На рис. 11.3 b тактовый сигнал второго триггера задержан от­ носительно первого триггера на ^о- Вследствие этого действующий