Проектирование многоразрядного десятичного сумматора комбинационного типа - umotnas.ru o_O
Главная
Поиск по ключевым словам:
страница 1страница 2
Похожие работы
Название работы Кол-во страниц Размер
Проектирование многоразрядного десятичного сумматора комбинационного... 5 847.45kb.
Проектирование многоразрядного десятичного сумматора комбинационного... 3 554.43kb.
Задание 1 Запишите прямой код десятичного числа 52 1 15.22kb.
37. Проектирование баз данных. Проектирование с использованием метода... 1 209.07kb.
Процессы разупорядочения в фоторефрактивных монокристаллах ниобата... 1 362.22kb.
Дипломное проектирование 4 541.89kb.
Лекция Анализ и проектирование программного обеспечения. Проектирование по 1 166.11kb.
Экономическая стратификация. Два основных типа флуктуаций 3 930.61kb.
Строительство, проектирование, выполнение работ по оборудованию бассейнов. 1 82.13kb.
1. Задача: Разработать двоичный накапливающий 14-ти разрядный сумматор. 1 39.73kb.
Вопросы к зачету (экзамену) по курсу "Проектирование трансляторов" 1 19.99kb.
П/н Содержание операции Шифр счетов 3 767.03kb.
Викторина для любознательных: «Занимательная биология» 1 9.92kb.

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

МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ИНСТИТУТ ЭЛЕКТРОНИКИ И МАТЕМАТИКИ

(Технический университет)
Кафедра «Вычислительные

системы и сети»

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

на тему

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

Исполнитель: Руководитель:

студент группы С-44 ст. препод. Каф. ВСиС, к.т.н.

Колесов С.Н. Бирюков И.И.

Москва 2011

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

1.1 Количество десятичных разрядов: 3

1.2 Двоично-десятичный код, в котором находятся числа: 8421+3

1.3 Система логических элементов: или-не, и

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

1.5 Тип триггера для проектирования схемы управления: синхронный 2-х тактный JK-триггер



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

  • время задержки в любом ЛЭ: 1 нсек;

  • импульсы синхронизации длительностью 2 нсек со скважностью 1

2.Разработка алгоритма выполнения арифметических операций сложения и вычитания многоразрядных чисел в заданном двоично-десятичном коде.

8421+3

0

1

2

3

4

5

6

7

8

9

0011

0100

0101

0110

0111

1000

1001

1010

1011

1100

0

1101

1101

1101

1101

1101

1101

1101

1101

1101

1101

0011

0110

0111

1000

1001

1010

1011

1100

1101

1110

1111

 

0011

0100

0101

0110

0111

1000

1001

1010

1011

1100

1

1101

1101

1101

1101

1101

1101

1101

1101

1101

0011

0100

0111

1000

1001

1010

1011

1100

1101

1110

1111

1.0000

 

0100

0101

0110

0111

1000

1001

1010

1011

1100

1.0011

2

1101

1101

1101

1101

1101

1101

1101

1101

0011

0011

0101

1000

1001

1010

1011

1100

1101

1110

1111

1.0000

1.0001

 

0101

0110

0111

1000

1001

1010

1011

1100

1.0011

1.0100

3

1101

1101

1101

1101

1101

1101

1101

0011

0011

0011

0110

1001

1010

1011

1100

1101

1110

1111

1.0000

1.0001

1.0010

 

0110

0111

1000

1001

1010

1011

1100

1.0011

1.0100

1.0101

4

1101

1101

1101

1101

1101

1101

0011

0011

0011

0011

0111

1010

1011

1100

1101

1110

1111

1.0000

1.0001

1.0010

1.0011

 

0111

1000

1001

1010

1011

1100

1.0011

1.0100

1.0101

1.0110

5

1101

1101

1101

1101

1101

0011

0011

0011

0011

0011

1000

1011

1100

1101

1110

1111

1.0000

1.0001

1.0010

1.0011

1.0100

 

1000

1001

1010

1011

1100

1.0011

1.0100

1.0101

1.0110

1.0111

6

1101

1101

1101

1101

0011

0011

0011

0011

0011

0011

1001

1100

1101

1110

1111

1.0000

1.0001

1.0010

1.0011

1.0100

1.0101

 

1001

1010

1011

1100

1.0011

1.0100

1.0101

1.0110

1.0111

1.1000

7

1101

1101

1101

0011

0011

0011

0011

0011

0011

0011

1010

1101

1110

1111

1.0000

1.0001

1.0010

1.0011

1.0100

1.0101

1.0110

 

1010

1011

1100

1.0011

1.0100

1.0101

1.0110

1.0111

1.1000

1.1001

8

1101

1101

0011

0011

0011

0011

0011

0011

0011

0011

1011

1110

1111

1.0000

1.0001

1.0010

1.0011

1.0100

1.0101

1.0110

1.0111

 

1011

1100

1.0011

1.0100

1.0101

1.0110

1.0111

1.1000

1.1001

1.1010

9

1101

0011

0011

0011

0011

0011

0011

0011

0011

0011

1100

1111

1.0000

1.0001

1.0010

1.0011

1.0100

1.0101

1.0110

1.0111

1.1000

 

1100

1.0011

1.0100

1.0101

1.0110

1.0111

1.1000

1.1001

1.1010

1.1011

Если результат сложения двух одноразрядных чисел с учетом переноса из предыдущего разряда меньше десяти то коррекция требуется. Корректирующая величина будет 1101.

Если результат от сложения двух одноразрядных чисел с учетом переноса из предыдущего разряда больше или равен десяти, то коррекция требуется. Коррекционная величина будет 0011. Единица переноса, полученная при корректировке, не учитывается.

2.3 Шесть примеров

2.3.1 (+A)+(+B)=(+C)


+

249

358

607




+

0.0101.0111.1100




0.0110.1000.1011




0.1100.0000.0111




1101.0011.0011

коррекция




0.1001.0011.1010



Получен требуемый результат. Результат сохраняется.



2.3.2 (+A)+(-B)=(+C)

+

479

-258

221




+

0.0111.1010.1100




1.1010.0111.0100







10.0010.0010.0000







0011.0011.0011

коррекция




0.0101.0101.0011







1







0.0101.0101.0100



При сложении чисел в обратном коде "1" переноса из знакового разряда добавляется к младшему разряду результата.

Получен требуемый результат. Результат сохраняется.

2.3.3 (+A)+(-B)=(-C)


+

378

-859

-481




+

0.0110.1010.1011




1.0100.0111.0011







1.1011.0001.1110







1101.0011.1101

коррекция




1.1000.0100.1011



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


2.3.4 (-A)+(-B)=(-C)

+

-452

-377

-829




+

1.1000.0111.1010




1.1001.0101.0101







11.0001.1100.1111







1







1.0001.1101.0000







0011.1101.0011

коррекция




1.0100.1010.0011



Получен требуемый результат. Результат сохраняется.



2.3.5 (+A)+(+B)=(-C) - Переполнение разрядной сетки

+

759

878

(1)637




+

0.1010.1000.1100




0.1011.1010.1011







1.0110.0011.0111







0011.0011.0011

коррекция




1.1001.0110.1010



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



2.3.6 (-A)+(-B)=(+C) - Переполнение разрядной сетки.

+

-547

-759

-(1)303




+

1.0111.1000.0101




1.0101.0111.0011







10.1100.1111.1000







1101.1101.1101

коррекция




1







0.1001.1100.0110



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



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

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



a — первое слагаемое;

b — второе слагаемое;

c — перенос из соседнего младшего разряда;

S — сумма в данном разряде;



P — перенос в соседний старший разряд.

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


a

b

c

S

P

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







a



b










1



1




1

1






c










a



b




1




1



1




1









c








Для реализации S требуется 4 элемента ИЛИ-НЕ и 1 элемент И, для реализации P – 4 элемента ИЛИ-НЕ.

Суммирование одноразрядных десятичных чисел происходит в два этапа. На первой ступени суммирования получается результат, который подвергается анализу на предмет введения коррекции и на второй ступени вводится одна или другая коррекция.



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


Pi

К8

К4

К2

К1

0

1

1

0

1

1

0

0

1

1



Pi = 0

K8 = K4 = K1 =

K2 = P
Pi = 1

K8 = K4 =

K2 = K1 = P



3.3 Разработка схемы одноразрядного десятичного сумматора.

Условное изображение этой функциональной схемы будет следующим:



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

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

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



Пусть на вход преобразователя приходят одноразрядные десятичные числа, закодированные с помощью двоичных символов и имеющие условные обозначения а0 – знак числа, 8421 – само число.

На выходе будет а0 – знак числа (он не изменяется), ’’8’’4’’2’’1.

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



a0

8

4

2

1

’’8

’’4

’’2

’’1

0

0

0

0

0

X

X

X

X

0

0

0

0

1

X

X

X

X

0

0

0

1

0

X

X

X

X

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

1

0

1

0

0

1

0

1

1

1

0

1

1

0

1

1

0

0

1

1

0

0

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

X

X

X

X

1

0

0

0

1

X

X

X

X

1

0

0

1

0

X

X

X

X

1

0

0

1

1

1

1

0

0

1

0

1

0

0

1

0

1

1

1

0

1

0

1

1

0

1

0

1

0

1

1

0

1

0

0

1

1

0

1

1

1

1

0

0

0

1

1

0

0

0

0

1

1

1

1

1

0

0

1

0

1

1

0

1

1

0

1

0

0

1

0

1

1

1

0

1

1

0

1

0

0

1

1

1

0

0

0

0

1

1

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





























1

X

X




1

1









1

X

X




1

X

X














1

1

X




1

X

X




1

X

X




1

X



















































X

X

1




1




1






X

X

1




X

X

1








1




1

X

1




X

X

1




X

X

1




X



















































X

X

1







1

1



1

X

X




1

X

X








1

1







X

1




X

X




1

X

X




1

X
















































1

X

X










1

1



1

X

X







X

X

1





1

1







X




1

X

X

1




X

X




1

X



















По полученным аналитическим выражениям построим функциональную схему преобразователя:



Условное изображение этой функциональной схемы будет следующим:




следующая страница >>