
книги из ГПНТБ / Гутников, В. С. Интегральная электроника в измерительных приборах
.pdfДля реализации регистра можно также выбрать строки 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 |
и |
|
||
|
< с |
|
4£ |
|
|
|
|
|
|
||
Ю |
|
|
|
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