Полный одноразрядный двоичный сумматор
Он (рис. 4) имеет три входа: a, b — для двух слагаемых и p — для переноса из предыдущего (более младшего) разряда и два выхода: S — сумма, P — перенос в следующий (более старший) разряд. Обозначением полного двоичного сумматора служат буквы SM. Работу его отражает таблица истинности 3 (табл. 3).
Рис. 4 | Таблица 3
|
Отметим два момента. Первый: в табл. 2 и 3 выходные сигналы P и S не случайно расположены именно в такой последовательности. Это подчеркивает, что PS рассматривается как двухразрядное двоичное число, например, 1 + 1 = 210 = 102 , то есть P = 1, а S = 0 или 1 + 1 + 1 = 310 = 112, то есть P = 1, а S = 1. Второй: выходные сигналы P и S полного двоичного сумматора относятся к классу самодвойственных функций алгебры логики. Самодвойственными называют функции, инвертирующие своё значение при инвертировании всех переменных, от которых они зависят. Обратите внимание, что P и S для четвертьсумматора и полусумматора не являются самодвойственными функциями! Преимущества, вытекающие из этого свойства полного двоичного сумматора, будут рассмотрены при анализе возможностей ИС типа 155ИМ1.
Уравнения, описывающие работу полного двоичного сумматора, представленные в совершенной дизъюнктивной нормальной форме (СДНФ), имеют вид:
(6) |
Уравнение для переноса может быть минимизировано:
P = ab + ap + bp. (7)
При практическом проектированиии сумматора уравнения (6) и (7) могут быть преобразованы к виду, удобному для реализации на заданных логических элементах с некоторыми ограничениями (по числу логических входов и др.) и удовлетворяющему предъявляемым к сумматору требованиям по быстродействию.
Например, преобразуем уравнения (6) следующим образом:
(8) |
Из выражений (8) следует, что полный двоичный сумматор может быть реализован на двух полусумматорах и одном двухвходовом элементе ИЛИ. Соответствующая схема приведена на рис. 5.
Рис. 5
Из выражения (8) для S также следует:
p. (9)Å b ÅS = a
Примечание. Так как операция Е в выражении (9) коммутативна (переменные можно менять местами), то следует, что три входа полного двоичного сумматора абсолютно равноправны и на любой из них можно подавать любую входную переменную. Это полезно помнить, разводя печатные платы, на которых установлены ИС сумматоров.
К настоящему времени разработано большое число схем сумматоров. Доказано (нашим отечественным ученым Вайнштейном), что при использовании только одного инвертора нельзя реализовать полный двоичный сумматор со сложностью Pкв < 16, а при двух инверторах — Pкв < 14, где Pкв — вес по Квайну, используемый как оценка сложности любых комбинационных схем. Pкв — это общее число всех входов всех логических элементов схемы без учёта инверторов.
Рис. 6
Покажем, используя два метода, как была получена рациональная (с использованием только одного инвертора) схема полного двоичного сумматора, явившаяся основой схем ИС сумматоров типа 7480, 155ИМ1 и др.
Первый метод основан на использовании значения выходного переноса P как вспомогательной переменной при определении выходной суммы S (табл. 4). В табл. 4 при наборах переменных, являющихся нереальными (например, единичное значение переноса при нулевых значениях всех входных переменных), поставлены безразличные значения (крестик) для функции S, которые можно доопределять произвольным образом.
Таблица 4
№ наб. | a | b | p | P | S |
x | |||||
x | |||||
x | |||||
x | |||||
x | |||||
x | |||||
x | |||||
x | |||||
Из карты Карно для функции S (рис. 6) следует:
S = abp + Pa + Pb + Pp = = abp + P(a + b + p). (10)
Второй метод основан на применении диаграмм Венна. На рис. 7а показана диаграмма Венна для трех переменных а, b, p; области, ограниченные окружностями, соответствуют переменным а, b, p, а области, обозначенные цифрами от 0 до 7 — соответствующим конъюнкциям (например, 5 = abp). Область, заштрихованная на рис. 7б, очевидно, соответствует функции P = ab + ap + bp. Функция S представлена заштрихованной областью на рис. 7в. Её можно представить суммой произведения функции a + b + p (рис. 7г) на функцию ab + ap + bp (рис. 7д) и функции abp (рис. 7е). Очевидно, что в этом случае получается выражение для S, аналогичное уравнению (10).
Рис. 7
Схема сумматора, реализованного по уравнениям (7) и (10), приведена на рис. 8а. В данной схеме используются многовходовые логические элементы И и ИЛИ. Если использовать только двухвходовые элементы, то получаются схемы, приведённые на рис. 8б,в.
Рис. 8
Сумматоры. Определения, классификация, уравнения, структуры и применение. Часть 2
Рис. 1 | Рис. 2 |
Рассмотрим уравнения и структуры серийно выпускаемых ИС сумматоров. Функциональное обозначение полного одноразрядного двоичного сумматора типа ИМ1 (`80), реализуемого в отечественных сериях 133, К155, КМ155, представлена на рис. 1. Его отличительной чертой является развитая логика на входах разрядов a и b чисел А и В (рис. 2). Структура данной ИС реализуется по следующим уравнениям:
(1) | |
(2) | |
(3) | |
(4) | |
(5) |
При использовании данной ИС между входами a3 и b3 и источником питания +5 В нужно включить резистор R, сопротивление которого определяется требуемыми динамическими параметрами (типичные значения 1–5,1 кОм). В дальнейшем на схемах, построенных на этой ИС, резистор опущен.
Реализация прямой суммы и инверсных суммы и переноса в данной ИС обусловлена двумя обстоятельствами: во-первых, задержки распространения логического элемента И-ИЛИ-НЕ меньше, чем у элемента И-ИЛИ, так как последний фактически реализуется по структуре И-ИЛИ-НЕ-НЕ, что позволяет строить параллельные многоразрядные сумматоры с последовательным переносом с относительно небольшими задержками распространения в цепи выходного переноса; во-вторых, используется свойство самодвойственности функций S и P [1].
Наличие входов a1, a2 и b1, b2 позволяет маскировать нулём один разряд, любую группу разрядов или все разряды чисел А и В. Наличие входов a3 и b3 позволяет подключить к ним дополнительную логику, реализованную на элементах, выходы которых выполнены с открытым коллектором. Наличие входов a4 и b4 даёт возможность преобразовывать прямые коды многоразрядных чисел А и В в обратный или дополнительный коды, а также строить схемы не только сумматоров, но и вычитателей.
Рис. 3
В качестве примера на рис. 3 показана схема, поясняющая принцип действия 4-разрядного параллельного сумматора с последовательным переносом, в котором использованы ИС типа ИМ1 (133, 155). Разряд a0 числа А подан на объединённые входы a1 и a2, хотя в общем случае на вход a2 можно подать уровень “1” либо использовать его для маскирования. То же можно сказать о разряде b0 числа В. На входы a4 и b4 ИС младшего разряда необходимо подать уровень “1” (выражения (4) и (5)). Младший разряд суммы снимается с выхода S0 сумматора. Несмотря на то, что перенос из младшего разряда поступает с инверсией, мы подаём его непосредственно на вход переноса следующего разряда.
Учитывая свойство самодвойственности, вторые разряды слагаемых a1 и b1 чисел А и В соответственно подадим на входы a4 и b4 ИС, причём на один или оба входа a1, a2 и b1, b2 необходимо подать уровень “0” (выражения (4) и (5)). Так как все три входа этой ИС имеют инверсные переменные, то на выходе реализуется инверсия суммы, однако, если снимать её с выхода S одноразрядного сумматора, то получим прямое значение разряда S1 суммы. Кроме этого, получится инверсия выходного переноса, но поскольку он снимается с инверсного переноса, то фактически реализуется прямой выходной перенос. Дальнейшие связи остальных разрядов осуществляются аналогично.
Функциональное обозначение двухразрядного двоичного сумматора типа ИМ2 ( `82), реализуемого в отечественных сериях 133, К155, КМ155, представлена на рис. 4.
Рис. 4
Структура данной ИС реализуется по следующим уравнениям:
(пользователю не доступен) | (6) |
(структура И-ИЛИ-НЕ-НЕ) | (7) |
(8) | |
(9) |
Выражения (8) и (9) записаны на основании свойства самодвойственности. Инверсия входных разрядов a1 и b1 осуществляется дополнительно встроенными в ИС инверторами.
Как видно из выражений (6)–(9), логическая структура этой ИС соответствует двум младшим разрядам схемы (рис. 3), в которых отсутствует входная логика, реализующая выражения (4) и (5).
Быстродействие многоразрядных (n > 4) сумматоров с последовательным переносом, которые можно построить на рассмотренных выше ИС, ограничено задержкой его распространения, так как формирование сигнала переноса на выходе старшего разряда не может произойти до тех пор, пока сигнал переноса младшего разряда не распространится последовательно через все разряды сумматора.
Параллельный перенос в i-ом разряде многоразрядного сумматора определяется как функция разрядов слагаемых i-го и всех предыдущих младших разрядов и входного переноса. Для реализации этого принципа в каждом двоичном разряде сумматора специально формируются два дополнительных сигнала: функция генерации переноса в данном i-ом разряде Di и функция распространения переноса через данный i-ый разряд Fi. Представим перенос из i-го разряда в виде:
Pi = aibi + aipi + bipi = aibi + (ai + bi) pi = Di + Fipi , | (10) |
где Di = aibi; Fi = ai + bi . Иногда функция Fi реализуется так: Fi = ai Å bi (докажите справедливость последнего выражения самостоятельно). Смысл функций Di и Fi ясен из следующего числового примера:
11 1111 — переносы А 01101011 + + В 00100101 S 10010000Перенос, возникший в младшем разряде D0 = a0b0 = 1.1 = 1, распространяется до разряда с индексом i = 4, а перенос, возникший в разряде с индексом i = 5 : D5 = a5b5 = 1.1 = 1, распространяется до разряда с индексом i = 7.
С учётом вышеизложенного запишем выражения, описывающие структуру 4-разрядного параллельного сумматора с параллельным (быстрым, fast) переносом:
P0 = D0 + F0pвх , | (11) |
где P0 — выходной перенос из разряда с индексом i = 0; pвх — входной перенос в разряд с индексом i = 0.
Аналогично
P1 = D1 + F1P0, | (12) |
Подставив выражение (11) в (12), получим:
P1 = D1 + F1D0 + F1F0pвх, | (13) |
Выполнив аналогичные процедуры, запишем:
P2 = D2 + F2P1 = D2 + F2D1 + F2F1D0 + F2F1F0pвх , | (14) |
P3 = D3 + F3P2 = D3 + F3D2 + F3F2D1 + F3F2F1D0 + F3F2F1F0pвх , | (15) |
В выражениях (12)–(13) D1 = a1b1, D2 = a2b2, D3 = a3b3 и F1 = a1 + b1, F2 = a2 + b2, F3 = a3 + b3.
Разряды суммы реализуются так:
S0 = a0 bÅ0 PÅвх | (16) |
S1 = a1 bÅ1 PÅ0 | (17) |
S2 = a2 bÅ2 PÅ1 | (18) |
S3 = a3 bÅ3 PÅ2 | (19) |
По выражениям (11)–(19) выполнена ИС четырёхразрядного сумматора с параллельным переносом типа ИМ3, реализуемого в отечественных сериях 133, К155, КМ155. Функциональное обозначение данной ИС приведено на рис. 5. Следует подчеркнуть, что реальная схемотехническая реализация ИС типа ИМ3 осуществляется по преобразованным выражениям (11)–(14). Так уравнение (11) с учётом свойства самодвойственности и правила де-Моргана представляется в виде: P0 = a0b0 + (a0 + b0)pвх = a0 + b0 + a0b0pвх.
Рис. 5
В настоящее время уравнения, аналогичные (11), (13)–(15), реализуют не только внутри структуры сумматора, но и в качестве самостоятельной ИС, причём выражение (15) заменяется двумя выражениями:
D0 = D3 + F3D2 + F3F2D1 + F3F2F1D0 | (20) |
F0 = F3F2F1F0pвх</H3,< td> | (21) |
где D0 — функция генерации выходного переноса из четырёхразрядной секции; F0 — функция распространения переноса через четырёхразрядную секцию.
Указанная реализация позволяет каскадировать эти схемы для наращивания разрядности. В качестве примера можно привести ИС типа ИП4 (133, 134, 155, 530, 531, 533, 555, 564, 1531, 1533). Аналогичную структуру имеют ИС типа ИП179 (100, 500, 1500) и ИК03 (585, 589). Такие ИС называют схемами ускоренного переноса (СУП) и применяют совместно с секциями АЛУ и микропроцессоров для повышения быстродействия операционных блоков. Отметим также, что в реальных схемах СУП входные и выходные сигналы могут иметь в качестве активного уровня “0”, такой же уровень должны иметь и схемы, которые они обслуживают (АЛУ, процессорные секции).
Рис. 5 представляет также функциональное обозначение четырёхразрядного параллельного сумматора с последовательным переносом типа ИМ4, выпускавшегося в составе отечественной серии 134 (снятой с производства в начале 80-х годов). Структура этой ИС полностью напоминает структуру, представленную на рис. 3, в которой отсутствует входная логика, реализующая выражения (4) и (5). Инверсия входных разрядов с индексами i = 1 и 3 осуществляется дополнительно встроенными на кристалле инверторами.
Рис. 6
На рис. 6а и б представлены, соответственно, логическая структура и функциональное обозначение сдвоенного полного одноразрядного двоичного сумматора типа ИМ5 (`183), выпускаемого в отечественных сериях 533, К555. Как видно из рис. 6а, данная ИС выполнена по выражениям:
(22) | |
(23) |
при реализации которых используется свойство самодвойственности. Такая структура, даже при наличии инверторов, обеспечивает минимальные задержки распространения сигналов. Данная ИС широко используется при построении быстродействующих суммирующих схем на основе дерева Уоллеса.
Рис. 7
На рис. 7 представлено функциональное обозначение параллельного четырёхразрядного двоичного сумматора с параллельным переносом типа ИМ6 (` 283), выпускаемого в составе серий: 533, К555, КМ555, КР1531. Эта ИС электрически и функционально полностью идентична ИС ИМ3, отличаются они только цоколевкой выводов.
Рис. 8
На рис. 8 представлено функциональное обозначение счетверённого одноразрядного последовательного сумматора/вычитателя типа ИМ7 (`385), выпускаемого в составе серий 533, К555, с общими цепями асинхронного обнуления и синхронной записью (положительным перепадом 01) суммы (результата) и переноса в триггеры хранения. Каждая из четырёх секций ИС выполняет сложение/вычитание двух чисел, представленных в дополнительном коде. Числа подаются на входы последовательно младшими разрядами вперёд. Результат также получается в дополнительном коде и выдаётся на выходе последовательно младшими разрядами вперёд. Четыре независимые секции работают под управлением собственного сигнала S/A (Subtractor/Adder). Если установлено S/A = 1, то выполняется микрооперация “А минус В”, когда S/A = 0, то — “А плюс В”.
Фактически микрооперация “А минус В” выполняется как “А плюс дополнительный код (-В)”. Дополнительный код реализуется как инверсия всех разрядов числа “В плюс 1” в младший разряд. Именно поэтому 0-е значение асинхронного входа сброса R устанавливает триггер суммы в нуль, а триггер переноса — либо в 1 (в режиме вычитания), либо в 0 (в режиме суммирования). Положительный перепад синхросигнала C управляет триггерами суммы и переноса в соответствии таблицей функционирования.
В режиме суммирования структура реализует выражения:
(24) | |
(25) |
Реально она выполнена с использованием преобразованного выражения (24):
(26) |
В режиме вычитания структура реализует выражения:
(27) | |
(28) |
Инвертирование разрядов числа В в данном режиме осуществляется элементом m2 под управлением сигнала S/A. Напомним, что в режиме вычитания в первом такте триггер переноса установлен в 1.
Таблица функционирования ИМ7
Режим работы | Входы | Данные в триггере переноса | Выход S после С = | |||||
R | S/A | a | b | C | перед С = | после С = | ||
Обнуление | 0 1 | х | х | х | ||||
Суммирование | ||||||||
Вычитание | ||||||||
Логическая структура одной секции ИС типа ИМ7 приведена на рис. 9. Основное назначение данной ИС — построение сумматоров и вычитателей для чисел, представленных последовательными кодами. Она чрезвычайно удобна также для совместного использования с последовательно-параллельным умножителем дополнительных кодов типа 533ИП9 (`384).
Рис. 9
Один из вариантов группового переноса реализован в четырёхразрядном параллельном сумматоре 176ИМ1, К561ИМ1, 564ИМ1 (CD 4008A, B). Функциональное обозначение и логическая структура его приведены на рис. 10а и б, соответственно. Между четырьмя одноразрядными сумматорами внутри ИС реализован последовательный перенос, а выходной перенос P3 реализован как параллельный (выражение (15)).
Рис. 10
Сумматоры реализованы и в других, кроме рассмотренных выше, сериях. Например, ИС типа ИМ180 в сериях 100, 500 (MC 10180, MC 10180P) представляет из себя сдвоенный одноразрядный сумматор/вычитатель, способный выполнять четыре микрооперации: “А плюс В”, ”А минус В”, “В минус А”, “0 минус А минус В”.
Отметим один общий момент, относящийся к способу кодирования разрядов обрабатываемых чисел. Наиболее часто разряды чисел кодируются в положительной логике (1 — высоким потенциалом, 0 — низким). Какие числа и какой результат будут кодироваться при тех же потенциалах в отрицательной логике? Числа и результат, заданные в одной логике, будут инверсны числам и результату в другой логике (с учётом входного и выходного переносов!)
Рассмотрим числовой пример. Пусть в положительной логике имеем два числа: А = 10 = 1010, В = 11 = = 1011, тогда в отрицательной логике им будут соответствовать числа: А = 5 = 0101, В = 4 = 0100. Сложим и вычтем (с использованием дополнительного кода) и те и другие:
A 1010 A 1010 + + - + B 1011 B 0100 Pвх 0 1 ---- ---- 10101 01111Накапливающие сумматоры могут строиться двумя способами:
с использованием счётных триггеров;
по структуре “комбинационный сумматор плюс регистр хранения”.
Первый способ в настоящее время практически не применяется вследствие двухтактности операции сложения, низкой скорости распространения сигналов переноса и сложности управления сумматором.
Во втором случае можно реализовать две схемы:
с запоминанием результата операции “S: = А плюс В”;
с накоплением результата “S: = S плюс А”.
На рис. 11 приведена схема 4-разрядного параллельного накапливающего сумматора, выполненного по структуре “комбинационный сумматор плюс регистр хранения” (на часть схемы, нарисованную штриховой линией пока не обращайте внимания). Число с выхода регистра подаётся на входы В сумматора, поэтому здесь реализуется микрооперация “S: = S плюс А”.
Рис. 11
Если схему дополнить вентилем И, нарисованным штриховой линией, то она может использоваться в качестве “делителя частоты”, для которого в общем случае можно записать:
(29) |
где n — разрядность сумматора, А — десятичный эквивалент двоичного кода числа А.
Термин “делитель частоты” указан в кавычках, чтобы подчеркнуть тот факт, что выходные импульсы расставляются им неравномерно (равномерная расстановка импульсов обеспечивается только для значений А, являющихся степенью двойки). Временные диаграммы для рассматриваемой схемы при различных значениях А приведены на рис. 12.
Рис. 12
Кроме использования сумматоров по их прямому назначению, они широко применяются при построении самых различных схем, узлов и операционных блоков. Сумматор является ядром арифметическо-логического устройства (АЛУ), выпускаемого в виде специализированной ИС, причём само АЛУ является ядром процессорных элементов. Чрезвычайно широкое применение находят четвертьсумматоры (элементы “сумма по модулю 2”), реализуемые во многих сериях. Отметим ещё несколько примеров использования сумматоров: двоично-десятичные сумматоры, инкременторы и декременторы, цифровые матричные умножители, цифровые фильтры, преобразователи кодов, счётчики и пересчётные устройства, пороговые схемы, линейные цифровые автоматы и др.
Более подробные сведения о рассмотренных и других структурах сумматоров и схемах на их основе можно получить из многочисленных публикаций, в частности [2–10].
ЗАПОМИНАЮЩИЕ УСТРОЙСТВА (ПАМЯТЬ)
Память может быть внутренней и внешней. Внешней называют память на магнитных, оптических дисках, лентах и т.п. Внутренняя память выполняется, чаще всего, на микросхемах. Внутренняя или основная память может быть двух типов: оперативное запоминающее устройство (ОЗУ) или ЗУ с произвольной выборкой (ЗУПВ) и постоянное ЗУ (ПЗУ). ОЗУ, кроме того, обозначается - (RAM, Random Access Memory), а ПЗУ - (ROM, Read Only Memory). Получила также распространение Флэш(Flash) память, имеющая особенности и ОЗУ и ПЗУ и энергонезависимая память (Nonvolatile - NV). Последнее название условно, так как ПЗУ и Флэш память, также энергонезависимы. В ОЗУ коды в соответствии с решаемыми задачами постоянно изменяются и полностью пропадают при выключении питания. В ПЗУ хранятся управляющие работой ЭВМ стандартные программы, константы, таблицы символов и другая информация, которая сохраняется и при выключении компъютера. ОЗУ подразделяются на статическую память (SRAM), динамическую (DRAM), регистровую (RG). ПЗУ могут быть: масочными - запрограммированными на заводе изготовителе (ROM), однократно-программируемыми пользователем ППЗУ (PROM или OTP), многократно-программируемыми (репрограммируемыми) пользователем РПЗУ с ультрафиолетовым стиранием (EPROM) или c электрическим стиранием (EEPROM,Flash). Широкое распространение нашли также программируемые логические матрицы и устройства (PLM, PML, PLA, PAL, PLD, FPGA и т.д.) с большим выбором логических элементов и устройств на одном кристалле.
В зависимости от типа ЗУэлементом памяти (ЭП) может быть: триггер, миниатюрный конденсатор, транзистор с "плавающим затвором", плавкая перемычка (или ее отсутствие). Упорядоченный набор ЭП образует ячейку памяти (ЯП). Количество элементов памяти в ячейке (длина слова) обычно кратно 2n (1,4,8,16, 32,64..), причем величины свыше 8-ми достигаются, обычно, группировкой микросхем с меньшим количеством ЭП. Количество ЭП в ЯП иногда называется длиной слова. Основными характеристиками микрсхем памяти являются: информационная емкость, быстродействие и энергопотребление. Емкость ЗУ чаще всего выражается в единицах кратных числу 210 = 1024 = 1K. Для длины слова равной биту (одному двоичному разряду) или байту (набору из восьми бит) эта единица называется килобит или килобайт и обозначается Kb или KB.
Каждой из двух в степени "n" ячеек памяти однозначно соответствует "n"- разрядное двоичное число, называемое адресом ЯП. Например, адресом 511-ой ячейки будет число 1 1111 1111(BIN) = 511(DEC) = 1FF(HEX). В программах адреса употребляются в 16-ном формате. Емкость ЗУ часто выражается произведением двух чисел 2n * m, где 2n - число ячеек памяти, а m - длина слова ячейки, например 8K * 8 (м/с 537РУ17), т.е. 8192 ячейки размером в один байт. В некоторых справочниках для этой же микросхемы приводится обозначение емкости одной цифрой 64Kбит, что никак не отражает внутреннюю организацию этой микросхемы, такую же емкость могут иметь м/с с организацией 16K * 4, 64K * 1 и т.д.
Дата добавления: 2016-02-20; просмотров: 5206;