Регистры, Параллельные регистры, Последовательные регистры

II. Цифровые регистры

Цифровые регистры это устройства, предназначенные для хранения и преобразования многоразрядных двоичных чисел. Запоминающими элементами регистра являются триггеры, число которых равно разрядности хранимых чисел. Кроме триггеров регистры содержат также комбинационные схемы, предназначенные для ввода и вывода хранимых чисел, преобразования их кодов, сдвига кодов на то или иное число разрядов. Информация в регистрах хранится, как правило, в течение некоторого количества тактов

Различают параллельные регистры (регистры памяти), последовательные регистры (регистры сдвига), параллельно-последовательные регистры (например, ввод в параллельном коде, вывод – в последовательном и наоборот).

В регистрах памяти число вводится (выводится) за один такт, а в регистрах сдвига – за n тактов, где n – разрядность чисел.

По способу ввода-вывода регистры подразделяются на однофазные и парафазные. В однофазных ввод (и вывод) производится только в прямом или только в обратном коде, в парафазных возможен ввод и вывод как в прямом, так и в обратном кодах.

В параллельных регистрах можно производить поразрядные логические операции с хранимым числом и вновь вводимым. Вид логических операций зависит от типа триггеров, составляющих регистр, и комбинации сигналов управления.

Регистры сдвига применяются для преобразования последовательного кода в параллельный (и обратно), для умножения и деления многоразрядных чисел и т. д.

Видео

Двунаправленный регистр сдвига

  • Если двоичное число сдвигается влево на одну позицию, то это эквивалентно умножению исходного числа на 2. Аналогично, если двоичное число сдвигается вправо на одну позицию, то это эквивалентно делению исходного числа на 2.

  • Следовательно, если мы хотим использовать сдвиговый регистр для умножения и деления заданного двоичного числа, то мы должны иметь возможность перемещать данные влево или вправо.

  • Такой регистр называется двунаправленным регистром. Четырехбитный двунаправленный регистр сдвига показан на рис.

  • Имеется два последовательных входа, а именно последовательный ввод данных правого сдвига DR и последовательный ввод данных левого сдвига DL вместе с входом выбора режима (M).

Если двоичное число сдвигается влево на одну позицию, то это эквивалентно умножению исходного числа на 2. Аналогично, если двоичное число сдвигается вправо на одну позицию, то это эквивалентно делению исходного числа на 2.

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

Такой регистр называется двунаправленным регистром. Четырехбитный двунаправленный регистр сдвига показан на рис.

Имеется два последовательных входа, а именно последовательный ввод данных правого сдвига DR и последовательный ввод данных левого сдвига DL вместе с входом выбора режима (M).

операция

SN Состояние операция
1 С М = 1 — сдвиг вправо

Если M = 1, то логические элементы AND 1, 3, 5 и 7 включены, тогда как остальные логические элементы AND 2, 4, 6 и 8 будут заблокированы.

Данные в D R сдвигаются вправо по битам от FF-3 к FF-0 при применении тактовых импульсов. Таким образом, при M = 1 мы получаем последовательную операцию правого сдвига.

2 С М = 0 — сдвиг влево

Когда регулятор режима М подключен к 0, тогда логические элементы И, 2, 4, 6 и 8 включены, а 1, 3, 5 и 7 отключены.

Данные в D L сдвигаются влево по битам от FF-0 до FF-3 при применении тактовых импульсов. Таким образом, при M = 0 мы получаем последовательную операцию правого сдвига.

Если M = 1, то логические элементы AND 1, 3, 5 и 7 включены, тогда как остальные логические элементы AND 2, 4, 6 и 8 будут заблокированы.

Данные в D R сдвигаются вправо по битам от FF-3 к FF-0 при применении тактовых импульсов. Таким образом, при M = 1 мы получаем последовательную операцию правого сдвига.

Когда регулятор режима М подключен к 0, тогда логические элементы И, 2, 4, 6 и 8 включены, а 1, 3, 5 и 7 отключены.

Данные в D L сдвигаются влево по битам от FF-0 до FF-3 при применении тактовых импульсов. Таким образом, при M = 0 мы получаем последовательную операцию правого сдвига.

Последовательный вход Параллельный выход

  • При таких типах операций данные вводятся последовательно и выводятся параллельно.

  • Данные загружаются по крупицам. Выходы отключены, пока данные загружаются.

  • Как только загрузка данных завершится, все триггеры содержат свои необходимые данные, выходы будут включены, чтобы все загруженные данные стали доступны по всем выходным линиям одновременно.

  • Для загрузки четырехбитного слова требуется 4 такта. Следовательно, скорость работы в режиме SIPO такая же, как в режиме SISO.

При таких типах операций данные вводятся последовательно и выводятся параллельно.

Данные загружаются по крупицам. Выходы отключены, пока данные загружаются.

Как только загрузка данных завершится, все триггеры содержат свои необходимые данные, выходы будут включены, чтобы все загруженные данные стали доступны по всем выходным линиям одновременно.

Для загрузки четырехбитного слова требуется 4 такта. Следовательно, скорость работы в режиме SIPO такая же, как в режиме SISO.

Последовательные регистры

Последовательные или сдвигающие регистры выполняют сдвиг информации i-ro разряда в (i+l)-ft разряд (сдвиг вправо) или в (i-l)-fi разряд (сдвиг влево). Поэтому для построения таких регистров могут использоваться только синхронные триггеры с динамическим управлением записью или двухступенчатые синхронные триггеры со статическим управлением записью. Это обусловлено тем, что в каждом i-м разряде последовательного регистра одновременно происходит передача и запись новой информации [2, 4].

Функциональная схема последовательного n-разрядного сдвигающего регистра на D-триггерах с динамическим управлением записью и ее УГО представлены на рис. 3.23 [4].

Схема сдвигает информацию вправо на один разряд, причем DR — вход информационной загрузки, QR — информационный выход. Сдвиг влево на один разряд реализуется аналогично — для этого достаточно изменить направление связей между триггерами, подключая выход D-триггера i-ro разряда к входу триггера (i-l)-ro разряда (соседнего слева).

Рис. 3.23. Функциональная схема и УГО последовател

Рис. 3.23. Функциональная схема и УГО последовательного n-разрядного сдвигающего регистра на D-триггерах

В общем случае можно построить регистр со сдвигом на любое (фиксированное или настраиваемое) количество разрядов. Работу схемы поясним на примере временной диаграммы 4-разрядного сдвигающего регистра (рис. 3.24).

Рис. 3.24. Временная диаграмма работы 4-разрядного

Рис. 3.24. Временная диаграмма работы 4-разрядного сдвигающего регистра

В начальный момент времени на всех выходах регистра логический ноль, обусловленный активным уровнем сигнала на входе R. Далее, в отсутствии сигнала на входе R и при низком уровне сигнала на синхронизирующем входе, все разряды регистра находятся в режиме хранения. Хранящееся значение с выхода i-ro разряда передается на вход триггера в (i+1 )-м разряде. В момент активного (в данном случае переднего) фронта сигнала на синхронизирующем входе каждый из триггеров устанавливается в состояние, соответствующее действовавшему сигналу на входе D. В результате информация в регистре оказывается сдвинутой вправо на один разряд. В следующем такте эта информация окажется сдвинутой еще на один разряд и т.д. [4].

При построении сложных схем могут использоваться последовательные регистры со сдвигом как вправо, так и влево. Такие регистры называют реверсивными. Пример функциональной схемы трехразрядного реверсивного регистра на основе D-триггеров с динамическим управлением записью приведен на рис. 3.25 [4].

Рис. 3.25. Функциональная схема трехразрядного рев

Рис. 3.25. Функциональная схема трехразрядного реверсивного регистра

При V=1 включается верхняя часть элементов И-ИЛИ (1, 3, 5) и регистр выполняет сдвиг вправо, а при V=0 нижняя часть этих же элементов включает цепи сдвига влево.

Параллельно-последовательные и последовательно-параллельные регистры могут быть построены на триггерах с динамическим управлением записью или на двухступенчатых синхронных триггерах со статическим управлением записью. В регистрах этого типа параллельная запись совмещается с последовательной выдачей или наоборот. Первое ключевое слово в названии означает способ записи, а второе — способ выдачи [2, 4, 8]. Например, если в схеме последовательного регистра на рис. 3.23 одновременно считывать информацию с выходов всех триггеров, то получим схему последовательно-параллельного регистра. Для построения параллельно-последовательного схемы могут потребоваться дополнительные логические цепи для параллельной загрузки. Например, на функциональной схеме n-разрядного параллельно-последовательного регистра (рис. 3.26) комбинированные D+RS-триггеры дополнены логикой И-ИЛИ на входе [4]. При V=1 задействуется нижняя часть элементов И-ИЛИ, информация со входов Di по переднему фронту сигнала С параллельно записывается в триггеры. При V=0 задействуется верхняя часть элементов И-ИЛИ, и каждый раз с приходом очередного активного фронта сигнала на входе С содержимое регистра сдвигается вправо (вниз) на один разряд. Освобождающиеся верхние разряды в приведенной схеме заполняются нулями.

Рис. 3.26. Функциональная схема п-разрядного парал

Рис. 3.26. Функциональная схема п-разрядного параллельно-последовательного регистра

Последовательные регистры могут использоваться для преобразования формы представления чисел из последовательной в параллельную и наоборот, для выполнения различных преобразований через выполнение сдвиговых операций, в том числе умножение или деление на 2п, для задержки входной информации на п тактов и других целей.

Теги

Adblock
detector