Регистром (от английского слова register — журнал для записи) называется устройство, состоящее из триггеров и предназначенное для записи, хранения и выдачи информации. Регистры являются важными функциональными узлами цифровой техники, в частности схем управления промышленных роботов. В предыдущей работе уже рассказывалось, как с помощью триггеров можно записывать двоичные числа.
Регистры могут собираться и на основе электромеханических элементов, например переключателей. В этом случае одно состояние переключателя условно принимается за нулевое, а другое, противоположное,— за единичное. (Подобный регистр будет использован для ввода двоичного кода в схему управления учебного робота.)
Различают параллельные и последовательные регистры. Параллельный регистр состоит из триггеров, каждый из которых имеет свой информационный вход и выход. Такие регистры используются для реализации оперативной памяти в цифровых системах.
В последовательных регистрах имеется один вход для последовательной передачи информации от одного триггера к другому. Запись информации осуществляется путем сдвига двоичных кодов, поступающих на первый триггер регистра, поэтому его также называют регистром сдвига. Сдвиг может проходить вправо и влево. Например, код 1011 при последовательном сдвиге вправо будет меняться следующим образом: 0101, 0010, 0001 и 0000, т. е. единица будет последовательно перемещаться на один разряд вправо. При сдвиге влево этот же код претерпит следующие изменения: 0110, 1100, 1000, 0000.
Возможен кольцевой режим сдвига. Он получается, если соединить выход последнего триггера со входом первого триггера. В этом случае единица кода 1000 будет «бегать по кругу» и после четырех импульсов сдвига появится первоначальный код — 1000.
Один и тот же регистр может работать как в параллельном, так и в последовательном режиме. Именно такой универсальный регистр, состоящий из четырех триггеров, работающих в режиме 5-триггера при записи информации и в режиме D-триггера при сдвиге вправо, мы будем использовать в схеме управления учебного робота. Предварительная установка регистра в нулевое состояние или сброс информации осуществляется подачей импульса на объединенные входы R. Параллельная запись информации производится подачей сигналов на входы S каждого 5-триггера.
Режим сдвига осуществляется только в том случае, когда импульсы подаются на объединенные входы С D-тригтеров. Триггеры между собой соединены таким образом, что прямой выход каждого из них соединяется со входом D следующего, расположенного справа триггера. Рассмотрим, как осуществляется сдвиг вправо. Допустим, имеется код 1000. На входах D, начиная с первого, имеются следующие сигналы: 0, поданный по цепи кольцевой связи с четвертого триггера; 1, поданная на второй триггер с выхода первого триггера; 0, поданный на третий триггер с выхода второго; 0, поданный на четвертый триггер с выхода третьего. При подаче импульса одновременно на все четыре объединенных входа С получится новый код 0100, т.е. единица переместится на один разряд вправо. Нетрудно понять, что следующий импульс переместит 1 еще на один разряд вправо.
(Подобный регистр, собранный на микросхеме К155ТМ2, будет использоваться для смены программы работы электропривода с ЧПУ.)
Как говорилось ранее, в одном корпусе микросхемы К155ТМ2 содержится два одинаковых триггера, которые могут работать в режиме D- и RS-триггера. Следовательно, для получения четырехразрядного регистра достаточно двух корпусов микросхем этого типа. В последовательно-параллельном регистре, работа которого рассматривается ниже, используется еще один корпус. Один из триггеров третьего корпуса служит для получения прямоугольных импульсов, поступающих на вход С регистра. При поочередной подаче нулевых сигналов на входы R и S переключателем SA6 происходит скачкообразное изменение напряжения на выходах триггера. Непосредственно с помощью переключателя напряжение, соответствующее нулевому и единичному сигналам, подавать нельзя, так как в момент переключения из-за плохого контакта может возникнуть несколько импульсов или, как говорят, появляется «дребезг» контактов. В результате произойдет сдвиг не на один, а на несколько разрядов, число которых зависит от случайных причин. При использований триггера происходит его перебрасывание по первому же нулевому сигналу, поступающему на один из входов, в результате на выходе появляется четкий перепад напряжения.
Триггеры Т2, ТЗ, Т4 и Т5 первого, второго и третьего корпусов образуют четырехразрядный регистр. Триггер Т6 можно использовать для пятого разряда регистра, если возникнет необходимость. Для индикации состояния триггеров используются светодиоды, подключаемые к их инверсным выходам. При таком включении, если триггеры находятся в единичном состоянии, диоды светятся.
Электромеханические переключатели SA1 — SA4 служат для параллельной записи информации в регистр. Переключателем SA5 осуществляется установка триггеров регистра в нулевое положение. (Три четырехразрядных параллельно-последовательных регистра будут использоваться для управления работой электродвигателя учебного робота.)
Соберите схему четырехразрядного параллельного регистра из трех корпусов микросхемы K155TM2. Для облегчения проверки выполнения отдельных функций схемы процесс сборки удобно проводить в следующей последовательности:
подключите цепь питания ко всем трем корпусам; подключите индикаторы к инверсным выходам триггеров Т2— Т5; подключите цепи сброса и задания кода от переключателей SA1 — S/15. Проверьте работу параллельного регистра, задавая нужный код переключателями SA1 — SA4 и устанавливая его в нулевое состояние с помощью переключателя SA5. Светящиеся светодиоды должны показывать единичное состояние триггеров.
2. Соберите схему четырехразрядного последовательного регистра. Для этого в предыдущей схеме выполните следующие дополнительные соединения: прямые выходы триггеров (вывод 5 и 9) соедините с информационными входами D соседних триггеров, расположенных справа (выводы 2 и 12); соедините между собой синхронизирующие входы С; соберите цепи вспомогательного триггера 77, являющегося источником синхронизирующих импульсов. Проверьте его работу с помощью вольтметра, после чего соедините его выход с объединенным входом С.
Проверьте работу последовательного регистра, осуществляющего сдвиг кода вправо. Для этого установите регистр в нулевое положение, задайте наиболее удобный для проверки код 1000 и осуществите поразрядный сдвиг единицы вправо.
(Собранный регистр не разбирайте, так как он будет использоваться при изготовлении цифроаналогового преобразователя.)