Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
М.у. к КП, (09.07.10), А4, е.doc
Скачиваний:
157
Добавлен:
13.02.2016
Размер:
6 Mб
Скачать

3 Тема № 3. Устройство сдвига двоичных чисел

3.1 Описание принципа работы заданной структурной электрической схемы устройства сдвига двоичных чисел

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

Структурная электрическая схема устройства сдвига двоичных чисел представлена на рисунке 13.

Рисунок 13 – Устройство сдвига двоичных чисел. Схема электрическая структурная

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

Комбинационный программируемый сдвигатель У4 предназначен для логического сдвига влево или вправо без округления четырехразрядного двоичного числа X, представленного разрядами x0, x1, x2, x3. На выходе сдвигателя формируется 10-разрядное слово Y, представленное разрядами y6, y5, …, y0, y-1, y-2, y-3.

Счетчик У1 предназначен для параллельного ввода четырехразрядного числа X.

Триггер У2 предназначен для ввода управляющего сигнала D, определяющего направление сдвига (D=0 означает сдвиг влево, D=1 – сдвиг вправо).

Регистр У3 предназначен для параллельного ввода управляющих сигналов S0 и S1, определяющих шаг сдвига. Например, если S1=0, S0=1, то выполняется сдвиг на один разряд.

Регистр У5 предназначен для параллельного вывода результата сдвига, который представляет собой 10-разрядное слово.

Загрузка числа X и управляющих сигналов D, S0, S1, а также вывод результата сдвига синхронизируется тактовыми импульсами Uс. Причем ввод осуществляется по отрицательным фронтам тактовых импульсов, а вывод результата сдвига – по положительным.

Процесс функционирования устройства поясняется временной диаграммой, которая представлена на рисунке 14.

Рисунок 14 – Временная диаграмма, поясняющая процесс функционирования устройства

В момент времени t1 по отрицательному фронту тактового импульса начинается ввод числа X в счетчик У1 и управляющих сигналов в триггер У2 и регистр У3 (рисунок 13). К моменту времени t2 ввод заканчивается и начинается процесс сдвига в сдвигателе У4.

Этот процесс в худшем случае завершается к моменту времени t3. Затем по положительному фронту тактового импульса результат сдвига записывается в регистр У5 и т.д.

Рассмотрим пример логического сдвига влево без округления на два разряда для двоичного числа1) X=11012.

x3

x2

x1

x0

0

0

0

1

1

0

1

0

0

0

– до сдвига

0

1

1

0

1

0

0

0

0

0

– после сдвига

y6

y5

y4

y3

y2

y1

y0

y–1

y–2

y–3

3.2 Задание на проектирование к теме № 3

Описать принцип построения и разработать логическую схему комбинационного программируемого сдвигателя четырехразрядных двоичных чисел без округления в базисе И-НЕ. Разработать логическую схему суммирующего четырехразрядного недвоичного счетчика на JK-триггерах с коэффициентом пересчета Кпер, заданным в таблице 5. В принципиальной электрической схеме устройства использовать двоичный счетчик. Разработать принципиальную электрическую схему устройства сдвига по заданной структурной схеме (рисунок 13) на микросхемах схемотехники КМОП.

Таблица 5 – Исходные данные для проектирования устройства логического

сдвига двоичных чисел

Номер варианта

Значение числа X (P=2)

Направление сдвига

Шаг сдвига

К пер

3.1

1010

влево

2

11

3.2

0101

вправо

2

9

3.3

0011

вправо

3

12

3.4

1011

влево

2

15

3.5

0111

влево

3

13

3.6

1110

вправо

3

14

3.7

1011

влево

3

12

3.8

1010

вправо

3

11

3.9

1000

влево

2

13

3.10

0010

вправо

2

14

Описать работу принципиальной электрической схемы устройства в течение одного периода сигнала синхронизации Uc при сдвиге числа X. Значение числа X, направление и шаг сдвига заданы в таблице 5.

3.3 Назначение и принцип построения комбинационных программируемых сдвигателей

Операция сдвига заключается в смещении двоичного слова влево или вправо по разрядной сетке на заданное число разрядов [8].

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

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

Различают четыре вида сдвигов: логический, арифметический, редакторский и циклический.

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

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

Обычно при логическом и арифметическом сдвигах величина шага сдвига не превышает qmax = n – 1 (где n – разрядность сдвигаемого слова), так как в противном случае ни одна цифра сдвигаемого слова не останется в начальной разрядной сетке, что, как правило, не имеет смысла при обработке реальной информации.

Арифметический и в некоторой степени логический сдвиг на q разрядов влево равносилен умножению исходного слова на величину 2q; аналогично соответствующий сдвиг вправо равносилен делению исходного слова на эту же величину.

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

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

Сдвигателем называется комбинационное цифровое устройство, реализующее операцию сдвига над исходным двоичным словом в соответствии с заданным типом, направлением и шагом сдвига. При разрядности сдвигаемого слова n сдвигатель должен иметь n информационных и 1 +log2n управляющих входов, а также m = 3n – 2 информационных выходов (в некоторых частных случаях число выходов может быть меньше).

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

Условное графическое обозначение сдвигателя приведено на рисунке 15 и представляет собой прямоугольник с аббревиатурой SH (от англ. shifter) во внутреннем поле. Входное нижнее поле выделено для приема управляющих сигналов, определяющих направление (D = 0 обозначает сдвиг влево, D = 1 – вправо) и шаг сдвига (S0, S1). Например, при S1 = 1, S0 = 0 – сдвиг на два разряда.

Рисунок 15 – Условное графическое обозначение сдвигателя

Описание сдвигателя в содержательных терминах дает возможность построить его сокращенную таблицу истинности. Полная таблица истинности имела бы семь логических аргументов (x3, x2, x1, x0, D, S1, S0), десять функций (y6, y5, y4, y3, y2, y1, y0, y–1, y–2, y–3) и была очень громоздкой и плохо обозримой. Таблицу можно значительно сократить, если аргументы x3, x2, x1, x0 вывести из левой ее части и ввести в рабочие поля правой части вместо единиц, так, как это сделано в таблице 6.

Таблица 6 – Табличное описание матричного сдвигателя

Логические аргументы (управл. сигналы)

Логические функции (выходное слово)

Направление сдвига

Величина сдвига

Сдвиг влево

Прямая передача

Сдвиг вправо

D

S1

S0

y6

y5

y4

y3

y2

y1

y0

y–1

y–2

y–3

0

1

1

x3

x2

x1

x0

0

0

0

0

0

0

0

1

0

0

x3

x2

x1

x0

0

0

0

0

0

0

0

1

0

0

x3

x2

x1

x0

0

0

0

0

X

0

0

0

0

0

x3

x2

x1

x0

0

0

0

1

0

1

0

0

0

0

x3

x2

x1

x0

0

0

1

1

0

0

0

0

0

0

x3

x2

x1

x0

0

1

1

1

0

0

0

0

0

0

x3

x2

x1

x0

Примечание – D = X – неопределенное значение (0 или 1), поскольку при нулевом шаге понятие «направление сдвига» теряет смысл.

Данные таблицы 6 дают возможность перейти к логико-математическому описанию сдвигателя:

С

(9)

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

П

(10)

одставив соотношения (10) в систему (9), получим

(11)

Структурированная система логических функций (10), (11) позволяет построить структурную и функциональную схему сдвигателя (рисунок 16).

Анализ функциональной схемы показывает, что сдвигатели матричного типа обладают весьма высоким быстродействием, которое оценивается величиной 2tзд. р. ср. ЛЭ, так как сдвигаемая информация проходит только через одну ступень сдвига (отсюда и их название – одноступенчатые).

Рисунок 16 – Комбинационный программируемый сдвигатель. Схема электрическая структурная (а) и функциональная (б)

3.4 Методические указания по разработке разделов проекта к теме № 3

Логическую схему комбинационного программируемого сдвигателя разработайте в базисе И-НЕ. Для этого преобразуйте в базис И-НЕ логические функции (10) и (11). Логическую схему вычертите в формате А3 на основе заданной функциональной схемы (рисунок 16) и выполните указания раздела 4.

Синтез недвоичного счетчика с заданным коэффициентом пересчета выполните по методике, приведенной в приложение А.

Принципиальную электрическую схему устройства сдвига разработайте на выбранных микросхемах на основе заданной структурной схемы (рисунок 13) и разработанной логической схемы сдвигателя. Принципиальную электрическую схему вычертите в формате А2 и выполните указания раздела 4.