Суматор

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук

Сума́тор (англ. adder) — вузол ЕОМ, призначений для утворення суми двох операндів; цифрова схема, яка виконує додавання чисел.

Загальна характеристика суматорів[ред.ред. код]

Позначення суматора на електронних схемах
Реалізація суматора на двох напівсуматорах
Повний двійковий суматор.

Суматором називається функціональний вузол комп'ютера, призначений для додавання двох n-розрядних слів (чисел). Операція віднімання замінюється додаванням слів в оберненому або доповнювальному кодах. Операції множення та ділення перетворюються на реалізації багаторазового додавання та зсуву. Тому суматор є важливою частиною арифметико-логічного пристрою. Функція суматора позначається літерами SM або Σ.

Суматор складається з окремих схем, які називаються однорозрядними суматорами; вони виконують усі дії з додавання значень однойменних розрядів двох чисел (операндів). Суматори класифікують за такими ознаками:

  • способом додавання — паралельні, послідовні та паралельно-послідовні;
  • кількістю вхідних клем — напівсуматори, однорозрядні або багаторозрядні суматори;
  • організацією зберігання результату додавання — комбінаційні, накопичувальні, комбіновані;
  • системою числення — позиційні (двійкові, двійково-десяткові, трійкові) та непозиційні, наприклад, у системі залишкових класів;
  • розрядністю (довжиною) операндів — 8-, 16-, 32-, 64-розрядні;
  • способом подання від'ємних чисел — в оберненому або доповнювальному кодах, а також їх модифікаціях;
  • часом додавання — синхронні та асинхронні.

У паралельних n-розрядних суматорах значення всіх розрядів операндів поступають одночасно на відповідні входи однорозрядних підсумовуючих схем. У послідовних суматорах значення розрядів операндів та перенесення, які запам'ятовувалися в минулому такті, поступають послідовно в напрямку від молодших розрядів до старших на входи одного одно розрядного суматора. В паралельно-послідовних суматорах числа розбиваються на частини, наприклад, байти, розряди байтів поступають на входи восьми розрядного суматора паралельно (одночасно), а самі байти — послідовно, в напрямку від молодших до старших байтів з врахуванням запам'ятованого перенесення.

У комбінаційних суматорах результат операції додавання запам'ятовується в регістр результату. В накопичувальних суматорах процес додавання поєднується зі зберіганням результату. Це пояснюється використанням Т-тригерів як однорозрядних схем додавання.

Організація перенесення практично визначає час виконання операції додавання. Послідовні перенесення схемно створюються просто, але є повільнодіючими. Паралельні перенесення схемно реалізуються значно складніше, але дають високу швидкодію.

Розрядність суматорів знаходиться в широкому діапазоні 4-16 — для мікро- та міні-комп'ютерів та 32-128 і більше — для універсальних машин.

Суматори з постійним інтервалом часу для додавання називаються синхронними. Суматори, в яких інтервал часу для додавання визначається моментом фактичного закінчення операції, називаються асинхронними. В асинхронних суматорах є спеціальні схеми, які визначають фактичний момент закінчення додавання і повідомляють про це в пристрій керування. На практиці переважно використовуються синхронні суматори.

Суматори характеризуються такими параметрами:

  • швидкодією — часом виконання операції додавання tΣ, який відраховується від початку подачі операндів до одержання результату; нерідко швидкодія характеризується кількістю додавань в секунду FΣ = 1/ tΣ, тут розуміємо операції регістр-регістр (тобто числа зберігаються в регістрах АЛП);
  • апаратурними затратами: вартість одно розрядної схеми додавання визначається загальною кількістю логічних входів використаних елементів;
  • вартість багаторозрядного суматора визначається загальною кількістю використаних мікросхем;
  • споживаною потужністю.

Класифікація суматорів[ред.ред. код]

Залежно від форми подання інформації розрізняють суматори аналогові і цифрові

За способом реалізації[ред.ред. код]

  • механічні.
  • електромеханічні.
  • електронні.
  • пневматичні.

За принципом дії[ред.ред. код]

  • На лічильниках, які вважають кількості імпульсів вхідного сигналах.
  • Функціональні, що видають на виходах значення логічної функції суми по модулю і логічної функції розряду переносу:
    • логічні, кожен раз обчислюють функцію розряду суми по модулю і функцію розряду переносу.
    • табличні, з таблицями заздалегідь обчислених значень функції розряду суми по модулю і значень функції розряду переносу записаних в:
      • ПЗП, ППЗ (апаратні) (надійніше і дешевше логічних, так як замість напівпровідників, що виконують логічні обчислення, в ПЗУ використовуються провідники й ізолятори "прошивки") або
      • ОЗУ (апаратні і програмні).

Табличні суматори були застосовані в обчислювачах побудованих на реле в США до другої світової війни.

За архітектурою[ред.ред. код]

  • Четвертьсумматори - бінарні (двохоперандні) суматори за модулем без розряду переносу, що характеризуються наявністю двох входів, на які подаються два однорозрядних числа, і одним виходом, на якому реалізується їх арифметична сума по модулю.
  • Напівсуматор - бінарні (двохоперандні) суматори за модулем з розрядом перенесення, які характеризуються наявністю двох входів, на які подаються однойменні розряди двох чисел, і двох виходів: на одному реалізується арифметична сума по модулю в даному розряді, а на іншому - перенесення в наступний (старший) розряд.
  • Повні суматори - тернарні (трьохоперандні) суматори за модулем з розрядом перенесення, які характеризуються наявністю трьох входів, на які подаються однойменні розряди двох складаються чисел і перенесення з попереднього (більш молодшого) розряду, і двома виходами: на одному реалізується арифметична сума по модулю в даному розряді, а на іншому - перенесення в наступний (більш старший розряд). Такі суматори з самого початку орієнтовані тільки на показові позиційні системи числення.
  • Накопичуючі суматори - забезпечені власною внутрішньою пам'яттю.

За способом дії[ред.ред. код]

  • Послідовні (однорозрядні), в яких обробка розрядів чисел ведеться по черзі, розряд за розрядом, на одному і тому ж однорозрядного обладнанні.
  • Паралельні (багаторозрядні), в яких складові складаються одночасно в усіх розрядах, і для кожного розряду є своє обладнання.
  • Паралельно-послідовні, в яких одночасно паралельно послідовно складаються розряди декількох пар чисел.

За способом організації перенесення[ред.ред. код]

  • З послідовним переносом (Ripple-carry adder, Схема послідовного перенесення).
  • З прискореним груповим переносом (з передбаченням перенесення) (Carry-lookahead adders, CLA-adders).
  • З пропуском перенесення (Carry-skip adder).
  • Суматор з умовним складанням (Conditional sum adder).
  • З перемиканням перенесення (з вибором перенесення) (Carry-select adder).
  • Зі збереженням перенесення (Carry-save adder).

За системою числення[ред.ред. код]

Див. також[ред.ред. код]