Б) Одноразрядный полный сумматор



 

Для сложения двух кодов необходим одноразрядный полный сумматор, име-ющий вход переноса cri. Его таблица истинности и схема изображены на рисунке 2.42. Из схемы следует, что сумматор можно использовать для реализации функции «³2».

 

сr A B CR S
0 0 0 0 0
0 0 1 0 1
0 1 0 0 1
0 1 1 1 0
1 0 0 0 1
1 0 1 1 0
1 1 0 1 0
1 1 1 1 1

 

Рисунок 2.42 – Таблица истинности и схема одноразрядного полного сумматора

 

S = A Å B Å cr

СR = AB + Acr + Bcr

Одноразрядный полный сумматорможно построить из двух полусумматоров (рисунок 2.43).

 

 

 

Рисунок 2.43 – Построение одноразрядного сумматора из двух полусумматоров

 

Существуют различные варианты схем одноразрядного сумматора [2]. Условное обозначение одноразрядного сумматора показано на рисунке 2.44. ИМС сумматоров обозначаются буквами ИМ. 555ИМ5 содержит два одноразрядных сумматора.

 

 

Рисунок 2.44 – Условное обозначение одноразрядного сумматора 555ИМ5

 

 

В) Многоразрядный сумматор

 

Принцип построения многоразрядного сумматора с последовательным переносом показан на рисунке 2.45. При этом выход переноса младшего разряда CRi соединяется со входом переноса старшего разряда cri +1.

Основным недостатком сумматора с последовательным переносом является большое время задержки.

Каждый одноразрядный сумматор характеризуется временами задержки:

1) от входов А и В до выхода S ;

2) от входов А и В до выхода переноса CR;

3) от выхода переноса CR до выхода S;

4) от выхода переноса CR до выхода переноса CR.

 

Наиболее существенным является время задержки «CR - CR», т. к. оно в первую очередь определяет быстродействие. Минимизация этого времени задержки является приоритетным при проектировании схем сумматоров.

Если время задержки t зд CR - CR = t, то общая задержка в n-разрядном сумматоре tздобщ = nt. Время задержки будет максимальным при возникновении переноса во всех разрядах. Существенно и то, что время задержки зависит от значений входных кодов.

 

 

Рисунок 2.45 - Принцип построения многоразрядного сумматора

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

 

 

Сумматор с параллельным переносом

В сумматоре с параллельным переносом для уменьшения времени задержки применяется принцип, при котором перенос в каждом разряде формируется независимо от переноса в младших разрядах.

При этом для вычисления переноса вводят две дополнительные функции:

1) Функция генерации переноса CRG (carry generation). Для i-го разряда обозначим её gi. По определению gi = 1 тогда, когда слагаемые таковы, что перенос в старший разряд CRi = 1 независимо от значения входного переноса cri, т. е. перенос CRi= 1 при Ai = Bi =1. Следовательно, gi = Ai Bi.

2) Функция распространения переноса CRP (carry propagation) или функция прозрачности. Для i-го разряда обозначим её pi.

Функция pi= 1 тогда, когда слагаемые таковы, что перенос в старший разряд CRi= 1 в случае, если cri = 1. Следовательно, pi = Ai + Bi.

Используя функции CRP и CRG, можно записать формулу вычисления переноса:

CRi = cri+1 = gi + cri pi = Ai Bi + cri (Ai + Bi)

Для функции С RP можно использовать также формулу pi‘= Ai Å Bi. Разница между pi‘ и pi будет лишь при Ai= Bi =1. Однако, в этом случае gi = 1 и, следовательно, CRi = 1.

 

Для i-го разряда: Si = Ai Å Bi Å cri

Для 0-го разряда: S0 = A0 + B0 + cr0

                          CR0 = cr1 = A0 B0 + cr0 (A0 + B0)

Для 1-го разряда: S1 = A1 Å B1 Å cr1=A1 Å B1 Å [A0 B0 + cr0 (A0 + B0)]

                            CR1 = A1B1 + cr1(A1+ B1) = A1B1+ [A0B0+ cr0(A0+ B0)] (A1+ B1)

..и т. д.

 

Как видно из формул, CRi вычисляется независимо от CRi-1.

 

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

Структурная схема 3-разрядного сумматора с параллельным переносом показана на рисунке 2.46. Принципиальная схема рассмотрена в [2].

После минимизации формул, вычисляющих CRi, оказывается, что можно получить схемы, имеющие одинаковое число каскадов, т. е. последовательно соединенных элементов (в реальных ИМС – обычно 3). Т. о., время вычисления Si и CRi не зависит от количества разрядов и, в ряде случаев, оказывается меньше, чем в сумматоре с последовательным переносом. Аппаратурные затраты при этом заметно выше, чем в сумматоре с последовательным переносом.

Как было сказано, в сумматоре с последовательным переносом задержка примерно пропорциональна числу разрядов, поэтому, вроде бы очевидно, что при увеличении разрядности преимущество в быстродействии параллельного сумматора будет расти. Однако, это не совсем так. Число входов ЛЭ в ИМС ТТЛШ ограничено восемью и, при большем числе входов, необходимо увеличивать и число каскадов, а следовательно, и время задержки. Эффективное число разрядов для сумматора с параллельным переносом обычно равно 4-8.

 

 

Рисунок 2.46 - Принцип построения многоразрядного сумматора

                     с параллельным переносом

 

 

В виде ИМС выпускается 4-разрядный сумматор 555ИМ6 (КМОП-аналог –561ИМ1). Его условное обозначение и схема увеличения разрядности показаны на рисунке 2.47. В данном случае перенос внутри микросхемы формируется параллельно, а между микросхемами – последовательно. Более подробно о различных типах сумматоров изложено в [2].

Задания

Покажите, как ИМС 555ИМ6 использовать в качестве двух одноразрядных сумматоров.

На вход схемы поступают два 5-разрядных числа в прямом коде (старший разряд – знак). Построить схему для сложения/вычитания этих чисел. Результат должен быть представлен а) в дополнительном коде; б) в прямом коде.

 

 

Рисунок 2.47 – Построение многоразрядного сумматора


Дата добавления: 2019-03-09; просмотров: 344; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!