
- •Регістри
- •4.1. Загальна характеристика регістрів
- •4.2. Установлювальні мікрооперації. Однофазний і парафазний спосіб записування інформації
- •4.3. Записування інформації від двох джерел
- •4.4. Зчитування інформації
- •4.5. Логічні мікрооперації в регістрах
- •4.6. Мікрооперації зсуву
- •3.7. Перетворення послідовного коду в паралельний і навпаки
- •Лічильники
- •5.1. Загальна характеристика лічильників
- •5.3. Двійкові реверсивні лічильники
4.6. Мікрооперації зсуву
Зсув
– це одночасне просторове переміщення
двійкового слова в розрядній сітці із
збереженням порядку слідування нулів
і одиниць. Регістри, призначені для
виконання мікрооперацій зсуву, називаються
регістрами зсуву або зсувовими.
Мікрооперації
зсуву використовують у процесі виконання
команд множення, ділення і нормалізації.
Крім того, за допомогою зсуву здійснюється
перетворення паралельного коду в
послідовний або навпаки (наприклад, при
обміні інформацією з магнітними
стрічками і дисками).
Зсув слова
може виконуватися вправо (у бік молодших
розрядів) або вліво (у бік старших
розрядів). Позначимо однорозрядні
мікрооперації зсуву вправо і вліво
символами R і L відповідно. Розрізнюють
правий і лівий арифметичний (Rа, Lа),
логічний (Rл, Lл) і циклічний (Rц, Lц)
зсуви слова.
Нехай в регістрі А
записано слово Аn An-1…A2 A1, де А1 – молодший
розряд; Аn – старший розряд. Символічно
мікрооперації зсуву записуються таким
чином:
арифметичні зсуви (знаковий
розряд не зсувається):
RGA:=Ra(A)=An 0 An-1…
A2; RGA:=La(A)=An An-2… A1 0;
логічні
зсуви (одночасно зсуваються всі
розряди):
RGA:=Rл(A)=0 An An-1… A2;
RGA:=Lл(A)= An-1 An-2… A1 0;
циклічні зсуви
(між старшим і молодшим розрядами є
кільцевий зв'язок):
RGA:=Rц(A)=А1 An An-1…
A2; RGA:=Lц(A)= An-1 An-2… A1
Аn.
Арифметичні та циклічні зсуви
переважно використовують при виконанні
команд в процесорах, а логічні зсуви
забезпечують перетворення послідовного
коду в паралельний і навпаки в пристроях
зв'язку з магнітними стрічками і
дисками.
Зсувні регістри проектують
на двоступеневих RS- (або JK-) або
D-тригерах з динамічним керуванням по
фронту . Такі тригери забезпечують
розділення під час процесів приймання
нової інформації в кожному розряді
та видачі (зсуву) старої.
Припустимо,
що в реверсивному регістрі мають
виконуватися паралельний запис слова
А за сигналом керування Yзп і зсуви
інформації вліво і вправо під впливом
керуючих сигналів Lл і Rл. Функції
збудження Sі і Rі для кожного розряду
регістра зсуву на двоступеневих
RS-тригерах мають вигляд:
Si=Yзп
AiÚRлQi+1ÚLл Qi-1; Ri=Yзп
Ú
Rл
Ú
Lл
(4.5)
Схема одного розряду регістра
зсуву на RS-тригерах згідно з рівнянням
(3.5) показана на рис.4.6,а.
Економічна
схема розряду регістра, в якій функція
на R-входи тригера утвориться інвертуванням
сигналу Si, показана на рис.4.6, б. Однак у
цьому випадку час записування даних
збільшується за рахунок затримки
інвертора.
Для регістра зсуву на
D-тригерах функції збудження мають
вигляд:
Di=Yзп AiÚ Rл Qi+1Ú LлQi-1.
(4.6)
Схема розряду
регістра зсуву на D-тригерах згідно з
рівнянням (4.6) показана на рис.4.6,
в.
Рис.4.6
Схема розряду регістра зсуву: а – на
RS-тригері; б – з інвертором на вході R;
в – на D-тригері
Приклад побудови
реверсивного трирозрядного регістра
зсуву на D-тригерах з динамічним керуванням
показаний на рис.4.7.
Рис.4.7
Схема реверсивного регістра зсуву на
D-тригерах
Реверсивний регістр зсуву працює таким чином. При значенні сигналу Yзп=1 в регістр записується інформація паралельним однофазним кодом. При значенні сигналу Rл=1 інформація, що зберігається, одночасно зсувається у бік молодших розрядів, при цьому розряд Q3 обнуляється. При значенні сигналу Lл=1 інформація в регістрі одночасно зсувається у бік старших розрядів, при цьому розряді Q1 обнуляється. Запис і зсув інформації відбуваються по фронту синхроімпульсу.