Регистры
Регистр – цифровой узел, функцией которого является фиксация многоразрядного двоичного кода и (возможно) выполнение некоторых преобразований над этим кодом.
Элементами структуры регистра являются хронируемые триггеры. Кроме триггеров, регистр может содержать вспомогательные схемы, которые обеспечивают выполнение следующих операций:
– сброс регистра (установку всех его триггеров в состояние 0);
– прием (запись) в регистр двоичного кода;
– выдачу (чтение) из регистра зафиксированного в нем кода;
– сдвиг содержимого регистра на заданное количество разрядов влево (в сторону старших) или вправо (в сторону младших разрядов);
– преобразование последовательного кода в параллельный или параллельного в последовательный и др.
Все регистры по их функциональным свойствам можно разделить на две категории: регистры памяти (аккумуляторы, накопители) и сдвигающие регистры.
Регистры памяти
Регистр памяти – регистр, функцией которого является прием и хранение информации, представленной двоичными кодами. Принцип построения регистра памяти иллюстрирует рис. 1.29, а. Такой регистр представляет собой линейку из n + 1 триггеров, скажем типа D, динамические синхровходы которых объединены. Поэтому цифры кода А = anan–1…a0 на информационных входах сигналом t = 1 одновременно фиксируются в триггерах регистра. На прямых выходах триггеров выставлены цифры выходного кода (содержимого регистра) S = snsn–1…s0. Обычно ИС регистров не имеют инверсных выходов.
Для примера рассмотрим ИС 1533ИР15 четырехразрядного регистра, УГО которого приведено на рис. 1.29, б. Здесь D0, D1, D2, D3 – информационные входы регистра, хронируемые сигналом на общем прямом динамическом С-входе, Q0, Q1, Q2, Q3 – прямые информационные выходы регистра. Сигналами на инверсных входах М1 и М0 задают режим работы регистра. Запись кода в регистр по сигналу С = 1 производится при ùМ1 × ùМ0 = 1. А при М1 Ú М0 = 1 регистр находится в режиме хранения. Сигналы на инверсных входах EZ1 и EZ0 управляют состоянием выходов регистра. При ùEZ1 × ùEZ0 = 1 выходные усилители регистра открыты, и его содержимое выставлено на Q3, Q2, Q1, Q0. При EZ1 Ú EZ0 = 1 усилители закрыты, и триггеры регистра отключены от его выходов. R – общий прямой асинхронный вход для установки всех триггеров регистра в нулевое состояние. Для построения регистра памяти на 4 – m разрядов необходимо взять m ИС 1533ИР15, у которых соединить параллельно одноименные управляющие входы.
Рис. 1.29. Принцип построения регистра памяти и УГО четырехразрядного регистра
Регистры сдвига
Регистр сдвига – регистр, содержимое которого с каждым импульсом синхронизации сдвигается на один разряд (влево или вправо). Регистры сдвига различают по следующим признакам:
– по направлению сдвига информации на однонаправленные (или только влево, или только вправо) и реверсивные;
– по способу ввода и вывода информации на последовательные, параллельные и комбинированные.
На рис. 1.30, а показана функциональная схема простейшего регистра сдвига с последовательным вводом данных по входу DS и параллельным (по выходам Q3, Q2, Q1, Q0) или последовательным (по выходу QS = Q3) выводом информации. Допустим, что необходимо в этот регистр записать код А = a3a2a1a0. Для этого на вход DS следует подать цифру a3. Сигналом t = 1 она будет зафиксирована в триггере Т0. Далее на вход DS подается цифра a2. Сигналом t = 1 цифра a3 из Т0 переписывается в триггер Т1, а в триггер Т0 записывается цифра a2. Таким образом, за четыре такта код А фиксируется в регистре и параллельно выставляется на выходы Q3, Q2, Q1, Q0 (тем самым произведено преобразование последовательного кода в параллельный). Через выход QS сигналами t = 1 осуществляется последовательный вывод содержимого регистра. Такой вывод можно совместить с последовательным вводом в регистр нового кода. На рис. 1.30, б для примера приведено УГО ИС 1554ИР46, в которую входят два автономных 4‑разрядных регистра сдвига с прямыми асинхронными входами R.
Рис. 1.30. Функциональная схема простейшего регистра сдвига, УГО двух автономных 4-разядных регистров сдвига с прямыми асинхронными входами R, УГО 4-разрядного регистра сдвига с параллельной или последовательной записью, с параллельным или последовательным выходом
На рис. 1.30, в показано УГО ИС 533ИР25 4-разрядного регистра сдвига с параллельной или последовательной записью, с параллельным или последовательным выводом. Сигналом EZ = 1 выводы параллельного кода Q переводятся в третье состояние. Но вывод последовательного кода QS не зависит от сигнала EZ. Этим обеспечивается возможность наращивать разрядность сдвигающих регистров на данной ИС. Сигналом L = 1 код на входах D параллельно записывается в регистр. При L = 0 единичными сигналами на динамическом C-входе в регистр через вход DS заносятся цифры последовательного кода.
Реверсивные сдвигающие регистры допускают управление направлением сдвига их содержимого. Принцип построения реверсивных регистров сдвига поясняет рис. 1.31, а. Сигналом M = 1 задается направление сдвига влево. При этом ввод последовательного кода в регистр производится через вход DS0 единичными сигналами на входе C. Сигналом М = 0 задается направление сдвига вправо, и входом для последовательного кода будет DS3. Информационный вход Dk каждого из триггеров через мультиплексор, управляемый сигналомМ, подключается либо к выходу Qk–1 триггера младшего разряда, либо к выходу Qk+1 триггера старшего разряда регистра. Для информационного входа триггера T0 роль Qk–1 выполняет вход DS0, а для информационного входа триггера T3 в качестве Qk+1 выступает вход DS3. На рис. 1.31, б для примера приводится УГО ИС 533ИР11. Это 4‑разрядный реверсивный сдвиговый регистр. Управление режимом работы регистра производится сигналами М1 и М2 (табл. 1.22).
Рис. 1.31. Реверсивный регистр сдвига, УГО реверсивного сдвигового регистра
Таблица 1.22
Сигналы управления режимами работы регистра
M1 | M2 | Режим |
0 | 0 | Хранение |
0 | 1 | Запись параллельного кода по входам D сигналом C = 1 |
1 | 0 | Сдвиг влево сигналом C = 1 с вводом последовательного кода через вход DS0 |
1 | 1 | Сдвиг влево сигналом C = 1 с вводом последовательного кода через вход DS3 |