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

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

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

Глава 8. Синхронные драйверы

CLK

I

\

У

к

FF

W

К

w

 

 

 

 

 

^WK

 

— ^

j

2 ' "

рш

 

X'"

1

 

^п\\

1

 

 

h

*-min

i

 

^тах

 

i

 

i

яж

яж

ti>0 t2>0

Рис. 8.11. Временные характеристики драйвера.

Когда входные величины логической схемы изменяются, вы­ ходной сигнал определенное время tmin останется неизменным. Это время tmin является временем запаздывания («мертвое вре­ мя»). Оно обусловлено временем задержки вентилей. Кроме то­ го линии связи между блоками ЗУ и логической схемой также имеют определенное время задержки.

Затем выходные величины начинают изменяться. Через опре­ деленное время tmax все переходные процессы закончились. По­ сле этого выходной сигнал стабилен.

Итак, характеризующие состояния переменные начинают из­ меняться самое раннее вслед за истечением времени tmin после начала интервала опрокидывания. После времени tmax 5 про­ шедшего от окончания интервала опрокидывания, выходные сигналы 2:^+1 драйвера стабильны (рис. 8.11).

По этому рисунку можно определить условия функциониро­ вания драйвера. Суш;ественным условием функционирования драйвера является то, что входные переменные триггеров во время действуюш;его интервала должны быть стабильны.

8.3. Упраоюненил 231

Поэтому характеризующие состояние переменные z'^^^ могут изменяться только после окончания действующего интервала. Время ^1 должно быть больше 0.

^1 "= tmin — '^krit > О

(8.11)

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

После окончания интервала опрокидывания логическая схема должна вычислить новые входные переменные для блоков ЗУ. Этот процесс должен быть окончен, включая все переходные явления, к моменту начала следующего действующего интер­ вала.

Поэтому второе условие реализации обратной связи гласит:

^2 = twK - tmax > О

(8-12)

Эти условия можно понять более подробно, если учесть разли­ чия между величинами времени задержки сигналов в логиче­ ских схемах SN1 и SN2.

Теперь рассмотрим условия для выходных функций у в логиче­ ской схеме SN1. Если время задержки этой логической схемы равно времени задержки SN1, выходные сигналы у будут действительны в то же время, что и z^^^. Это обстоятельство может быть ис­ пользовано для того, чтобы выходной сигнал у подать в буферные блоки ЗУ, чтобы выходные величины были готовы к стабильному использованию синхронно по отношению к х'^ и z'^ (рис. 8.12).

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

Задача 8.1. Разработайте синхронную схему с состояниями

А,

В, С, D. Она должна зависеть от входных сигналов R{= reset)

и

V (= Vprvarts, forvard, вперед) в следующих сочетаниях:

 

При R = 0 V = I пробегание цикла А, В, С, D, А, В;

 

Глава 8. Синхронные драйверы

При Д = О V == О пробегание цикла D, С, В, А, DC; При R = 1 переход в состояние А не зависимо от V.

а) Начертите диаграмму состояний.

б) Сформулируйте переходную таблицу.

в) Реализуйте схему с двумя D - триггерами.

J \ l логическая -|у| схема

SN1

гЛ

CLK.

Л

блок ЗУ

H J

 

 

 

логическая

 

 

схема

блок ЗУ

 

SN2

^

 

 

У

Рис. 8.12. Синхронный драйвер Мили с буферными блоками ЗУ на выходе

Задача 8.2. Разработайте представленную в главе 8.1 схему упра­ вления электротехниескими устройствами, используя вместо JK-триг- геров:

а) RS-триггеры;

б) D-триггеры.

Сравните затраты на реализации трех видов схем.

Задача 8.3. Разработайте синхронный драйвер Мура, который пред­ ставляет собой реализацию парковочного автомата, выдающего кви­ танции на парковку стоимостью в 1,5 евро.

Монеты могут быть вброшены в любой последовательности. Ес­ ли достигнута или превышена сумма в 1,5 евро, должна быть выда­ на квитанция на парковку и, при необходимости, выплачена сдача.

Парковванный автомат содержит прибор ]щя контроля монет, который принимает только монеты в 50 центов и в 1 евро. После каждого тактового сигнала на выходе прибора для контроля монет воспроизводится в соответствии с представленной ниже таблицей истинности то, что было вброшено.

Исключается, чтобы на приборе JI^JIK контроля монет воспроиз­ водилось М — (1,1) и чтобы в течение тактового периода вбра­ сывалось более одной монеты. Фальшивые монеты автоматически возвраш;аются.

 

8.3. Упражнения 233

Вброс

Выход прибора р^ля контро­

ля монет М — {XI^XQ)

 

Никакой или фальшивая монета

00

Монета в 50 центов

01

Монета в 1 евро

10

Квитанция на парковку выдается с выходным сигналом 5 = 1 , одновременно механически запирается прием монет. В других слу­ чаях вброс возможен. С сигналом Я = 1 возвращается монета в 50 центов

а) Выдайте диаграмму состояний и соответствующую ей табли­ цу последовательности состояний.

б) Определите переходные функции и выходные функции.

ГЛАВА 9

МУЛЬТИПЛЕКСОРЫ и ПРЕОБРАЗОВАТЕЛИ КОДА

в этой главе представлены два стандартных схемных элемента: муль­ типлексор и преобразователь кода. Эти схемные элементы пригод­ ны для реализации булевых функций или для сведения в пучок мно­ гих информационных каналов для передачи по одной линии.

9.1. Мультиплексор

Мультиплексор представляет собой схемный элемент, который под­ ключает один из п цифровых входов к одному выходу. Вход выби­ рается из группы посредством селективных (адресных) входов.

-£-{1}

h

&

h

&

 

 

HI>-^

• £ ^

EN

 

h

n

 

 

 

MUX

&

>i

 

Xa~

^1

0

и

--ny

 

 

X\

2)

G -

&l-i

 

 

X7~

1

h

&

 

 

 

/ o -

0

 

 

 

 

 

/ l -

1

 

h

&

 

 

 

h-

2

 

 

 

 

h-

3

 

 

&

 

 

 

h-

4

 

 

 

 

 

h-

5

 

 

 

 

 

 

h-

6

 

xo

—(Г}Д{Т}>-

 

 

 

h-

7

 

Рис . 9.1. 8:1-мультиплексор 74151 с логическим символом.

9,1. Мультиплексор

В качестве примера на рис. 9.1 показан схемный элемент 74151. Этот мультиплексор обозначается как мультиплексор 8:1, так как с его помощью 8 различных входов li могут быть на выбор подсоеди­ нены к одному выходу у. В КМОП-версии данный схемный элемент реализуется с помощью проходных вентилей (transmission gates), с помощью селективных входов ^2, :г:1, XQ выбирается один /^ вход. По­ сле стабилизации адресных сигналов и сигналов данных выбранный вход может быть подключен с помощью активирующего сигнала -I JE ( enable, разрешающий). Выход у остается в состоянии О, пока -iE = 1. При -1 £? = О выбранный выход подключается.

Данный схемный элемент вьшолняет следующую логическую функцию:

XQIQ V -> Х2-^ XIXQII V X2Xi-^Xol2 V -> X2XiXoh\/

У X2-^Xi-^Xol4 V Х2 XIXQI^ V Х2Х1-^Хо1б V X2XiX()l7)

(9.1)

Показанный на рис. 9.1 логический символ 8:1-мультиплексора 74151 обозначен надписью MUX. Функция мультиплексора описыва­ ется зависимостью U(G) селективных входов Xi и входов данных Д. Селективные входы пронумерованы от О для XQ ДО 2 для Х2'

Таблица 9.1. Таблица истинности 8:1-мультиплексора 74151 является произвольной величиной G {0,1})

-пЕ

Х2

Xi

Хо

I?

h

h

h

h

h

/ i

/o

У

1

d

d

d

d

d

d

d

d

d

d

d

0

0

0

0

0

d

d

d

d

d

d

d

X

X

0

0

0

1

d

d

d

d

d

d

X

d

X

0

0

1

0

d

d

d

d

d

X

d

d

X

0

0

1

1

d

d

d

d

X

d

d

d

X

0

1

0

0

d

d

d

X

d

d

d

d

X

0

1

0

1

d

d

X

d

d

d

d

d

X

0

1

1

0

d

X

d

d

d

d

d

d

X

0

1

1

1

X

d

d

d

d

d

d

d

X

9.1.1.Реализация функций мультиплексора

Мультиплексор можно использовать для реализации логических функ­ ций. Покажем это на примере. Подлежащая реализации логическая функция задана диаграммой Карно, показанной на рис. 9.2. Исполь­ зуется мультиплексор 8:1.

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

Мультиплексор 8:1 имеет три селективных входа, на которые подаются три из четырех переменных. Для выбора этих трех пере­ менных имеются четыре возможности.

Xi

хг Хъ

1

1

 

1 ^^

h

и

 

 

h

 

1

1

 

 

 

 

 

1

1

XQ

h

h

h

h ]M

 

1

1

 

 

 

 

хг

 

 

 

 

Хг

 

a)

 

 

 

 

b)

 

Рис . 9.2. a) Диаграмма Карно-Вейга для функции, приведенной в примере; Ь) определение входных полей.

Не используемая в данный момент переменная так подается на входы данных /^, чтобы на выходе мультиплексора появилось задан­ ное значение функции. Теперь поясним прохождение этого процесса.

Сначала установим, какие переменные должны использоваться на селективных входах. Допустим выбраны жз, я:2, ^ ь С этими тремя переменными на селективных входах в KB-диаграмме соотносятся поля с 2-мя переменными. На рис. 9.2 заданы поля, которые долж­ ны быть приведены в соответствие с одним из входных векторов. При нумерации полей следует учитывать вес селективных входов: жз имеет вес 2^, Х2 имеет вес 2^, xi имеет вес 2^.

Затем на входы данных мультиплексора должны быть поданы соответствующие остаточные функции. Если какая-либо из них не содержит 1, то на соответствующем входе данных должен быть 0. При наличии двух единиц в одном поле на вход данных подается 1. В случае, когда в поле только одна 1, оно принимает позицию, со­ ответствующую 1.

Например, на рис. 9.2 b можно прочитать, что на Ii должно быть подано -1 гго, так как поле /о имеет только одну 1 в позиции, которая не покрыта граничным обозначением XQ.

9.1. Мультиплексор

Альтернативно для реализации данной функции может быть при­ менен мультиплексор типа 16:1. В этом случае на его входы должны быть поданы только лишь О и 1. Но относительно аппаратных за­ трат этот вариант не имеет преимущества перед мультиплексором типа 8:1.

У

Р - --У

Р и с . 9.3. Включение мультиплексора для реализации функции, определен­ ной на рис. 9.2.

Xl

 

Хз

 

 

 

 

Хз

 

 

 

 

 

 

1

 

 

li,

h

h

h j

1

1

 

 

 

 

 

1

1

Хо

 

 

 

Xo

 

 

 

 

 

1

 

XI

{

 

 

 

 

 

 

 

 

 

Х2

 

 

 

 

X2

 

a)

b)

Рис . 9.4. a) Диаграмма Карно-Вейга для функции, взятой в качестве при­ мера; Ь) Определение входных полей.

В случае применения мультиплексора типа 4:1 на обои селектив­ ные входы подаются две переменные, а на четыре входа данных

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

подаются по одной функции DNF (или KNF), образованные дву­ мя другими переменными. Пример показан на рис. 9.4. Если подать на селективные входы мультиплексора жз и 0:2, подача сигналов на входы данных будет особенно простым.

В этом случае можно обойтись одним 4:1-мультиплексором, без дополнительных вентилей (рис. 9.5). Если к селективным входам под­ вести XI и ггб, то в этом варианте к входам данных необходимо подключить дополнительные вентили.

MUX

-,£-dEN

р—^^

О — ^

41 b

Рис . 9.5. Включение мультиплексора для реализации функции, определен­ ной на рис. 9.4.

9.2. Преобразователь кода

Преобразователь кода представляет собой схему, которая преобра­ зует слова, соответствующие коду 1, подаваемые на т входов, в сло­ во из другого кода, кода 2.

В этом случае кодовое слово на выходе имеет длину п бит. В логи­ ческом символе, приведенном на рис 9.6, оба кода указаны в надписи.

Рис . 9.6. Логический символ преобразователя кода

Преобразователь кода применяется в следующих областях:

для трансформации, например, двоично-десятичного кода в шестнадцатиричный код;

9,2. Преобразователь кода 239

для генерации наборов функций;

в качестве демультиплексеров. Как разъясняется ниже, демультиплексер является противоположностью мультиплексера. Он служит А^ля того, чтобы направить данные с одного информа­ ционного канала многим адресатам.

 

 

Уо

 

b—I

У\

 

Уз

хо —(lb

У2

 

 

xi

—^

 

 

Е

У4

Х2

У5

[Г]>

Уб

&

X3—\l}

 

У1

 

HIb

У%

 

 

т

У9

 

Р и с . 9.7. Структурная схема и логический символ преобразователя 7442 двоично-десятичного кода в десятичный код

9.2.1.Преобразователь двоично-десятичного кода в десятичный код 7442

Вкачестве примера на рис. 9.7 представлен преобразователь кода

7442. Он преобразует двоично-десятичный код в код 1 из 10. Код 1 из 10 является кодом, слова которого имеют свойство, заключа­ ющиеся в том, что все разряды, кроме одного, имеют значение 1. Преобразователь кода имеет 4 входа и 10 выходов. В исходном со­ стоянии выходы находятся в состоянии 1 и в случае выборки пере­ ключатся на 0.

Каждый выходной сигнал реализует соответствующие макстермы.

Уг =Mi

0 , 1 , . . . , 9

(9.2)

Функцию можно интерпретировать также и как, реализующую на каждом выходе соответствующий инвертированный минтерм:

уе = MQ = хзУ -^Х2У -'XiW хо = -^ {-^xsX2Xi-^хо)

(9.3)