Регистры и межрегистровые связи

 

Регистры состоят из разрядных схем, число которых соответствует разрядности обрабатываемых слов. В каждом разряде регистра имеется триггер и чаще всего логические элементы.

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

II группа операций – выдача слов из регистра в прямом или обратном коде.

III группа – выполнение поразрядных логических операций над несколькими словами,

IV – сдвиг слов в разрядной сетке (влево или вправо) на то или иное количество разрядов, а также преобразование последовательности кода слова в параллельный и обратно.

Наиболее удобны триггеры D, RS, JK.

Регистры классифицируются:

- по способам приема и выдачи данных;

- параллельны (статические);

- последовательные (сдвигающие);

- параллельно-последовательные.

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

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

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

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

 

Параллельные (статические) регистры.

Состоят из разрядных схем, не связанных между собой и не выполняют операций 4-ой группы (сдвиги).

Параллельный регистр с однофазным выходом и входом:

 

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

Регистр с парафазным входом:

 

 

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

Если вместо RS триггеров в данной схеме применить триггер типа D, получим схему с однофазным входом и записью без предварительного сброса триггеров в нулевые состояния.

Разряд схемы, осуществляющий парафазный прием слов с двух направлений:

 

По такту С1 принимается код , по С2 – код .

Пример условного обозначения статического регистра:

 

 

Регистр имеет инверсный вход установки нуля, инверсный однофазный вход и парафазный выход.

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

Структура однотактного сдвигающего регистра со сдвигом на один разряд вправо:

 

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

Работа схем на D, RS и JK триггерах понятна из рисунка. Схема на D триггерах более экономична по числу связей. Парафазные связи в схемах на RS и JK могут обеспечивать более устойчивую помехоустойчивость. Быстродействие регистра непосредственно определяется временными характеристиками используемых триггеров.

Схема регистра на D триггерах со сдвигом влево:

 

Принцип построения реверсивного регистра: в нем имеются одновременно связи триггеров с соседними разрядами (левым и правым), эти связи управляются сигналами влево и вправо, но активизируются одновременно лишь одни связи, другие при этом блокируются.

 

Со всех триггеров берутся инверсные выходы, так как вентили передачи сигналов на элементах И-ИЛИ-НЕ обладают инвертирующими свойствами.

Конкретизация рассмотренных структур состоит в использовании в них определенных триггеров.

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

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

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

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

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