Регистр (цифровая техника)

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
4-х разрядный сдвиговый регистр, преобразователь последовательного кода в параллельный и обратно

Регистр — устройство, используемое для хранения n-разрядных двоичных данных и выполнения преобразований над ними.

Регистр представляет собой упорядоченный набор триггеров, обычно D-, число n которых соответствует числу разрядов в слове. С каждым регистром обычно связано комбинационное[уточнить] цифровое устройство, с помощью которого обеспечивается выполнение некоторых операций над словами.

Основой построения регистров являются D-триггеры, RS-триггеры.

Операции в регистрах[править | править вики-текст]

Типичными являются следующие операции:

Классификация регистров[править | править вики-текст]

Регистры классифицируются[1] по следующим видам:

В свою очередь сдвигающие регистры делятся:

  • по способу ввода-вывода информации:
    • параллельные: запись и считывание информации происходит одновременно на все входы и со всех выходов[15];
    • последовательные: запись и считывание информации происходит в первый триггер, а та информация, которая была в этом триггере, перезаписывается в следующий — то же самое происходит и с остальными триггерами[16][17];
    • комбинированные;
  • по направлению передачи информации:
    • однонаправленные;
    • реверсивные[18][19].

Типы регистров[править | править вики-текст]

Регистры различают по типу ввода (загрузки, приёма) и вывода (выгрузки, выдачи) информации:

  1. С последовательным вводом и выводом информации
  2. С параллельным вводом и выводом информации
  3. С параллельным вводом и последовательным выводом. Например: SN74LS165J(N), SN74166J(N), SN74LS166J(N)
  4. С последовательным вводом и параллельным выводом. Например: SN7416J(N), SN74LS164J(N), SN74LS322J(N), SN74LS673J(N)

Использование триггеров с защёлками с тремя состояниями на выходе, увеличенная (по сравнению со стандартными микросхемами серии) нагрузочная способность позволяют использовать (в микропроцессорных системах с магистральной организацией) регистры непосредственно на магистраль в качестве регистров, буферных регистров, регистров ввода-вывода, магистрального передатчика и т. д. без дополнительных схем интерфейса.

Помимо вышеописанных двоичных регистров, регистр может основываться и на иной системе счисления, например троичной[⇨] или десятичной.

Параллельные регистры[править | править вики-текст]

В параллельных (статических) регистрах схемы разрядов не обмениваются данными между собой. Общими для разрядов обычно являются цепи тактирования, сброса/установки, разрешения выхода или приема, то есть цепи управления. Пример схемы статического регистра, построенного на триггерах типа D с прямыми динамическими входами, имеющего входы сброса и выходы с третьим состоянием, управляемые сигналом EZ.

Сдвигающие (последовательные) регистры[править | править вики-текст]

Последовательные (сдвигающие) регистры представляют собою цепочку разрядных схем, связанных цепями переноса. Основной режим работы — сдвиг разрядов кода от одного триггера к другому на каждый импульс тактового сигнала. В однотактных регистрах со сдвигом на один разряд вправо слово сдвигается при поступлении синхросигнала. Вход и выход последовательные (англ. Data Serial Right, DSR).

Согласно требованиям синхронизации в сдвигающих регистрах, не имеющих логических элементов в межразрядных связях, нельзя применять одноступенчатые триггеры, управляемые уровнем, поскольку некоторые триггеры могут за время действия разрешающего уровня синхросигнала переключиться неоднократно, что недопустимо. Появление в межразрядных связях логических элементов, и тем более, логических схем неединичной глубины упрощает выполнение условий работоспособности регистров и расширяет спектр типов триггеров, пригодных для этих схем. Многотактные сдвигающие регистры управляются несколькими синхропоследовательностями. Из их числа наиболее известны двухтактные с основным и дополнительным регистрами, построенными на простых одноступенчатых триггерах, управляемых уровнем. По такту С1 содержимое основного регистра переписывается в дополнительный, а по такту С2 возвращается в основной, но уже в соседние разряды, что соответствует сдвигу слова. По затратам оборудования и быстродействию этот вариант близок к однотактному регистру с двухступенчатыми триггерами.

Примеры:

  • SN74ALS164 (КР1533ИР8) — восьмиразрядный сдвиговый регистр с последовательной загрузкой и параллельной выгрузкой. Оснащён двумя входами, A и B, что позволяет заперев один из них (установив на нём низкий уровень напряжения по положительному фронту тактового импульса), осуществлять ввод данных в последовательном коде по другому входу.
  • SN74ALS165 (КР1533ИР9), SN74ALS166 (КР1533ИР10) — восьмиразрядный сдвиговый регистр с последовательной выгрузкой, работающий в двух режимах: параллельной загрузки и сдвига,
  • SN74198 (КР1533ИР13) — восьмиразрядный реверсивный сдвиговый регистр, имеющий четыре режима работы: параллельная загрузка, сдвиг влево, сдвиг вправо и блокировка.
  • SN74LS295 (КР1533ИР16) — четырёхразрядный реверсивный сдвиговый регистр с тремя состояниями выходов, имеющий четыре режима работы: параллельная загрузка, сдвиг влево, сдвиг вправо и блокировка.

Регистры процессора[править | править вики-текст]

По назначению регистры процессора различаются на:

  • аккумулятор — используется для хранения промежуточных результатов арифметических и логических операций и инструкций ввода-вывода;
  • флаговые — хранят признаки результатов арифметических и логических операций;
  • общего назначения — хранят операнды арифметических и логических выражений, индексы и адреса;
  • индексные — хранят индексы исходных и целевых элементов массива;
  • указательные — хранят указатели на специальные области памяти (указатель текущей операции, указатель базы, указатель стэка);
  • сегментные — хранят адреса и селекторы сегментов памяти;
  • управляющие — хранят информацию, управляющую состоянием процессора, а также адреса системных таблиц.

Троичные регистры[править | править вики-текст]

Троичные регистры строятся на троичных триггерах. Как и троичные триггеры, троичные регистры могут быть разных троичных систем кодирования троичных данных (троичных разрядов): трёхуровневая однопроводная, двухуровневая двухразрядная двухпроводная, двухуровневая трёхразрядная одноединичная трёхпроводная, двухуровневая трёхразрядная однонулевая трёхпроводная и др.

3b9rrg.jpg

На рисунке справа приведена схема девятиразрядного параллельного статического стробируемого троичного регистра данных на трёх трёхразрядных параллельных статических стробируемых троичных регистрах данных в трёхбитной одноединичной системе троичных логических элементов (линии с обозначением 3В: трёхпроводные), имеющего ёмкость в показательной позиционной троичной системе счисления 3^9=19 683 чисел (кодов).

Примечания[править | править вики-текст]

  1. http://wiki.miem.edu.ru/index.php/Схемотехника:Лекции Глава 11 Раздел 1.1 11.1.Классификация регистров
  2. http://www.intuit.ru/department/hardware/archhard2/2/2.html Интернет университет информационных технологий. Архитектура и организация ЭВМ. В.В.Гуров, В.О.Чуканов. 2.Лекция: Основные функциональные элементы ЭВМ, часть 2. Регистр хранения. Рис.2.5. Структура четырёхразрядного регистра хранения с асинхронным входом установки в 0. Рис.2.6. Условно-графическое обозначение четырёхразрядного регистра хранения с асинхронным входом установки в 0
  3. http://www.bashedu.ru/perspage/wsap/posobie/chapter3/6.htm Основы цифровой электроники. 3.6. Регистры. Регистры хранения. Рис.3.25. Функциональные схемы основных типов регистров. Рис. 3.26. Регистры хранения, на D-триггерах, синхронизируемых уровнем синхроимпульса (а), фронтом (б) и на RS-триггерах, синхронизируемых фронтом (в)
  4. http://www.gsm-guard.net/glossary/_r.htm Глоссарий. Регистр сдвига (Shifter)
  5. http://kpe.hww.ru/spravka_circuitry/rs.htm Регистры сдвига
  6. http://dssp.karelia.ru/~ivash/ims/t12/TEMA6.HTM Регистры сдвига. Рис.1. Регистры сдвига на JK-триггерах
  7. http://www.airalania.ru/airm/147/53/index.shtml 6.1. Регистры сдвига и кольцевые счётчики
  8. http://www.intuit.ru/department/hardware/archhard2/2/2.html Интернет университет информационных технологий. Архитектура и организация ЭВМ. В.В.Гуров, В.О.Чуканов. 2.Лекция: Основные функциональные элементы ЭВМ, часть 2. Регистр сдвига. Рис.2.7. Структура регистра сдвига. Рис.2.8. Условно-графическое обозначение четырёхразрядного регистра сдвига с асинхронным входом установки в 0
  9. http://dfe3300.karelia.ru/koi/posob/log_basis/registr2.html Логические основы ЭВМ. Параллельные регистры сдвига. Рис.9.1 Структурная схема 4-разрядного параллельного кольцевого регистра. Рис.9.2. Логическая схема 4-разрядного кольцевого регистра
  10. http://www.bashedu.ru/perspage/wsap/posobie/chapter3/6.htm Основы цифровой электроники. 3.6. Регистры. Регистры сдвига. Рис. 3.27. Регистры сдвига на D-триггерах а), RS-триггерах б) и комбинированный регистр на D-триггерах
  11. http://www.texnic.ru/tools/cif_ms/7.html 7.РЕГИСТРЫ. 7.1. Сдвиговые регистры. Рис. 248. Двенадцатиразрядный сдвигающий регистр
  12. http://shema.relline.ru/main/lections/second/Reg_sdwig МГИЭМ. Схемотехника. Лекции. Регистры сдвига. Реализация регистров сдвига на однотактных RS триггерах. Трёхтактный регистр сдвига
  13. http://www.exponenta.ru/educat/systemat/1006/3_projects/vavilkin_kornilov.asp Рис.2 Сдвиговый регистр, составленный из четырёх D-триггеров. Рис.3 Типичный сдвиговый регистр, составленный из четырёх JK-триггеров. Рис.5 Загрузка данных в сдвиговый регистр при использовании параллельного ввода.
  14. http://it.fitib.altstu.ru/neud/shemotechnika/index.php?doc=teor&st=141 Схемотехника. 12.1.1. Сдвигающий регистр
  15. http://www.texnic.ru/tools/cif_ms/7.html 7.РЕГИСТРЫ. Рис.208. Параллельный регистр
  16. http://www.texnic.ru/tools/cif_ms/7.html 7.РЕГИСТРЫ. Рис.209. Последовательный регистр
  17. http://kt1bladerunner.livejournal.com/1339.html Последовательный регистр сдвига. Рис.6 Структурная схема 4-разрядного параллельного кольцевого регистра. Рис. 7. Логическая схема 4-разрядного параллельного кольцевого регистра
  18. http://www.erudition.ru/referat/ref/id.36006_1.html 16-ти разрядный реверсивный регистр сдвига
  19. http://www.texnic.ru/tools/cif_ms/7.html 7.РЕГИСТРЫ. Рис.210. Реверсивный регистр

Литература[править | править вики-текст]

  • Генри С. Уоррен, мл. Глава 2. Основы // Алгоритмические трюки для программистов = Hacker's Delight. — М.: «Вильямс», 2007. — С. 288. — ISBN 0-201-91465-4.
  • Нефедов А.В, Савченко А.М., Феоктистов Ю.Ф. Под редакцией Широкова Ю.Ф. Раздел 3. Цифровые интегральные микросхемы и их электрические параметры // Зарубежные интегральные микросхемы для промышленной электронной аппаратуры: Справочник. — М.: Энергоатомиздат, 1989. — 288 с. — ISBN 5-283-01540-8.
  • Петровский И.И., Прибыльский А.В,, Троян А.А., Чувелов В.С. Функциональный состав микросхем серии КР1533: 5. Регистры; Функциональный состав микросхем серии КР1554: 4. Регистры // Логические ИМС КР1533, КР1554. Справочник. — М.: ТОО «Бином», 1993. — 497 с. — ISBN 5-85959-045-5.

Внешние ссылки[править | править вики-текст]