- •Проектирование многоразрядного десятичного сумматора комбинационного типа
- •1. Цель и практическое содержание методических указаний
- •1.1. Цель работы
- •1.2. Краткое содержание
- •2. Теоретическая часть
- •2.1. Теория о двоично-десятичном кодировании и свойствах кодов
- •Примеры двоично-десятичных кодов
- •2.2. Сложение одноразрядных десятичных числе со знаком в двоично-десятичном коде
- •0.1000.0111.0101
- •2.3. Проектирование функциональной логической схемы и её реализация в заданном базисе логических элементов
- •2.3.1. Общие принципы
- •2.3.2. Проектирование логической схемы одноразрядного двоичного сумматора
- •2.3.3. Проектирование одноразрядного десятичного сумматора в коде 8421
- •2.3.4. Проектирование дополнительных схем
- •2.3.5. Построение функциональной схемы 3-х разрядного десятичного сумматора
- •2.4. Устройство управления многоразрядным сумматором
- •2.4.1. Проектирование распределителя сигналов
- •2.4.2. Получение общей схемы сумматора
- •2.5. Порядок оформления пояснительной записки
- •Литература
- •Приложение
- •Содержание
2.3.4. Проектирование дополнительных схем
Все числа, которые приходят на входы сумматоры, представлены в прямом коде. Для выполнения операции сложения (вычитания) с этими величинами необходимо представить их в обратном коде. Для этого необходимо разработать преобразователь чисел из прямого кода в обратный. Причем нетрудно заметить, что преобразователь из обратного кода в прямой будет иметь ту же схему.
Пусть на вход преобразователя приходят одноразрядные десятичные числа, закодированные с помощью двоичных символов и имеющие условные обозначения a0 — знак числа, α8 α4 α2 α1 — само число.
На выходе будетa0 — знак числа (он не изменяется), α8 α4 α2 α1.
Зная правила записи числа в обратном коде, составим таблицу истинности преобразователя.
Таблица 2.3.3.
Таблица истинности преобразователя
a0 |
α8 |
α4 |
α2 |
α1 |
α8 |
α4 |
α2 |
α1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
X |
X |
X |
X |
0 |
1 |
0 |
1 |
1 |
X |
X |
X |
X |
0 |
1 |
1 |
0 |
0 |
X |
X |
X |
X |
0 |
1 |
1 |
0 |
1 |
X |
X |
X |
X |
0 |
1 |
1 |
1 |
0 |
X |
X |
X |
X |
0 |
1 |
1 |
1 |
1 |
X |
X |
X |
X |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
X |
X |
X |
X |
1 |
1 |
0 |
1 |
1 |
X |
X |
X |
X |
1 |
1 |
1 |
0 |
0 |
X |
X |
X |
X |
1 |
1 |
1 |
0 |
1 |
X |
X |
X |
X |
1 |
1 |
1 |
1 |
0 |
X |
X |
X |
X |
1 |
1 |
1 |
1 |
1 |
X |
X |
X |
X |
Рассмотрим α8, α4, α2 и α1 как переключательные функции, зависящие от 5 аргументов. Эти функции не полностью определенные, так как на 10-15 и 26-31 наборах их значения не определены. В коде 8421 комбинации двоичных сигналов, которые записаны на данных наборах, не существуют.
Для построения схемы получим МДНФ всех переключательных функций с помощью диаграмм Вейча:
α8:
Рис. 2.3.8.
α8 = a0 α8 + a0 α8 α4 α2 = a0 α8 + a0 (α8 + α4 + α2)
α4:
Рис. 2.3.9.
α4 = a0 α4 α2 + a0 α4 + α4 α2 = a0 α4 α2 + α4 (a0 + α2) = a0 α4 α2 + α4 a0α2
α2:
Рис. 2.3.10.
α2 = α2
α1:
Рис. 2.3.11.
α1 = a0 α1 + a0 α1
По полученным аналитическим выражениям построим функциональную схему преобразователя (рис. 2.3.12,а).
Рис. 2.3.12,а. Логическая схема преобразователя.
В дальнейшем данную схему будем изображать следующим образом (рис. 2.3.12,б).
Рис. 2.3.12,б. Условное обозначение логической схемы преобразователя.
Чтобы убедиться, что в данной схеме преобразователя выполняется критерий оптимальности (минимальное количество ЛЭ) необходимо получить МКНФ всех функций, построить, используя полученные аналитические выражения функциональную схему и сравнить два варианта по количеству ЛЭ. Рекомендуем эту операцию проделать самостоятельно.
При наступлении переполнения разрядной сетки результат получается неправильным. Чтобы фиксировать наступление переполнения необходимо спроектировать специальную схему. В основу проектирования этой схемы положено правило наступления переполнения разрядной сетки. Оно гласит: переполнение наступает:
при сложении двух положительных величин результат получается отрицательным;
при сложении двух отрицательных величин результат получается положительным.
Обозначим:
а0 и b0 — знаки слагаемых;
c0 — знак результата;
φ — знак переполнения.
По правилам переполнения составим таблицу истинности для переключательной функции φ.
Таблица 2.3.4.
Таблица истинности для функций φ
а0 |
b0 |
c0 |
φ |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
Для построения схемы получим МДНФ переключательной функции с помощью диаграммы Вейча:
Рис. 2.3.13. Диаграммы Вейча для функции φ.
По полученному выражению построим функциональную схему, фиксирующую переполнение (рис. 2.3.14,а).
Рис. 2.3.14,а. Логическая схема, фиксирующая переполнение.
Условное изображение этой функциональной схемы будет следующим (рис. 2.3.14,б).
Рис. 2.3.14,б. Условное обозначение логической схемы, фиксирующая переполнение.
Правило сложения чисел в обратном коде гласит, что при выполнении операции знаковые разряды участвуют в сложении на ровне с остальными разрядами. При этом учитывается перенос в знаковый разряд и перенос из знакового разряда. Поэтому для получения знака результата можно использовать одноразрядный двоичный сумматор.