Skip to main content
LibreTexts - Ukrayinska

6.3: Повний суматор

  • Page ID
    29960
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \) \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)\(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\) \(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\)

    Як вже говорилося раніше, проблема з половиною суматора полягає в тому, що він не вважає вхід несуть біт, C в. Щоб зрозуміти C в, розглянемо задачу додавання двох двійкових чисел на рис\(\PageIndex{1}\). У цій задачі результатом додавання першої цифри двох вхідних значень є сума 1 з перенесенням 1. Це перенесення 1 необхідно враховувати при додаванні наступної цифри двох вхідних чисел. Так що перенесення з кожної попередньої цифри необхідно включати в обчислення результату при додаванні двійкових чисел, а по суті нести брижі через цифри додавання (звідси цей тип суматора називається пульсаторно-несучим суматором).

    Малюнок\(\PageIndex{1}\): Проблема додавання, що показує біт перенесення

    Знімок екрана 2020-06-26 о 7.08.52 PM.png

    Включення переносного біта означає, що суматор для однієї цифри в двійковому додаванні вимагає 3 входів, додається двійкова цифра з значень X і Y, а також винесення (C out) від додавання попередньої цифри, яка є перенесенням (C in) до цієї цифри. Схема, яка реалізує це доповнення, називається повною схемою суматора. Таблиця істинності, яка реалізує повний суматор, наведена в таблиці нижче.

    Малюнок\(\PageIndex{2}\): Повна таблиця істинності суматора

    Вхідні дані

    Вихід

    Х

    У

    C в

    S

    C вихід

    0 0 0 0 0
    0 0 1 1 0
    0 1 0 1 0
    0 1 1 0 1
    1 0 0 1 0
    1 0 1 0 1
    1 1 0 0 1
    1 1 1 1 1

    \(\PageIndex{1}\)Повна схема суматора

    Деталі реалізації повного суматора не настільки очевидні, як половина суматора. Є ще дві функції виведення, S і C out, але як реалізувати ці функції є більш складним. Перша функція, S, може бути реалізована, пам'ятаючи, що функція XOR є непарною функцією, тобто результат XOR дорівнює 1, коли непарна кількість вхідних бітів дорівнює 1. Таким чином

    S = XYC в.

    реалізується з двома каскадними затворами XOR.

    Функція C out може бути реалізована, розуміючи, що вона істинна, якщо обидва значення X і Y є істинними, або якщо значення X або Y є істинним, а C in є істинним, або

    C вихід = (X* Y) + ((XY) * C в)

    Використовуючи ці дві функції для C і S, схема для повного суматора може бути представлена в Logisim як наступна діаграма.

    Малюнок\(\PageIndex{3}\): Повна схема суматора

    Знімок екрана 2020-06-26 о 7.16.26 PM.png

    \(\PageIndex{2}\)Повна реалізація суматора

    Реалізація повного суматора на сьогоднішній день є найскладнішою схемою, яку ми реалізували до цього часу. Отже, хоча акуратність при реалізації схеми завжди має значення, тепер важливо бути дуже обережним, щоб розглянути не тільки те, як реалізована схема, але які ворота на мікросхемах використовувати і як зробити з'єднання. Безпомилкова реалізація схеми стане дуже брудною і важко зрозуміти, реалізувати та налагоджувати.

    1. Почніть з установки і живлення 3 вимикачів. Перші два перемикача будуть значеннями X і Y для ланцюга, а третій перемикач буде C за значенням ланцюга. Зверніть увагу, що порядок перемикачів відрізняється від половинного суматора. Ця схема дещо складна, і тому розміщення вимикачів покликане зберегти решту ланцюга максимально простим.
    2. Для цієї схеми потрібні 3 види воріт, тому необхідно використовувати 3 фішки. Встановіть мікросхему 7486 (XOR) на плату, і живіть її як раніше.
    3. Встановіть мікросхему 7408 (І) на плату і живіть її.
    4. Встановіть мікросхему 7432 (OR) на плату і живіть її. Пропонується, щоб ці чіпи були розміщені на платі в такому порядку, оскільки це порядок, до якого вони будуть доступні в схемі. Будь-яке інше розміщення мікросхем вимагатиме проведення проводів як вперед, так і назад в цій схемі, що в кінцевому підсумку буде заплутаним.
    5. Після того, як чіпи будуть встановлені на платі, проводите ворота XOR. Проведіть перемикачі X і Y до контактів 1 і 2 (перший затвор XOR) на лівій стороні мікросхеми 7486. Вихід затвора XOR буде на контакті 3.

      Зверніть увагу на пару речей про ці ворота. Спочатку вхідні дроти X і Y підключаються до вхідних контактів, але також з'єднані з проводами, які надсилають свої значення на затвор І на кроці 7.

      Відзначимо також, що вихід на контакт 3 направляється вперед на два місця: вхід третього затвора XOR, і на вхід другого затвора І.

      Нарешті, зауважте, що схема була розроблена для спроби зберегти дроти, використовувані на виході S праворуч від плати, а дроти, що використовуються у виході C на лівій стороні плати.

      Малюнок\(\PageIndex{4}\): Повна реалізація суматора

      Знімок екрана 2020-06-26 о 7.23.24 PM.png

    6. Проведіть вихід від першого затвора XOR (контакт 3 на мікросхемі 7486) і перемикач C до третього затвора XOR на правій стороні плати, використовуючи контакти 12 і 13 на мікросхемі 7486. Вихід з цього затвора XOR, контактний 11 на мікросхемі 7486, буде виходом S з ланцюга, тому підключіть це до світлодіода S.

      Зверніть увагу, що C у вході на контакті 12 буде переадресований на вхід на другий затвор І, подібно до того, що було зроблено на кроці 5.

    7. Проведіть входи X і Y, переадресовані з контактів 1 і 2 на мікросхемі 7486 XOR, до першого затвора І, контактів 1 і 2, на лівій стороні мікросхеми 7408. Вихід цього затвора І буде на контакті 3, і відправлений на вхід для першого елемента АБО.
    8. Проведіть вихід першого затвора XOR, контакт 3 на 7486, на вхід другого затвора І, контакт 4, з лівого боку мікросхеми 7408. Провід C в, перенаправлений з контакту 12 на мікросхемі 7486, на другий вхід для цього і затвора, контактний 5 на мікросхемі 7408. Вихід з цього затвора І буде на штирі 6.
    9. Підключіть вихід першого затвора І, контакт 3 на мікросхемі 7408, до першого входу на затворі АБО, контакту 1, на мікросхемі 7432. Підключіть вихід на другий затвор І, контакт 6 на мікросхемі 7408, до другого входу, контакту 2, на мікросхемі 7432. Вихід від затвора АБО, контакт 3 на 7432, є виходом C out для схеми. Проведіть цей вихід до світлодіода С.

    Схема повинна реалізувати повну поведінку суматора. Якщо всі вимикачі вимкнені, схема буде темною; якщо два або більше перемикачів увімкнено, вихід C буде увімкнено; нарешті, якщо непарна кількість перемикачів на виході S буде увімкнено. Якщо всі 3 перемикачі увімкнені, обидва світлодіоди C і S будуть увімкнені.