Сумматор - это узел, в котором выполняется арифметическая операция суммирования цифровых кодов двух двоичных чисел. Числа в любой позиционной системе счисления складываются поразрядно. Поэтому сложить двоичные числа можно при наличии узлов, реализующих суммирование цифр одного разряда слагаемых с учетом возможного переноса из соседнего младшего разряда. К таким узлам относят одноразрядные комбинационные полусумматоры и сумматоры.
Комбинационный полусумматор HS предназначен для суммирования двух одноразрядных двоичных чисел ai и bi. Таблица истинности полусумматора приведена на рис. 4.45. а. Сумма Si равна единице в том случае, когда единица установлена на входе ai или на входе bi. При одновременном появлении на входах единиц формируется сигнал переноса Pi+1.
Логические выражения, описывающие поведение выходных сигналов:
Si = ai bi, Pi+1 = ai bi.
Сигнал Si описывается формулой, именуемой «логическая неравнозначность», или «сумма по mod 2», сигнал переноса – логической конъюнкцией ai и bi.
Функциональная схема, реализующая данные зависимости, приведена на рис. 4.45, б. Схема содержит два инвертора, логический элемент 2И-2И-ИЛИ, ячейку 2И и два инвертора, имеет два входа ai и bi, выходы – Si и Pi+1, являющиеся суммой и переносом соответственно.
Устройство можно реализовать на логических элементах И, ИЛИ (рис. 4.46, а). Основным требованием, предъявляемым к нему, является получение максимального быстродействия при минимальном числе последовательно включенных элементов.
Полусумматор имеет два входа и пригоден для использования в младшем разряде сумматора (a0, b0). На выходе младшего разряда может возникнуть перенос p1, и сумматор второго разряда должен иметь три входа – a1, b1, p1. Сумматор на три входа можно представить как последовательное включение двух полусумматоров: первый суммирует разряды a1, b1 и формирует промежуточные значения суммы и переноса . Второй полусумматор складывает перенос с предыдущего разряда pi с промежуточной суммой . Выражения для выходных сигналов запишутся в следующем виде:
Si = (ai bi) pi; Pi+1 = ai bi (ai bi) pi.
На основании этих выражений можно построить сумматор на двух полусумматорах.
Одноразрядный комбинационный сумматор SM предназначен для суммирования трех одноразрядных двоичных чисел: ai, bi и pi, имеет два выхода: выход суммы – Si и выход переноса в следующий разряд – Pi+1. На входы ai, bi поступают значения суммируемых цифр данного разряда, на вход pi – значение переноса из соседнего младшего разряда. Функционирование трехвходового сумматора представлено в табл. на рис 4.47. Там же показано его условное графическое обозначение.
На основе таблицы истинности (рис. 4.47, а) переключательные функции в СДНФ для Si и Si+1 будут иметь следующий вид:
;
.
Минимизируем полученные выражения с помощью карт Вейча (рис. 4.48).
Минимизированное логическое выражение для результата переноса в следующий разряд Pi+1 найдем по карте Карно:
Pi+1 = ai biai pibi pi = ai bipi (aibi).
Введем обозначения:
Gi = ai bi и Ti = (aibi ),
получим. Pi+1 = Gipi Ti = ai bi Ú pi (aibi).
Функцию Gi называют функцией генерации (формирования) поразрядного переноса i-го разряда, а Ti – функцией передачи (распространения) переноса для i-го разряда. Si = pi RiNi.
Анализ таблицы для Si показывает, что переключательная функция упрощению не поддается. Тогда преобразуем это выражение с помощью правил алгебры логики. Объединим первый и четвертый, второй и третий минтермы, а их общие сомножители (pi и ) вынесем за скобки:
Si = pi(ai bi ) (ai ),
Введем обозначения: логическую равнозначность как = (ai bi ), логическую неравнозначность Ni = (ai ) и запишем
Si = pi RiNi.
Учитывая, что Ni = и наоборот Ri = , можно записать
Si= pi Ri или Si = piNi = piNi.
Эти выражения выглядят компактно, но они не минимизированные. И все же минимизацию можно осуществить. По таблице истинности (см. рис. 4.47. а) можно заключить, что конъюнкция инвертированного выходного сигнала с логической суммой (ai Ú biÚ pi) и (ai bi pi) формируют Si:
Si = ai Ú bi Ú pi Ú ai bi pi.
Равенство можно доказать алгебраически. Сигнал переноса запишем в виде
Si = ai bi Úpi ai Ú pi bi.
Функциональная схема устройства, выполненная по двум последним выражениям, приведена на рис. 4.49.
Микросхема К555ИМ5 – два одноразрядных полных сумматора, выполняет операцию сложения трех одноразрядных чисел в двоичном коде с учетом переноса младшего разряда в старший (рис. 4.50.).
Состояние выходных уровней схемы в зависимости от состояний на входах A, B и Pn соответствует показанным в таблице на рис. 4. 47, а. Высокий и низкий уровни сигнала на выходах схемы S и Pn+1 устанавливаются при наличии высокого и низкого уровней на всех входах микросхемы.
4.6.2 Многоразрядные двоичные сумматоры
В зависимости от способа ввода кодов слагаемых, сумматоры делятся на два типа: последовательного и параллельного действия.
В зависимости от способа ввода кодов слагаемых, сумматоры делятся на два типа: последовательного и параллельного действия.
Последовательный сумматор
В сумматоры первого типа коды чисел вводятся в последовательной форме, т.е. разряд за разрядом (младшим разрядом вперед), в сумматоры второго типа каждое из слагаемых подается в параллельной форме, т. е. одновременно всеми разрядами.
Сумматор последовательного действия (рис. 4.51.) имеет в своем составе одноразрядный полный сумматор SM (D8), три универсальных регистра RG1, RG2, RG3, триггер запоминания сигнала переноса типа D (D9), цепи управления, включающие триггеры Dl, D2 и логические ячейки И, ИЛИ (D3, D4, D5). Перед началом работы триггеры и регистры переводятся в исходное нулевое состояние импульсом начальной установки (Reset). Затем с помощью сигнала «Запись», триггер Dl переводится в единичное состояние, и тактирующие им пульсы начинают загрузку слагаемых А и В в регистры RG1 и RG2, начиная с младших разрядов. После окончания загрузки на входе сумматора выставлены биты a0и b0 и сигнал переноса P0 = 0, при этом на выходе сумматора установятся результат суммы S0 и сигнал переноса P1.
С помощью сигнала «Сум.», устройство переводится в режим побитного арифметического сложения чисел А и В. При этом тактирующие импульсы ТИ поступают на все три регистра одновременно и на триггер запоминания переноса. По окончании суммирования результат зафиксирован в выходном регистре RG3, а сигнал переноса в триггере памяти D9.
Рассматриваемое устройство при незначительных изменениях позволяет реализовать самые разнообразные схемы работы.
Недостатком последовательных сумматоров является невысокое быстродействие. Максимальное время суммирования такой схемы tсум = n t0, где t0 - период следования тактовых сигналов, a n – разрядность слагаемых. Кроме того, при таком построении невозможно осуществление циклического переноса, т.е. прибавление единицы переноса из старшего разряда в младший разряд суммы.
Параллельный сумматор
Параллельный сумматор комбинационного типа строится на основе каскадного соединения одноразрядных комбинационных сумматоров. Они могут выполняться с последовательным, параллельным и групповым переносом.
Сумматор с поразрядным последовательным переносом параллельного действия состоит из отдельных разрядов, каждый из которых содержит одноразрядный полный сумматор (рис. 4.52.).
В сумматоре этого типа перенос распространяется последовательно от разряда к разряду по мере образования суммы в каждом отдельном разряде. При наиболее неблагоприятных условиях перенос произойдет во всех разрядах слагаемых. Максимальное время переноса составит
tперен = n t1,
где t1- время формирования переноса в одном разряде,
n – число разрядов сумматора.
Данный тип сумматора наиболее прост с точки зрения построения схемы и цепей переноса, но имеет сравнительно невысокое быстродействие.
Типичным представителем комбинационного сумматора с последовательным переносом является четырехразрядный сумматор К155ИМЗ.