Регистром называется последовательное устройство, предназначенное для записи, хранения и (или) сдвига информации, представленной в виде многоразрядного коде.
В соответствии с данным определением в общем случае регистр может выполнять следующие микрооперации над кодовыми словами:
1) установка в исходное состояние (запись нулевого кода);
2) запись входной информации в последовательной форме;
3) запись входной информации в параллельной форме;
4) хранение информации;
5) сдвиг хранимой информации вправо или влево;
6) выдача хранимой информации в последовательной форме;
7) выдача хранимой информации в параллельной форме.
Любой N–разрядный регистр состоит из N однотипных ячеек – разрядных схем, выходной сигнал каждой из которых ассоциируется с весовым коэффициентом соответствующего разряда двоичного кода. При этом каждая разрядная схема, как любое последовательное устройство, состоит из триггерной подсистемы (элемента памяти) и некоторой комбинационной схемы, преобразующей входные воздействия и состояния триггерной подсистемы в выходные сигналы регистра.
Регистры могут быть классифицированы по различным признакам. По способу приема информации регистры подразделяют на:
– параллельные (статические), в которые информация записывается и считывается только в параллельной форме;
– последовательные (сдвигающие), и которые информация записывается и считывается только в последовательной форме;
– последовательно–параллельные, в которые информация записывается или считывается как в параллельной, так и в последовательной формах.
По числу каналов передачи информации регистры подразделяют на:
– парафазные, в которых информация записывается и считывается в прямом (Q) и обратном () кодах;
– однофазные, в которых информация записывается и считывается либо в прямом (Q), либо в обратном () коде.
По способу тактирования регистры подразделяют на:
– однотактные, управляемые одной управляющей последовательностью импульсов;
– многотактные, управляемые несколькими управляющими последовательностями импульсов.
Параллельный регистр предназначен для выполнения только 1-й, 3-й, 4-й и 7-й из перечисленных микроопераций над кодовыми словами, т. е. обрабатывает информацию только в параллельной форме. Поэтому образующие его разрядные схемы не связаны между собой. Простейший параллельный регистр может быть выполнен на RS–триггерах приведена на рисунке 1.
Рисунок 1 – Схема параллельного регистра на RS–триггерах
Он содержит N триггеров, входы синхронизации которых объединены между собой. На его входы ,...,и ,...,информация подается в прямом и обратном кодах, а с выходов ,...,снимается только в обратном коде. Следовательно, согласно приведенной выше классификации, это однотактный регистр с парафазными входами и однофазным инверсным выходом. Запись информации в такой регистр выполняется за один такт синхронизации.
Если для записи в данном регистре используется только прямой или обратный входной код, то запись информации выполняется за два такта синхронизации. По первому такту необходимо сбросить или установить все триггеры регистра (подачей на соответствующие входы активного логического уровня), а по второму – записать в регистр новую информацию.
Если в данной структуре RS–триггеры заменить на D–триггеры, получим однотактный регистр с однофазным входом. Очевидно, что быстродействие такого регистра при использовании однофазного входного сигнала будет в два раза выше, так как для записи информации необходим только один импульс синхронизации.
Рисунок 2 – Схема параллельного регистра на D–триггерах
Более подробно структуру параллельного регистра рассмотрим на примере ИС типа 555ИР15 (см. рис. 3).
Это 4-разрядный однотактный параллельный регистр с однофазными входом и выходом. Он включает четыре однотипных разрядных схемы, в каждую из которых входят ЛЭ 2х2И–ИЛИ, D–триггер и выходной элемент с тремя выходными состояниями (0, l, Z), который в отличие от обычного ЛЭ способен формировать на выходе, кроме сигналов лог. 0 и лог. 1, так называемое высокоимпедансное состояние, при котором выход триггера отключается от вывода Q – разрядной схемы.
Сигналы, управляющие работой разрядных схем, формируются из входных сигналов ИС единым логическим блоком. Для упрощения на рис. 6.3 показана только одна разрядная схема.
Управляющие входы EZ1, ЕZ2 равнозначны и предназначены для перевода выходов регистра в высокоимпедансное состояние (состояние Z). При ЕZ1+ЕZ2=1 на управляющий вход выходного элемента DD8 (Z–элемент) поступает сигнал лог. 0, отключающий выходы триггеров разрядных схем от выходов ИС. Данный режим необходим для объединения выходов нескольких регистров.
Рисунок 6.3 – Фрагмент структурной схемы параллельного регистра типа 555ИР15
Входы Е1, Е2 также равнозначны и обеспечивают перевод регистра из режима приема в режим хранения информации. Сигналы данных входов управляют работой элементов 2х2И–ИЛИ. При Е1+Е2=1 от входного логического блока на один из входов верхнего элемента 2И подается пассивный, а нижнего элемента 2И – активный логические сигналы. Вследствие этого выходной сигнал верхнего элемента зависит от сигнала на его втором входе, куда подключен выход Q D–триггера DD7. Выходной сигнал нижнего элемента 2И не зависит от сигнала на втором его входе. Поэтому по фронту импульса синхронизации информации с выхода Q D–триггера DD7 переписывается в этот же триггер. Осуществляется режим хранения информации.
При Е1 + Е2=0 пассивный логический уровень подается на один из входов нижнего элемента 2И, и выходной сигнал элемента 2x2 И–ИЛИ определяется напряжением второго входа нижнего элемента 2И, к которому непосредственно подключен внешний входной вывод D. По сигналу синхронизации происходи запись новой информации в D–триггер.
Отметим, что в данном включении элемент 2х2 И–ИЛИ выполняет рольмультиплексора, управляемого одноразрядным адресным словом и обеспечивающего подключение входа D–триггера либо к входному выводу D, либо к собственному выходу Q.
Вход R используется для одновременного сброса триггеров всех разрядных ячеек. Условное графическое обозначение рассмотренного регистра приведено рис. 4.
Рисунок 4 – Условное графическое обозначение параллельного регистра типа 555ИР15
Используя различные входные комбинационные схемы, можно разработать разрядные схемы, реализующие необходимые алгоритмы работы параллельных регистров. В качестве примера на рис. 2 приведена разрядная схема, обеспечивающая запись информации с двух направлений.
Рисунок 5 – Разрядная схема параллельного регистра, реализующая запись с двух направлений
При C0=l, C1 = 0 в триггер разрядной схемы будет записано значение сигнала X, а при С0=0, C1 = l –значение сигнала Y. Используя такие разрядные схемы, можно построить многотактный параллельный регистр.