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

КЛЕВО_FPGA

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

Глава 9. Мультиплексоры

и преобразователи

кода

инвертированным минтермам. Альтернативно состояния выходов можно интерпретировать как макстермы функций.

/ i

h h

/4

/5

Ii

Х2 Xi

XQ

MUX

BCD/DEC

 

 

0

 

 

 

 

 

 

1

 

 

7

2

 

'3^2

3

 

 

 

Уз

 

4

 

УA

 

5

 

Уъ

 

6

 

Уб

 

7

р-

Уп

 

8

 

 

9

Р-

 

Рис. 9.9. Принцип построения линии передачи данных с мультиплексором и демультиплексором.

Таблица 9.3. Таблица истинности функций ^/з, У2, yi, уо

десятичый

Х2

3^1

Хо

уз

У2

?/1

2/0

0

0

0

0

0

0

0

0

1

0

0

1

0

0

1

1

2

0

1

0

1

0

0

0

3

0

1

1

1

1

1

1

4

1

0

0

0

1

0

0

5

1

0

1

0

1

0

1

6

1

1

0

1

1

0

1

7

1

1

1

1

0

1

0

в зависимости от того, интерпретируются ли выходы как инвер­ тированные минтермы или как макстермы, возможны два варианта реализации. В первом случае будет образована DNF, во втором слу­ чае KNF.

Вслучае, если исходить из минтермов, необходимо действовать

вследующем порядке:

выход, ^\ля которого должно иметь место значение функции рав­ ное 1, необходимо подключить к NAND-вентилю (рис. 9.10). На основе инверсии выходов схемы 74138 и инверсии значения функции с по­ мощью NAND образуется логическая функция ODER, необходимая для формирования DNF.

9.3. Аналоговые мультиплексоры и демультиплексоры

BIN/OCT

 

0 --ч

 

 

 

 

 

 

 

 

f\

 

 

 

p.

^

_ _ _ _ _ ...

 

 

J

 

 

 

 

r^

—1Ш1

Хо

 

J

 

 

 

 

—^Ш2

 

J

 

 

 

 

 

—1АЛЗ

 

 

 

 

 

 

 

Х2

5

J—

 

 

 

 

 

J—

 

 

 

 

 

I

 

 

 

 

 

6

^—

 

 

 

 

" " -«/W6

 

7

 

 

Д'згтттГ2 >'l Д'о

 

 

 

T

 

 

T

JPr

 

 

4 >

- "

 

 

&

II

-лМу

 

 

 

 

ОС

ОС

 

 

 

Рис. 9.10. Реализация DNF набора с помощью преобразователя кода

 

BIN/OCT

 

 

 

 

 

 

 

--Л/о

 

 

 

 

— М,

^0 Н

1

 

 

— Л/2

 

 

— Л/з

Xi - |

2

 

 

 

 

— Л/4

Х2

 

 

 

 

 

 

— Л/5

 

 

 

 

 

 

 

 

- л / б

 

&

&

&

&

 

Уз

Уг

У\

Уо

Рис. 9.11. Реализация KNF набора функций с помощью преобразователя кода.

Для образования KNF выходы интерпретируются как макстермы. Таким образом, мы подключаем выходы, входящие в состав входных векторов, которые должны иметь значение функции О, к И-вентилю (рис. 9.11), поскольку макстермы в KNF соединены в со­ ответствии логической функцией И.

9.3.Аналоговые мультиплексоры и демультиплексоры

При необходимости мультиплексирования аналоговых сигналов для коммутации могут быть использованы проходные вентили (trans-

Глава 9. Мультиплексоры

и преобразователи

кода

mission-gates). Так как проходные вентили имеют инвертированный управляющий вход, мультиплексор должен иметь инвертирующие выходы. Схема мультиплексора показана на рис. 9.12. Поскольку она может быть использована потоков информации в обоих направле­ ниях, ее можно использовать как мультиплексор, и как демультиплексор для аналоговых и цифровых сигналов.

BIN/OCT

7

6

\ 5

^\

1

О Ях1

 

 

Ях1

 

 

Ях1

 

 

Ях1

so-i

- • Ч

Ях1

 

 

 

Ях1

 

 

Ях1

S1

S6

S5

54

53

S2

51

Ях1

50

Рис . 9.12. Аналоговый мультиплексор (направление прохождения сигналов справа налево) и демультиплексор (направление прохождения сигналов слева направо)

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

Задача 9.1. Переключательная функция /(a2,ai,ao)7 заданная та­ блицей (рис. 9.13), должна быть реализована с помощью приведен­ ного мультиплексора. Укажите схему подключения к входам !{ и Xi.

Задача 9.2. Пусть необходимо реализовать логическую схему для функций Fo(ai, а2, «з) и Fi(ai, а2, «з) с помощью мультиплексора или с помощью преобразователя кода. Функции определяются табл. 9.4

9.4' Упраоюнения

а2

a i

ао

/

 

MUX

 

 

 

EN

 

 

0

0

0

0

Хо

 

 

0

0

1

0

 

 

 

 

 

 

 

0

1

0

1

 

 

f>--

 

0

1

1

0

lo­

0

•^y

1

0

0

1

 

 

h—

1

 

 

1

0

1

1

 

 

1

1

0

0

h—

2

 

 

3

 

 

1

1

1

1

 

 

 

 

 

 

Рис. 9.13.

a) Примените преобразователь кода 74138 (см. стр. 241) для ре­ ализации функций.

Таблица 9.4.

а2

« 1

ао

Fo

F i

0

0

0

0

1

0

0

1

1

0

0

1

0

1

1

0

1

1

0

0

1

0

0

1

1

1

0

1

0

0

1

1

0

1

0

1

1

1

1

1

б) Реализуйте эти функции с по­

 

 

74153

 

 

мощью схемного модуля 74153, ко­

 

1

 

 

торый содержит 2 мультиплексора

XQ

 

 

4:1. Логический символ 74153 пред­

Х\

-

 

 

ставлен справа.

 

 

MUX

 

 

 

 

 

 

 

 

^ 1 - < :

EN

 

 

 

/in

0

 

Уа

 

/|

1

 

 

h — 2

 

 

 

h — 3

 

 

 

- ^ 7

^

EN

 

 

 

/ о ~

0

 

 

 

/l

1

j

У\

 

h —

2

 

 

h —

3

 

 

246 Глава 9. Мультиплексоры и преобразователи кода

Задача 9.3. Спроектируйте преобразователь кода для трансфор­ мации восьмеричного кода в код Грея в соответствии со следующи­ ми таблицами.

Таблица 9.5.

Таблица истинности функций ^/2, 2/i, Уо

 

 

Вход

Выход

Вход

Выход

 

Х 2 Ж 1 Ж 0

2/2 2/1

Уо

Х2 XI Хо

У2 У1 уо

 

000

000

 

100

110

 

001

001

 

101

111

 

010

011

j

110

101

1

011

010

 

111

100

 

ГЛАВА IО

ЦИФРОВЫЕ

СЧЕТЧИКИ

Цифровые счетчики представляют собой асинхронные или синхрон­ ные драйверы, которые состоят, как правило, из соединенных цепоч­ кой триггеров. Содержание регистров интерпретируется как счет­ ное состояние счетчика.

10.1. Асинхронный счетчик

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

10.1.1. Двоичный счетчик по модулю 8

Двоичный счетчик по модулю 8 можно построить из JK-триггеров с управлением по отрицательному фронту, как это показано на рис. 10.1. J- и К-входы JK-триггеров установлены в состояние 1. При каждом отрицательном фронте на входе состояние на выходе первого триг­ гера изменяется. Точно также ведут себя выходы следующих триг­ геров.

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

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

Результатом работы этой схемы является временная диаграм­ ма импульсов, показанная на рис. 10.2. После результата счета 111 счетчик опять возвращается к 000. Его называют счетчиком по мо­ дулю 8, так как он может периодически показывать 8 различных результатов счета.

Хх L

бо

А

 

 

 

^

I

1

1

1

1 ь.

& А

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

Схема может быть использована также как делитель частоты. Как можно видеть на рис. 10.2, частота выходного сигнала каждой ступени равна половине частоты предыдущей ступени.

10.1.2. Счетчик по модулю 6

Асинхронный счетчик по модулю 6 можно получить путем расши­ рения счетчика по модулю 8. Д,ля этого необходимы JK-триггеры со входом установки в исходное состояние R. Триггеры устанавлива­ ются в исходное состояние тогда, когда достигнут результат счета 6(100).

Считывание производится с помощью подключения вентиля И к выходам Qi и Q2 (рис. 10.3). В счетчике по модулю 6 не должен выдаваться результат счета 110. Но как показано на временной диа­ грамме импульсов на рис. 10.4, это имеет место во время возврата в исходное состояние. Следовательно, возникает короткий импульспомеха, который при некоторых применениях не может быть допу­ стим.

10.1. Асинхронный счетчик

249

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

^*

4

1

2

3

4

п

5

п

6

1

2

Qo i i

п п п п

 

 

 

п

/

 

 

 

 

 

 

 

 

 

 

б.. i

 

 

 

— 1 1

 

\

 

г

t

 

 

 

 

 

 

 

 

 

 

—] к

Qi i i

1 V

t

fc_

Р и с . 10.4. Временная диаграмма двоичного счетчика по модулю 6, пока­ занного на рис. 10.3

10.1.3. Асинхронный обратный счетчик

Если асинхронный счетчик должен считать в обратном направле­ нии, то ко входам следующих ступеней должны быть подключены не выходы Qi триггеров, а инвертированные выходы — -^Qi (рис. 10.5). Благодаря этому JK-триггеры переключаются всегда положитель­ ным фронтом, и мы получим импульсную диаграмму, показанную на рис. 10.6.

При появлении падающего фронта входного сигнала первый триг­ гер переключается, и его выход переходит в состояние Н. Последу­ ющие триггеры в идеальном случае переключатся одновременно.

Глава 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-триггеры. В синхронных счетчиках каждый регистр переключается почти од-