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

Лекции / Схемотехника ЭВМ. Лекция 05. Сдвиговые регистры

.pdf
Скачиваний:
149
Добавлен:
14.10.2014
Размер:
533.05 Кб
Скачать

2.4. Последовательные (сдвиговые) регистры

Последовательный (сдвиговый или сдвигающий) регистр - это регистр, содержимое которого при подаче тактового сигнала (управляющего сигнала «сдвиг») может сдвигаться в сторону старших или младших разрядов. Если регистр выполняется на непрозрачных триггерах, то управление сдвигом осуществляется однофазной синхронизацией. Сдвиговый регистр, выполненный на одноступенчатых защёлках, должен иметь двухфазную систему синхронизации.

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

2.4.1. Организация цепей приёма и выдачи

Организация цепей приёма и выдачи данных в сдвиговых регистрах не отличается от процедур, аналогичных для параллельных регистров. Это относится как к последовательной, так и к параллельной загрузке и выдаче данных.

2.4.2. Организация цепей сдвига

Рассмотрим сначала организацию цепей сдвига для случая однофазной синхронизации в предположении, что сдвиг производится влево (в сторону старших разрядов) на один разряд за один такт. Функционирование цепей сдвига представлено в табл.2.13 в обобщённом виде для двух различных типов триггеров (D и JK). Заполнение этой таблицы осуществляется с использованием соответствующих характеристических таблиц этих триггеров. Из рис.2.29 следует

D =Q

;

(2.23)

i i1

 

 

Ji =Qi1;

(2.24)

Ki =Qi1.

Схемы соответствующих 4-разрядных регистров сдвига приведены на рис.2.30. Если сдвиговый регистр выполняется на одноступенчатых тактируемых триггерах, то он должен иметь двухфазную систему синхронизации. На рис.2.31 в качестве примера приведена схема сдвигового регистра на D-триггерах, осуществляющая сдвиг в сторону младших разрядов (вправо).

Таблица 2.13

Реализация сдвига в сторону старших разрядов регистра

 

 

 

Номер

 

 

Q t

Q t

Q t+1

 

D

*

 

 

J

*

 

K

*

 

 

 

 

набора

 

 

i

 

i-1

 

i

 

 

 

i

 

 

i

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

0

 

0

 

0

0

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

0

 

1

 

1

 

 

1

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

1

 

0

 

0

0

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

1

 

1

 

1

 

 

1

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

D *

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

Qi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

1

 

1

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Qi-1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

а

 

 

 

 

 

 

 

 

 

 

 

 

 

J *

 

 

 

 

 

 

 

 

 

 

 

 

 

K

*

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Qi

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

Qi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

0

 

 

 

 

 

 

 

 

1

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Qi-1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Qi-1

 

 

 

 

б

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в

Рис.2.29. Карты Карно: а - для Di*; б - для Ji*; в - для Ki*

 

 

Q0

 

Q1

 

Q2

Q3

DR

TT

D

TT

D

TT

D

TT

D

C

 

C

 

C

 

C

 

С

 

 

 

 

 

 

 

 

 

Q0

а

Q1

 

Q2

Q3

 

 

 

 

DR

TT

J

TT

J

TT

J

TT

J

 

C

C

C

C

1

K

K

K

K

 

С

 

 

 

 

б

Рис.2.30. 4-разрядные сдвиговые регистры: а - на D-триггерах;

б - на JK-триггерах

 

 

Q2

Q1

Q0

 

D

T

D T

D T

 

C

 

C

C

C2

 

 

 

 

DL

D T

D T

D

T

 

C

C

C

 

C1

 

 

 

 

Рис.2.31. Сдвиговый регистр с двухфазной системой синхронизации

2.4.3. Организация цепей сдвига в реверсивных регистрах

При двунаправленном сдвиге появляются два последовательных

входа: вход, принимающий входные данные, вдвигаемые в регистр со

стороны младшего разряда DR (data right - данные справа), и вход со

стороны старшего разряда DL (data left - данные слева). Эти же входы

используются и при наращивании разрядов регистра: последовательный

вход DR старшей секции общего регистра подключается к выходу

старшего разряда соседней младшей секции общего регистра; последо-

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

выходу младшего разряда соседней старшей секции общего регистра.

Кроме последовательных входов сдвиговые регистры могут иметь

входы параллельной загрузки за один такт и обязательно управляющие

входы, определяющие режим работы сдвигового регистра. Для эконом-

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

не вводят непосредственно, а формируют их с помощью дешифратора

режимов. Другой приём упрощения структуры сдвигового регистра за-

ключается в реализации цепей сдвига только в одном направлении, а

для сдвига данных в другом направлении используется режим парал-

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

коммутацию внешними соединениями между выходами разрядов реги-

стра и входами параллельной загрузки.

 

 

 

 

Рассмотрим несколько примероворганизации сдвиговых регистров.

Пример 2.14. Разработать реверсивный сдвиговый регистр на универ-

сальных D-триггерах (типа К155ТМ2). Так как регистр выполняет две мик-

рооперации, то код микрооперации (управляющий сигнал а) будет одно-

разрядным. Примем, что при а = 0 обеспечивается сдвиг вправо (к

младшимразрядам), а приа= 1 - влево(к

D *

 

 

 

старшим разрядам). Функционирование

 

 

 

i

Qi

 

 

такого регистра отражено в табл.2.14, где

 

 

 

Qi - произвольный разряд сдвигового

0

1

1

0

регистра, Qi+1 и Qi-1 - соответственно бли-

a

 

 

 

жайший старший и младший разряды,

0

1

1

0

 

 

 

 

 

Qi+1

Di - информационныйвход i-горазряда.

1

1

1

1

Из рис.2.32 следует

 

 

 

 

 

 

 

 

0

0

0

0

Di =aQi1 +aQi+1 .

 

 

 

 

 

(2.25)

сдвиго-

 

 

Qi-1

 

Фрагмент реверсивного

Рис.2.32. Карта Карно для Di*

вого регистра на D-триггерах приведён

 

 

 

 

на рис.2.33.

 

 

 

 

 

Таблица 2.14

Реализация реверсивного сдвигового регистра (к примеру 2.14)

Номер

a

Q i+t

1

Q ti

Q it-1

Qi t+1

набора

 

 

 

 

 

D*

0

0

0

 

0

0

0

 

 

 

 

 

 

 

1

0

0

 

0

1

0

 

 

 

 

 

 

 

2

0

0

 

1

0

0

 

 

 

 

 

 

 

3

0

0

 

1

1

0

 

 

 

 

 

 

 

4

0

1

 

0

0

1

 

 

 

 

 

 

 

5

0

1

 

0

1

1

 

 

 

 

 

 

 

6

0

1

 

1

0

1

 

 

 

 

 

 

 

7

0

1

 

1

1

1

 

 

 

 

 

 

 

8

1

0

 

0

0

0

 

 

 

 

 

 

 

9

1

0

 

0

1

1

 

 

 

 

 

 

 

10

1

0

 

1

0

0

 

 

 

 

 

 

 

11

1

0

 

1

1

1

 

 

 

 

 

 

 

12

1

1

 

0

0

0

 

 

 

 

 

 

 

13

1

1

 

0

1

1

 

 

 

 

 

 

 

14

1

1

 

1

0

0

 

 

 

 

 

 

 

15

1

1

 

1

1

1

 

 

 

 

 

 

 

a

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

&

1

i+1

&

1

i

&

1

i-1

 

 

 

 

 

 

TT

 

D TT

&

 

D TT

&

 

D TT

&

 

C

 

C

 

C

 

 

 

 

 

 

C

 

 

 

 

 

 

 

 

Рис.2.33. Фрагмент реверсивного сдвигового регистра

Пример 2.15. Разработать реверсивный сдвиговый регистр на универсальных JK-триггерах (типа 564ТВ1). Примем, что при а = 0 обеспечивается сдвиг влево (к старшим разрядам), а при а = 1 - вправо (к младшим разрядам). Функционирование такого регистра отражено в табл.2.15. Из рис.2.34 следует

 

J = aQ

+ aQ

;

K = aQ

+1

+ aQ .

(2.26)

J*

i

i+1

i1

 

i

i

i1

 

Qi

 

 

 

K*

Qi

 

 

 

a

 

0

0

 

a

1

1

 

 

 

1

1

 

0

0

 

 

 

 

 

 

 

 

 

 

1

Qi+1

 

1

0

 

Qi+1

 

 

0

 

 

 

 

 

 

1

0

 

 

1

0

 

 

 

 

Qi-1

 

 

 

 

 

Qi-1

 

 

 

а

 

 

 

 

 

б

 

 

 

Рис.2.34. Карты Карно: а - для J*; б - для K*

 

УпростимвыражениедляKi , проделавочевидныепреобразования:

Ki =aQi+1 +aQi1 = aQi+1 aQi1 =

=(a +Qi+1)(a +Qi1) = aQi+1 +aQi1 = J .

(2.27)

Фрагмент реверсивного сдвигового регистра на JK-триггерах приведён на рис.2.35.

Таблица 2.15

Реализация реверсивного сдвигового регистра (к примеру 2.15)

набораНомер

a

Q i+t

1

Q ti

Q it-1

Qi t+1

J*

K*

0

0

0

 

0

0

0

0

 

 

 

 

 

 

 

 

 

 

1

0

0

 

0

1

1

1

 

 

 

 

 

 

 

 

 

 

2

0

0

 

1

0

0

 

1

 

 

 

 

 

 

 

 

 

3

0

0

 

1

1

1

 

0

 

 

 

 

 

 

 

 

 

4

0

1

 

0

0

0

0

 

5

0

1

 

0

1

1

1

 

6

0

1

 

1

0

0

 

1

7

0

1

 

1

1

1

 

0

8

1

0

 

0

0

0

0

 

 

 

 

 

 

 

 

 

 

9

1

0

 

0

1

0

0

 

 

 

 

 

 

 

 

 

 

10

1

0

 

1

0

0

 

1

 

 

 

 

 

 

 

 

 

11

1

0

 

1

1

0

 

1

 

 

 

 

 

 

 

 

 

12

1

1

 

0

0

1

1

 

 

 

 

 

 

 

 

 

 

13

1

1

 

0

1

1

1

 

 

 

 

 

 

 

 

 

 

14

1

1

 

1

0

1

 

0

 

 

 

 

 

 

 

 

 

15

1

1

 

1

1

1

 

0

 

 

 

 

 

 

 

 

 

Уст. «0» a

1

&

1

 

i+1

 

 

 

 

R

TT

&

 

J

 

 

 

C

 

 

 

K

 

 

1

S

 

 

 

 

C

Уст. «1»

&

1

 

i

 

 

 

 

R

TT

&

 

J

 

 

 

C

 

 

 

K

 

 

1

S

 

 

 

 

&

1

 

i-1

 

 

 

 

R

TT

&

 

J

 

 

 

C

 

 

 

K

 

 

1

S

 

 

 

 

Рис.2.35. Фрагмент реверсивного сдвигового регистра

Пример 2.16. Разработать на JK-триггерах регистр, работающий в двух режимах: 1) при управляющем сигнале V = 0 должна осуществляться операция сдвига в сторону старших разрядов, 2) при V = 1 должна осуществляться параллельная загрузка регистра внешними данными.

Функционирование такого регистра отражено в табл.2.16, где Di - i-й разряд параллельного входного кода.

Из рис.2.36 следует

J =VD +VQ

 

;

K =VD +VQ .

(2.28)

i

i

i1

 

i

i

i1

 

J*

Qi-1

 

 

 

K*

Qi-1

 

 

0

 

0

 

 

V

1

1

 

V

 

1

 

 

0

0

 

1

 

Di

 

Di

1

 

0

 

0

1

 

 

 

 

 

1

 

0

 

 

 

0

1

 

 

Qi

 

 

 

 

 

Qi

 

 

а

 

 

 

 

 

б

 

Рис.2.36. Карты Карно: а - для J*; б - для K*

 

Учитывая преобразования, проделанные в (2.27), можно записать

9

C1

RG

 

 

 

 

8

 

 

 

 

C2

 

 

 

 

 

 

 

Q0

13

 

 

 

 

1

 

 

 

 

 

DR

 

 

12

 

 

 

 

 

 

Q1

 

 

 

 

6

 

 

 

 

 

V

 

 

11

 

 

 

 

 

 

Q2

 

 

 

 

2

 

 

 

 

 

D0

 

 

10

 

 

 

3

 

 

 

D1

 

 

Q3

4

 

 

 

 

D2

 

 

 

 

 

5

 

 

 

 

 

D3

 

 

 

 

 

 

 

 

 

 

 

 

7 - 0 В ; 14 - + 5 В

Рис.2.37.

Функциональное

обозначение ИС

типа

К155ИР1,

555ИР1

и т.п.

Ki =

Ji

.

(2.29)

По уравнениям (2.28) и (2.29) реализована схема универсального регистра типа К155ИР1 (аналогичная схема реализована и в других сериях ИС). На рис.2.37 приведено функциональное обозначение этой ИС с указанием номеров выводов микросхемы, в табл.2.17 приведены режимы функционирования [19], а на рис.2.38 - полная схема регистра. Дополнительной особенностью ИС типа 155ИР1 является реализация независимых входов синхронизации для режима сдвига С1 и для режима параллельной загрузки С2, коммутация этих входов осуществляется входом установки режима V. Для большинства практических применений С1 = = С2, т.е. используется одинсинхросигнал.