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

книги из ГПНТБ / Гутников, В. С. Интегральная электроника в измерительных приборах

.pdf
Скачиваний:
99
Добавлен:
19.10.2023
Размер:
6.72 Mб
Скачать

Для реализации регистра можно также выбрать строки 4, 3 и 2 табл. 8. В этом случае на входы 1 я 4 нужно подать по­ стоянный потенциал единицу, на входы 2 и 7 — тактовые им­ пульсы С, а на входы 3 и 8 — соответственно — прямой и ин­

версный сигналы записываемой информации (/—/).

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

Регистры памяти на триггерах, тактируемых фронтом, по принципу построения не отличаются от рассмотренных выше.

При переходе

единица — нуль (или нуль — единица) на такто-

а)

5)

Рис. 28. Схемы включения триггеров в регистры памяти

вом входе С триггер устанавливается в состояние, определяе­ мое потенциалами на управляющих входах.

Регистры памяти с записью прямого и инверсного значений кодов могут оказаться необходимыми, например, при построе­ нии цифровых приборов для измерения знакопеременных вели­ чин. В зависимости от сигнала на управляющей шине N (рис. 28, г) триггеры подобного регистра устанавливаются в со­ стояния, соответствующие или прямому коду поданной инфор­ мации (Q = I при N =1) или инверсному (обратному) коду этой

информации (Q = I при N = 0). Естественно, что в любом случае запись информации производится только при наличии разре­ шающего импульса на входе С.

В ячейке регистра на рис. 28, г для инвертирования входных сигналов используется цепь логической равнозначности. Сиг­ налы, подаваемые с этой цепи на входы / и К триггера, опре­ деляются формулами:

J = I N + I N \ K = I N + I N .

Таким образом, если N=1, то / = / и К = 1\ если же N = 0, то / = / и К=1-

58

Более сложная задача возникает тогда, когда нужно иметь возможность осуществлять запись в регистр памяти в прямом и обратном коде двоично-десятичного числа. Дело в том, что обратный код одноразрядного десятичного числа — это код, со­ ответствующий числу, дополняющему данное до девяти. Если же мы будем просто поразрядно инвертировать двоично-десятич­ ный код, то получим код числа, дополняющего данное до двоич­ ного числа 2п—1, п — число двоичных разрядов. Поэтому на входе регистра памяти необходимо строить логические цепи, преобразующие обратный двоичный код в обратный двоично­ десятичный код.

Рассмотрим эту задачу на примере широко распространен­ ного двоично-десятичного кода 8—4—2—1.

В табл. 10 приведены кодовые комбинации исходных двоич­ но-десятичных чисел, обратных им двоичных чисел и обратных

двоично-десятичных чисел. Из таблицы

видно,

что поразрядное

 

 

 

 

 

Таблица 10

Исходные числа

 

Обратные числа

Десятичные

Двоично-де­

Двоичные

Двоично-де­

Десятичные

сятичные

 

сятичные

0

0000

п и

 

1001

9

1

0001

1110

 

1000

8

2

оо Щ

1101

 

0111

7

3

ООН

1100

 

он о

6

4

0100

1011

 

0101

5

5

0101

1010

 

0100

4

6

оно

1001

 

ООП

3

7

0111

1000

 

0010

2

8

1000

0111

 

0001

1

9

1001

оно

 

0000

0

59

инвертирование, например, кода 0010, соответствующего числу 2, дает кодовую комбинацию 1101, в то время как нужно было бы получить код 0111, соответствующий'числу 7.

Поскольку такое поразрядное инвертирование дает в дан­ ном случае дополнение до 15, в то время как нам нужно допол­ нение до 9, то, очевидно, обратное двоичное число в каждом случае будет на двоичную шестерку больше, чем нужное обрат­ ное двоично-десятичное число. Следовательно, для получения обратного двоично-десятичного числа необходимо из обратного двоичного числа вычесть число ОНО (6) или, что в данном слу­ чае то же самое, добавить число 1010 (10).

Обозначая разряды исходного двоично-десятичного числа, начиная со старшего, буквами a, b, с, d и используя знак двоич­ ного сложения ф , можем написать для управляющих сигналов разрядов регистра памяти следующие соотношения:

I ^ d N + dN-,

 

I3 = cN + ( c ®l ) N .

 

/ 2 = bN + (6 0 Рс) iV;

(Ю)

1г = aN + (а ® 1 ф Рь) Л ,

 

где Рс— перенос, получаемый при суммировании с и 1; Рь — пе­ ренос, получаемый при суммировании b и Рс. Таким образом,-

если

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

т. е.

N = 1, то на входы регистра памяти'подаются числа а, Ь, с

и d. Если же нужно в регистр памяти записать обратное дво­ ично-десятичное число, то необходимо на входы регистра па­ мяти подавать сигналы, определяемые соотношениями (10) при

N = 0.

Раскрывая соотношения (10) на основе формул суммирова­ ния двоичных чисел (см. § 8) и проводя минимизацию, получим следующие выражения:

It = dN + dN;

Iз — с\

1%— bN -\-bc-{- b cN\

Ix = aN -f- a (b -f с) + а Ьс N.

Если учесть, что в двоично-десятичном коде 8—4—2—1 не используются кодовые комбинации, при которых a(b + c) = 1, то последнее равенство можно упростить:

Ix — aN-{-ab с N.

Таким образом, мы получили выражения для функций, ко­ торые должна реализовать логическая цепь на входе регистра памяти, воспринимающего как прямое, так и обратное число, выраженное в двоично-десятичном коде 8—4—2—1.

60

14. Регистры сдвига

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

а.)

tb.

 

Пт

 

I-

1

и

 

 

< с

 

 

 

 

 

 

Ю

 

 

 

Hzi

 

 

 

 

И4.

 

 

 

сг-

 

 

 

б)

Hi

S.2

Из

И.4

1

-

 

 

 

I -

 

 

 

с-

 

 

 

г)

Hi

 

Иг

Из

 

 

 

 

 

— <С

-^ЕК-Г7Г1 ^ЕЬ-mn^

 

 

— < С

 

G

 

 

 

 

 

 

Рис. 29. Схемы регистров сдвига

Для построения регистра сдвига могут быть использованы SR-, D-, Т- или //(-триггеры. На рис. 29, а показан регистрсдвига на тактируемых фронтом //-триггерах. Выход Q преды­ дущего разряда присоединяется ко входу D последующего. Бла­ годаря этому каждый тактовый импульс устанавливает после­ дующий триггер в состояние, в котором до этого находился предыдущий, осуществляя тем самым сдвиг информации на раз­ ряд вправо.

Вход D первого разряда служит для приема в регистр ин­ формации в виде последовательного кода. С каждым тактовым импульсом на этот вход должен подаваться код нового разряда входной информации. Запись параллельного кода информации

61

может быть произведена через нетестируемые установочные входы R0—So триггеров регистра. С выхода Q последнего триг­ гера снимается последовательный выходной код. Код на этом выходе регистра появляется с задержкой относительно входного последовательного кода на число периодов тактовых импульсов, равное числу разрядов регистра.

В случае использования SR- или D-триггеров, построенных по схеме «хозяин — раб», часто применяют двухтактное управ­ ление регистром сдвига (рис. 29,6). При этом первый тактовый импульс производит перепись информации из основных (выход­ ных) триггеров предыдущих разрядов во вспомогательные (входные) последующих, а второй тактовый импульс, начинаю­ щийся через некоторое время после окончания первого пере-

4V

Рис. 30. Реверсивный регистр сдвига

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

деления во времени этих двух переписей.

на //(-триггерах.

На

рис.

29,

в приведен регистр сдвига

Здесь

входы

/

и К последующего триггера

соединены с выхо­

дами соответственно Q и Q предыдущего.

Возможно построение регистров сдвига на основе 7-тригге­ ров. Однако в этом случае в цепи связи между разрядами прихо­ дится вводить так называемые дешифраторы несоответствия [14]. Эти дешифраторы позволяют проходить тактовому импульсу на счетный вход триггера только в том случае, если его состояние отлично от состояния предыдущего триггера (рис. 29,г). Подоб­ ная схема на входе первого триггера сравнивает его состояние с входным последовательным кодом. Логическая функция, реа­ лизуемая этой цепью, описывается соотношением

= ( / Q i + / Q i )

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

Иногда строят реверсивные регистры сдвига, которые дол­ жны обеспечивать возможность сдвига информации как вправо, так и влево. Пример подобного регистра приведен на рис. 30. Если сигнал на входе N равен единице, то потенциал на входе D данного триггера определяется выходом Q триггера, стоящего

62

слева от него, если же N = 0, то — выходом триггера, стоящего

справа (Di = Qi-i-N+Qi+iN). Таким образом,

при N=1

такто­

вые импульсы производят сдвиг информации

вправо,

а при

N = 0 — сдвиг информации влево.

 

 

15. Кольцевые счетчики

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

а)

Ю

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

Для построения кольцевых счетчиков можно применять все типы регистров сдвига, рассмотренные в предыдущем пара­ графе. При использовании //(-триггеров на вход К данного триггера вместо сигнала Q с выхода предыдущего триггера можно подать постоянный потенциал / (рис. 31, а). Входной им­ пульс в этом случае будет также устанавливать данный триггер в состояние нуль, если предыдущий триггер находится в нуле, или опрокидывать его в единицу, если данный триггер нахо­ дится в нуле, а предыдущий в единице.

Вариант кольцевого счетчика на нетактируемых //(-тригге­ рах показан на рис. 31,6. В счетчиках, показанных на рис. 31, а и б, в исходном состоянии все триггеры находятся в нуле,

63

а один в единице. Приходящий входной импульс k опрокиды­ вает триггер, который был в единице, в состояние нуль. По­ скольку выход Q этого триггера соединен со входом / следую­ щего триггера, то последний при этом устанавливается в состоя­ ние единица.

Работа простейшего кольцевого счетчика, например, на пяти триггерах может быть описана следующей таблицей кодовых

комбинаций

(по кольцу продвигается одна единица):

k

Qi

0

*2з

Q*

q5

Неприятной

особенностью

кольцевых

0

1

0

0

0

счетчиков является возможность сбоев, вы­

1

0

i

0

0

0

званных появлением лишних или исчез­

2

0

0

i

0

0

новением нужных кодовых единиц в коль­

3

0

0

0

1

0

це. Причем эти сбои, раз возникнув, могут

4

0

0

0

0

1

существовать во

время счета

неопределен­

5

1

0

0

0

0

но долго, если не принять специальных мер к их устранению. В качестве меры, препятствующей существо­ ванию лишних единиц, может быть использовано, например, введение в счетчик логической цепи, разрешающей перепись единицы из последнего триггера в первый только при условии, что все остальные триггеры находятся в состоянии нуль. На рис. 31,в показана схема подобного кольцевого счетчика, в ко­ тором устраняются сбои, проявляющиеся как в появлении лиш­ них единиц в кольце, так и в потере единственной необходимой единицы. Здесь выходы всех триггеров соединены со входами ячейки «НЕ — ИЛИ», выход которой в свою очередь присоеди­ нен к управляющему входу первого триггера. До тех пор пока

хотя

бы один

триггер

находится в единице,

на выходе

цепи

«НЕ — ИЛИ»

будет потенциал

нуль. Когда

последний

триг­

гер

установится в нуль

(Qn = 0)

и все предыдущие также бу­

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

Интересно, что в счетчике рис. 31 при количестве тригге­ ров п получаем коэффициент пересчета /г+1. Следовательно, ячейка «НЕ—ИЛИ» как бы заменяет (п+ 1)-й триггер в кольце, и с ее выхода можно снимать потенциал, соответствующий вы­ ходу отсутствующего (п-И)-го триггера, Qn+1.

Счетчик Джонсона. Так часто называют в иностранной ли­ тературе [40, 1] кольцевой счетчик, который также строится на основе замкнутого регистра сдвига, но с одной перекрестной связью.

На рис. 32, а показан пример подобного счетчика построен­ ного на //(-триггерах. Как видно из рисунка, на входы / и К всех триггеров, кроме первого, поданы сигналы с выходов соот­

ветственно Q и Q предыдущего. На входе же / и К первого триггера поданы сигналы с инверсного и прямого выходов по­ следнего (перекрестная связь).

64

5)

к

6)

 

 

 

 

 

к

?

Hi

 

П-1 .

<?71

<1 г

----<L7

Т

7

Т

 

у?]_

—-U

 

 

?

)

' ' /?

- Ь Н

 

 

 

 

 

Рис. 32. Схемы кольцевых счетчиков на основе регистра сдвига с одной перекрестной связью (счетчики Джонсона)

В отличие от рассмотренных выше простейших кольцевых счетчиков счетчик Джонсона имеет коэффициент пересчета, вдвое больший числа составляющих его триггеров. В частности, если счетчик (рис. 32,а) составлен из пяти триггеров (п = 5), то он будет иметь десять устойчивых состояний, описываемых следующими кодовыми комбинациями:

k

Qi

Qz

Оз

Q..

Qs

k

Qi

Qa

Qs

 

Qs

0

0

0

0

0

0

6

0

1

1

1

1

1

1

0

0

0

0

7

0

0

1

1

1

2

1

1

0

0

0

8

0

0

0

1

1

3

1

1

1

0

0

9

0

0

0

0

1

4

1

1

1

1

0

1 0

0

0

0

0

0

5

1

1

1

1

1

 

 

 

 

 

 

Как видно из таблицы, при счете вначале от первого триг гера до последнего распространяется «волна единиц», а затем «волна нулей». Код, в котором работает счетчик Джонсона, на­ зывают кодом Либау—Крейга [34].

В счетчике Джонсона, как и в других кольцевых счетчиках, также возможны сбои в виде появления лишних волн нулей или единиц. Для их устранения в десятичном счетчике может быть введена, например, двухвходовая ячейка «И» в цепь связи вы­ хода Q5 последнего триггера со входом К первого. На второй вход этой ячейки необходимо подать сигнал с выхода Q4

65

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

В табл. 11 приведены кодовые комбинации, которые будет проходить десятичный счетчик Джонсона в этом случае для

 

 

 

Таблица 11

ваРианта

схемы

с отсутст­

 

 

 

 

 

вием дополнительной ячей­

 

С ч е т ч и к

б е з

С ч е т ч и к с

д о ­

ки «И»

и при

наличии та­

к

д о п о л н и т е л ь н о й

п о л н и т е л ь н о й

кой ячейки.

 

 

 

я ч е й к и

«И»

я ч е й к о й

«И»

из таблицы,

 

 

 

 

 

Как

видно

0

0 0 1 0 0

 

0 0 1 0 0

 

счетчик без дополнительной

1

1 0 0 1 0

 

1 0 0 1 0

 

ячейки,

хотя и имеет по-

2

1 1 0 0 1

 

1 1 0 0 1

 

прежнему коэффициент пе­

3

0 1 1 0 0

 

1 1 1 0 0

 

ресчета,

равный

десяти, тем

4

1 0 1 1 0

 

НПО

 

не менее

так и

не устанав­

5

п о п

 

1 1 1 1 1

 

 

 

ливается в состояние, со­

6

0 1 1 0 1

 

0 1 1 1 1

 

7

0 0 1 1 0

 

0 0 1 1 1

 

ответствующее

 

разрешен­

8

1 0 0 1 1

 

0 0 0 1 1

 

ным кодовым комбинациям.

9

0 1 0 0 1

 

0 0 0 0 1

 

Наличие

же

дополнитель­

10

0 0 1 0 0

 

0 0 0 0 0

 

ной ячейки «И»

приводит к

 

 

 

 

 

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

На основе регистра с одной перекрестной связью может быть построен кольцевой счетчик с любым коэффициентом пересчета. Если нужен четный коэффициент пересчета 2п, то необходимо соединить п триггеров так, как показано на рис. 32, а. Если же нужен нечетный коэффициент пересчета 2п—1, то п — триггеров

можно соединить подобно

тому, как это сделано в счетчике

рис. 32, б (вход К первого

триггера соединен с выходом Qn-i

предпоследнего триггера). При этом по сравнению с обычным счетчиком Джонсона пропускается одна кодовая комбинация, полностью составленная из единиц. Например, счетчик на 5,

построенный

по схеме

рис. 32, б

и

содержащий три

триггера

(м= 3), будет во время счета про­

k

Qi q 2 Qз

k

Qi Q2 Q:

ходить следующие кодовые ком­

0

0

0

0

3

0

1

1

бинации:

 

 

1

1

0

0

4

0

0

1

Если для построения подоб- 2

1

1

0

5

0

0

0

ного счетчика с нечетным коэф­

 

 

5Д-триггеры,

то

схема

фициентом

пересчета

используются

 

рис. 32, б неприемлема, так как в ней на управляющих входах (/ и К) первого триггера возможно одновременное существова­ ние единиц (что для З^-триггера недопустимо). Однако и с по­ мощью S/U-триггеров можно получить нечетный коэффициент пересчета, если применить схему рис. 32, в, в которой на вход 5

66

первого триггера подана конъюнкция сигналов с инверсных вы­ ходов двух последних триггеров.

При двухтактном управлении счетчик Джонсона может быть построен и на D- или 5Д-триггерах, тактируемых импульсом.

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

мощью этого триггера и двух ячеек

«И» формируются

две

по­

следовательности разнесенных во

времени импульсов

и

&2,

а)

 

 

 

5)

Рис. 33. Вариант десятичного счетчика Джонсона (а) и диаграммы его работы (б)

которые подаются соответственно на входы нечетных и четных триггеров. Для того чтобы обеспечить правильное функциониро­ вание кольцевого счетчика, между триггером Т и ячейками «И» включена цепь логической равнозначности, на второй вход ко­ торой подан потенциал с выхода последнего триггера. Благодаря этой цепи до пятого входного импульса включительно на шину ki подаются нечетные входные импульсы (1-й, 3-й, 5-й), а за­ тем, начиная с шестого,— четные (6-й, 8-й, 10-й).

Для устранения сбоев в кольце вход D первого триггера кольца соединен через ячейку «И» с инверсными выходами чет­ вертого и пятого триггеров.

Диаграммы, поясняющие работу счетчика рис. 33, а, приве­ дены на рис. 33, б.

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

67

Соседние файлы в папке книги из ГПНТБ