Исследование работы последовательного сдвигающего регистра на D-триггерах

Сдвигающие, или последовательные, регистры – это регистры выполняющие сдвиг двоичной информации вправо или влево, в зависимости от управляющих сигналов.

Сдвиг вправо заключается в том, что значение, хранящееся в i-ом разряде, переходит в (i+1)-й разряд; из (i+1)-ого в (i+2)-ой и т.д. Из закона функционирования сдвигающего регистра следует, что в каждом разряде регистра одновременно с хранением цифры, имевшейся до сдвига и предназначенной для передачи в следующий разряд, необходимо предусматривать возможность приема новой цифры из предыдущего разряда. Эти условия выполняются при построении сдвигающих регистров на двухступенчатых синхронных триггерах, работающих в режиме D, или D-триггерах с динамическим входом синхронизации.

На рисунке 4а, сдвигающий (последовательный) регистр построен на D-триггерах с динамическим синхронизирующим входом, которые соединены последовательно таким образом, что сигнал (Qi) с выхода триггера старшего разряда регистра поступает на информационный вход Di–1 триггера последующего младшего разряда регистра. Все триггеры управляются общим входом синхронизации. Такое соединение D-триггеров обеспечивает сдвиг в регистре информации вправо, если управление сдвигом осуществлять синхронизирующими сигналами, называемыми управляющими сигналами сдвига вправо – CLK. Установка регистра в состояние "0000" производится управляющим сигналом CLR. Информационный вход D используют для подачи двоичного слова последовательно разряд за разрядом (первым в регистр записывается старший разряд).

Рисунок 4а - Сдвигающий (последовательный) 4-х разрядный регистр, построенный на D-триггерах

В программе EWB соберем схему простейшего сдвигового регист­ра. Соединим четыре D-триггера последовательно друг за другом так, что сигнал с выхода Qi первого будет подаваться на вход D1, второго триггера и т.д. (рисунок 4); данные, т.е. 1 или 0 в соответствующем разряде, бу­дем вводить клавишей [D]; на выводы синхронизации всех триггеров С одновременно будем подавать тактовые импульсы от клавиши [Space]. Следя за состояниями поразрядных индикаторов Y0-Y3, будем судить о работе регистра. Пусть требуется ввести в регистр число 510 = 01012. Начнем с нулевого состояния (Y0=Y1=Y2=Y3=0). Подадим на вход первого триггера D=1 и [Space] =1 и включим моделирование: получим Y0=1. Если дважды три раза нажать на [Space], то все разряды постепенно заполнят­ся единицами, но это будет 11112 = 1510 , а не то, что требовалось. Очи­стим регистр. Это можно выполнить разными способами, выберем, пожалуй, наиболее простой, не выключая моделирование, сделаем D=0 и [Space] =0 и, нажимая многократно [Space], «продвинем» 0 по всем разрядам так же, как до этого «двигали» 1. По моделированию устройства видно, что сдвиговый регистр на каждом новом тактовом импульсе принимает одну новую цифру, сдвигая ранее запомненные (в том числе и нули) на один разряд, чтобы поместить новую.

Движение в регистре цифр напоминает движение людей через турникет (такты) на эскалатор метро по одному (1) друг за другом с интервалами (0). Не случайно подобные схемы называют на английском FIFO (First-ln-First-Out, т.е. первым вошел - первым вышел). Очевидно, что полученные ре­зультаты обусловлены работой D-триггера, выход Q которого повторяет входной сигнал D, пока С=1, и запоминает логический уровень входного сигнала при С=0 («прозрачная за­щелка»). Отсюда понятно, что для решения поставленной задачи надо, манипулируя клавишами D и [Space], аналогично описанному, «продви­гать» в регистр ту последовательность, которая задана: 0101.

Если ис­пользовать в подобном регистре D-триггеры с предустановками по S входу и R входу, то пользуясь ими можно установить единицы во все разряды сразу с помощью входа S(set) или очистить весь регистр - R(reset). Соответствующая схема показана на рисунке 3б,в. Для удобства наблюдения далее вместо логических индикаторов (рисунок 4б) включим семисегментный индикатор с дешифратором HL1 (рисунок4в). При согла­сованном включении входных разрядов индикатора и выходных разрядов регистра, занесение в регистр числа 01012 даст на дисплее цифру 5 (рисунок 4в)

 

Рисунок 4б,в - Логическая структура четырехразрядного регистра сдвига.

 

 

Рис. 3Сдвигающий 4-х разрядный регистр, построенный на D-триггерах

 

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: