Проектирование многоразрядного десятичного сумматора комбинационного типа

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



Министерство образования Российской Федерации

Московский Государственный Институт Электроники и Математики

(Технический Университет)

Кафедра Информационно-коммуникационных технологий

КУРСОВАЯ РАБОТА

на тему:

"Проектирование многоразрядного десятичного

сумматора комбинационного типа"

по дисциплине: "Теория автоматов"

Выполнила:

Студентка группы С-45 Сотова Юлия

Проверил: Бирюков И.И.

Москва 2011

Содержание

Разработка оптимальной схемы одноразрядного двоичного сумматора с учетом заданного базиса логических элементов

Разработка схемы коррекции

Проектирование логической схемы одноразрядного десятичного сумматора

Нахождение знака переполнения

Построение функциональной схемы 3-х разрядного сумматора

Разработка устройства управления для многоразрядного десятичного сумматора

Разработка регистра признаков результата

Проектирование распределителя сигналов

Исходные данные для проектирования

Двоично-десятичный код, в котором находятся числа. - 2421

Система логических элементов - ИЛИ, ИЛИ-НЕ.

Критерий оптимальности элементов для проектирования логических схем - минимальное количество логических элементов.

Тип триггера для проектирования схемы управления - D.

Временные параметры синхронизирующей серии импульсов логических элементов:

Задержка 1 логического элемента - 1нс.

Управляющий сигнал - 2нс.

ЦифраКодирование 242100000100012001030011401005101161100711018111091111

Для получения алгоритма построим таблицу соответствия

Каждая ячейка этой таблицы содержит:

коррекцию;

результат сложения соответствующих двоично-десятичных чисел по правилам двоичной арифметики;

корректный результат сложения.

Из таблицы видно, что корректирующих величин две.

Коррекцию 0110 необходимо вводить если

появилась запрещенная комбинация (но при этом не осуществляется перенос в следующую тетраду т.е. результат меньше 10).

Коррекцию 1010 необходимо вводить если

появилась запрещенная комбинация (и при этом осуществляется перенос в следующую тетраду т.е. результат больше 10).

Таблица соответствия

Код 242101234567890000000100100011010010111100110111101111 0000000010010001101001011110011011110111100000000000100100011010010111100110111101111 0110 10001001000110100010111001101111011111.000000010001001000110100101111001101111011111.0000 01100110 2001000110100010101101101111011111.00001.00010010001000110100101111001101111011111.00001.0001 011001100110 300110100010101100111111011111.00001.00011.0010001100110100101111001101111011111.00001.00011.0010 0110011001100110 40100010101100111100011111.00001.00011.00101.001101000100101111001101111011111.00001.00011.00101.0011 101010101010101010105101111001101111011111.01101.01111.10001.10011.10101011101111001101111011111.00001.00011.00101.00111.0100 1010101010101010 611001101111011111.00001.01111.10001.10011.10101.1011110011001101111011111.00001.00011.00101.00111.01001.1011 101010101010 71101111011111.00001.00011.10001.10011.10101.10111.110011011101111011111.00001.00011.00101.00111.01001.10111.1100 10101010 8111011111.00001.00011.00101.10011.10101.10111.11001.11011110111011111.00001.00011.00101.00111.01001.10111.11001.1101 1010 911111.00001.00011.00101.00111.10101.10111.11001.11011.1110111111111.00001.00011.00101.00111.01001.10111.11001.11011.1110

Рассмотрим 6 примеров на сложение трёхразрядных десятичных чисел

)Сложение двух положительных чисел в прямом коде без переполнения разрядной сетки

+3750,0011,1101,1011+2810,0010,1110,0001+6560,0110,1011,11000110,0000,00000,1100,1011,1100

2)Сложение положительного (прямой код) и отрицательного (обратный код) числа, ответ получается в прямом коде. Появляется единица переноса в знак. разряд, единица из знакового разряда идет в младший разряд первой тетрады.

+8420,1110,0100,0010-3761,1100,0010,0011+4660,1010,0110,01101010,0110,01100,0100,1100,1100

3)Сложение двух отрицательных чисел в обратном коде, ответ в обратном коде. Появляется единица переноса в знак. разряд, единица из знакового разряда идет в младший разряд первой тетрады

-4151,1011,1110,0100-1341,1110,1100,1011-5491,1010,1011,00001010,0000,00001,0100,1011,0000

сумматор одноразрядный десятичный двоичный

4)Сложение положительного (прямой код) и отрицательного (обратный код) числа, ответ получается в обратном коде (ответ отрицательный).

+1390,0001,0011,1111-5431,0100,1011,1100-4041,0101,1111,10110110,0000,0001,1011,1111,1011

5)При сложении двух положительных чисел в прямом коде, ответ отрицательный, значит, мы получили переполнение разрядной сетки.

+8750,1110,1101,1011+7310,1101,0011,0001+16061,1100,0000,1100

6)При сложении двух отрицательных чисел в обратном коде, ответ положительный, значит, мы получили переполнение разрядной сетки.

-5781,0100,0010,0001-6321,0011,1100,1101-12100,0111,1110,11110110,0000,00000,1101,1110,1111

Разработка оптимальной схемы одноразрядного двоичного сумматора с учетом заданного базиса логических элементов

Реализация в базисе "ИЛИ", "ИЛИ-НЕ".

a - первое слагаемое; b - второе слагаемое; c - перенос из соседнего младшего разряда; S - сумма в данном разряде; P - перенос в соседний старший разряд.

Таблица истинности для функций S и P в одноразрядном двоичном сумматоре

abcSP 0000000110010100110110010101011100111111Sa?ab 1 1b1 1 ?cc?cPa?ab111 b 1 ?cc?c

МДНФ для S:

МКНФ для P (с учётом общей части):

Paab 1b1 11ccc

,

Видно, что для реализации S требуется 7 элементов ИЛИ-НЕ и 1 элемент ИЛИ, для реализации P - 6 элементов ИЛИ-НЕ и 1 элемент ИЛИ.

А для всей системы требуется: 8 элементов ИЛИ-НЕ и 2 элемента ИЛИ.

Разработка схемы коррекции

1. Коррекция вводится, если получается запрещенная комбинация.

?4?3?2?1Fзк000