Обычно регистр
хранения дополняется схемами выполняющими операцию сдвига,
образуя регистр хранения и сдвига. На таких регистрах
осуществляется сдвиг двоичных чисел и двоичных кодов. Сдвиг двух чисел
выполняется в сторону старших и младших разрядов (соответственно сдвиг
влево и сдвиг вправо). Аналогично осуществляется и сдвиг двоичных кодов:
влево от разряда со старшим номером в сторону разряда с меньшим
номером, вправо - наоборот. Сдвиги могут осуществляться на один или
несколько разрядов одновременно. В любом из указанных случаев каждый
запоминающий элемент Тi регистра должен: передать хранимую
информацию на элемент Ti+1 или Ti-1
при сдвиге на один разряд одновременно (Ti+k
или Ti-k при сдвиге
на k разрядов одновременно); изменить свое состояние за счет приема
информации от триггера Ti+1 или Ti-1
при сдвиге на один разряд одновременно (Ti+ k
или Ti-k при сдвиге
на k разрядов одновременно). 
Передача с
триггера
Тi и изменение его состояния не могут происходить
одновременно, поэтому основная трудность реализации операции сдвига
заключается в разделении во времени выполнение указанных этапов в каждом
разряде регистра. В потенциальной системе интегральных элементов
эта трудность исключается за счет использования синхронных
двухступенчатых триггеров (RS, JK- триггеры) или синхронных триггеров с
динамическим управлением записью (JK, D- триггеры). 
Внутренняя
организация таких схем предусматривает разделение во времени этапов
приема входной информации и смены выходной. В них по переднему фронту
синхронизирующего сигнала происходит прием информации, а по заднему -
изменение состояния. Схему регистра сдвига вправо на один разряд можно
представить след. обр.:
Данный регистр
построен на синхронных двухступенчатых триггерах с парафазными цепями
выдачи и приема. В каждой паре разрядов осуществляется парафазная
передача с выходов i-го разряда на вход i+1 разряда регистра. Сдвиг
происходит подачей одного импульса на шину сдвига "C", объединяющую
синхронизирующие входы всех триггеров регистра.
Любой регистр
сдвига характеризуется временем сдвига (tсдв.) на один
или несколько разрядов одновременно. Этот временной параметр равен
отрезку времени от момента поступления импульса по шине "C" до момента
установления сдвинутого кода в регистре. Длительность сдвига
определяется динамическими параметрами используемых элементов хранения.
Регистры
сдвига обеспечивающие сдвиг влево или вправо на k≥1 разрядов
называются реверсивными. Регистры сдвига могут иметь не одну цепь
сдвига, несколько цепей, каждая из которых обеспечивает сдвиг (например
на 1, 2, 4, 8 разрядов одновременно). Принципы построения регистра и
время сдвига при этом не изменяются, увеличивается лишь объем
логического оборудования. Схемы регистров хранения и сдвига
строятся на RS, JK и D -
триггерах. На схему регистра оказывает влияние использование того или
иного элемента хранения. Так, в регистрах построенных на D - триггерах,
используется не парафазная паредача, а однофазная (обеспечивающая сдвиг
вправо на один разряд). Регистры хранения и сдвига широко
используются для преобразования последовательного кода в параллельный и
наоборот. Преобразование последовательного кода в параллельный на
регистре сдвига вправо требует подачи последовательного кода на вход
1-го разряда регистра (при регистре сдвига влево - на вход n-го
(последнего) разряда) и подаче сигнала по шине "C". Преобразование
параллельного кода в последовательный на регистре сдвига влево
потребуется синхронная подача сигнала по шине сдвига "C" и сигнала
выдачи кода с 1-го или последнего разряда регистра.
|