Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Гл.5 Сх.docx
Скачиваний:
43
Добавлен:
12.11.2019
Размер:
558.74 Кб
Скачать

5.1.4. Считывание информации

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

Схемы выходной логики строятся на основе следующих поразрядных логиче­ских уравнений:

• для считывания однофазным прямым или обратным кодом

Шi = Yпр Qi v Yоб (5.3)

• для считывания парафазным прямым или обратным кодом

Шi = YnpQi v Yпр ; Шi = Yo6 v Yo6Qi (5.4)

где Yпр и Yo6 — управляющие сигналы выдачи соответственно прямого или обратно­го кода;

Qi и Qi — прямое и инверсное значение, выхода r'-го разряда регистра;

Шi — разряд однофазной шины данных;

Шi и Шi — разряды парафазной шины данных.

Очевидно, что управляющие сигналы Yпр и Yоб не должны совпадать во време­ни.

Схемы выходной логики для i-го разряда на основе уравнений (5.3) и (5.4) по­казаны на рис. 5.5.

Рисунок 5.5-Схемы выходной логики i-разряда для считывания информации:

а) однофазным кодом; б) парофазным кодом

5.1.5. Логические микрооперации в регистрах

В регистрах могут выполняться следующие поразрядные (без переносов) логи­ческие микрооперации над словами А и В:

-логическое сложение и умножение: RG1: = AvB; RG1: = А В;

-сложение по модулю два и его отрицание: RG1: = А В; RG1: = ;

-инверсия слова: RG1: = .

Логические микрооперации предполагают наличие первого слова А в регистре. С учетом этого логическое сложение слов А и В в регистре на RS- или JK-триггерах с однофазной записью выполняется вводом слов В без предварительного сброса.

Логическое умножение реализуется подачей инверсных значений разрядов слова B на входы R (или K) триггеров регистра. Действительно, если значение Bi = 0, тo = 1 и соответственно триггеры обнуляются, что и требуется для поразрядного логического умножения.

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

После этого на прямых выходах тригге­ров фиксируется результат операции Q = А В, а на инверсных выходах - Q= .

Микрооперация инвертирования состоит в подаче импульса на все T-входы триггеров регистра, в которых хранится слово A. В итоге на прямых выходах триггеров устанавливается результат согласно соотношению Qi = Ai 1 = .

5.1.6. Микрооперации сдвига

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

Микрооперации сдвига используют в процессе выполнения команд умножения, деления и нормализации. Кроме того, с помощью сдвига осуществляется преобра­зование параллельного кода в последовательный или наоборот (например, при об­мене информацией с магнитными лентами и дисками).

Сдвиг слова может выполняться вправо (в сторону младших разрядов) или влево (в сторону старших разрядов).

Обозначим одноразрядные микрооперации сдвига вправо и влево символами R и L соответственно.

Различают правый и ле­вый арифметический (Ra, La), логический (Rл, Lл) и циклический (Rц, Lц) сдвиги сло­ва.

Пусть в регистре А записано слово Аn, Ап-1 ... А2 А1

где А1 — младший разряд; Аn — старший разряд.

Символически микрооперации сдвига записываются сле­дующим образом:

• арифметические сдвиги (знаковый разряд не сдвигается):

RGA: = Ra(A) = An 0 An-1 ... A2; RGA : = La (A) = Аn Аn-2...А1 0 ;

• логические сдвиги (одновременно сдвигаются все разряды);

RGA: = Rл(A) = 0 Аn Аn-1 ...А2; RGA : = Lл(A) = Аn-1Аn-2 ...А1 0;

• циклические сдвиги (между старшим и младшим разрядами имеется коль­цевая связь):

RGA := Rц (A) =A1 Аn Аn-1...А2; RGA : = Lц(A) = An-1 An-2 ...А1 An

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

Сдвиговые регистры проектируют на двухступенчатых RS- (или JK-) или D-триггерах с динамическим управлением по фронту. Такие триггеры обеспечивают разделение во время процессов приема новой информации в каждом разряде и вы­дачи (сдвига)старой.

Примем, что в реверсивном регистре должны выполняться параллельная за­пись слова А по сигналу управления Yзп и сдвиги информации влево и вправо под воздействием управляющих сигналов Lл и Rл.

Схема одного разряда регистра сдвига на RS-триггерах показана на рис. 5.6, а.

Экономичная схема разряда регистра, в которой функция на R-входе триггера образуется инвертированием сигнала Si показана на рис. 3.6, б.

Однако в этом слу­чае время записи данных увеличивается за счет задержки инвертора.

Схема разряда регистра сдвига на D-триггерах показана на рис. 5.6 в.

Рисунок 5.6-Схема разряда регистра сдвига:

а)-на RS-триггере; б)-с инвентором на входе R; в)-на D-триггере

Пример построения реверсивного трехразрядного регистра сдвига на D-триггерах с динамическим управлением представлен на рис. 5.7.

Рисунок 5.7-Схема реверсивного регистра на D-триггерах

Реверсивный регистр сдвига работает следующим образом.

При значении сиг­нала Yзп = 1 в регистр записывается информация параллельным однофазным ко­дом.

При значении сигнала Rл = 1 хранимая информация одновременно сдвигается в сторону младших разрядов, при этом разряд Q3 обнуляется.

При значении сигнала Lл = 1 информация в регистре одновременно сдвигается в сторону старших разря­дов, при этом разряд Q1 обнуляется.

Запись и сдвиг информации происходят по фронту синхроимпульса.