Проектирование цифрового автомата по выполнению арифметических операций
Изучение принципа работы цифрового автомата для сложения двоичных чисел, представленных в форме с фиксированной запятой, на базисе алгебры Буля. Правила построения операционных и функциональных схем отдельных устройств, логических систем и функций.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 24.01.2014 |
Размер файла | 1,2 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Реферат
цифровой автомат сложение алгебра
ПЗ: стр., рисунков, ссылок, приложений
Объект: операционное устройство, реализующее операцию сложения. Операнды и результат: 16-разрадные, представлены в формате с фиксированной точкой, в соответствии с документом ANSI/IEEEE 754-1985. Тип сумматора: двоичный, дополнительного кода.
Цель: разработать логическую схему операционного устройства. Тип управляющего автомата - автомат Мура. Целевой логический базис - Буля (И-ИЛИ-НЕ). Тип элементов памяти управляющего автомата - D-триггер
Метод: канонический структурный синтез, включающий этапы структурной оптимизации схемы операционного автомата, логической оптимизации схемы управляющего автомата, логической и физической факторизации схемы управляющего автомата
Техническое задание
Выполнить структурный синтез операционного устройства, реализующего заданную арифметическую операцию. Проектирование должно выполняться согласно технологии канонического структурного синтеза синхронных цифровых автоматов
Разработать логическую схему (ЛС) операционного устройства, содержащего структурно оптимизированную операционную часть и управляющую часть, представляющую собой конечный автомат
Вариант реализации управляющего автомата (УА) - упрощенный, полностью факторизированный автомат Мура.
Основные технические параметры задания на курсовое проектирование:
1. Характеристики операционного устройства:
- арифметическая операция - сложение
- алгоритм - сложение
- тип сумматора - двоичный сумматор дополнительного кода (ДСДК)
- разрядность слова данных - 16 бит
- разрядность слова результата - 16 бит
- формат представления данных - фиксированная точка ANSI/IEEEE 754-1985
- способ кодирования знака - модифицированный код
- устройство управлении - сосредоточенно в отдельном УА
- тип устройства управления - конечный автомат
2. Характеристики управляющего автомата
- тип управляющего автомата - автомат Мура
- тип элементов памяти - D-триггер
- алгоритм логической минимизации - карты Карно
- логическая факторизация - базис - Буля
- физическая факторизация -базис - И-ИЛИ-НЕ
Введение
Данная курсовая работа выполнена соответственно плану по дисциплины "Прикладная теория цифровых автоматов".
Задача проектирования рассматривается как задача синтеза автомата, выполняющего сложение двоичных чисел в формате с плавающей запятой.
Для выполнения сложения, необходимо знать правила сложения.
Сложение двоичных чисел.
Арифметические операции можно выполнять с двоичными числами, представленными в прямом, обратном и дополнительном коде. Если операнды представлены в прямом коде и имеют одинаковые знаки, то над ними при алгебраическом сложении естественно выполняется процедура сложения. Если же операнды имеют разные знаки - процедура вычитания. Для упрощения аппаратных средств компьютера процедура вычитания заменяется сложением благодаря тому, что отрицательный операнд представляется в обратном или дополнительном коде.
1. Тестовый пример
Сложение чисел с противоположными знаками:
А754 = 1.1110.01101000000
В754 = 0.1101.10010100000
ЗнС = 0
expС = 0111
ПС = ПА - ПВ = 0111+ 0010 = 0001 необходимо сдвинуть А на единицу вправо
МАобр = 10010111111
МАдоп = 10011000000
МВдоп = 10010100000
10011000000
+ 10010100000
МС:= 10101100000
С754 = 0.0111.10101100000
Сложение чисел с положительными знаками
А754 = 0.0111.10110010000
В754 = 0.0110.11011000000
ЗнС = 0
expС = 0111
ПС = ПА - ПВ = 0001 необходимо сдвинуть А на единицу вправо
МА = 01011001000
МВ = 11011000000
01011001000
+ 11011000000
МС:= 1|00110001000
С754 = 0.0111. 00110001000
Сложение двух чисел с отрицательными знаками
А754 = 1.0011.10011000000
В754 = 1.0011.11100100000
ЗнС = 1
expС = 0011
ПС = ПА - ПВ = 0000 сдвиг не производим
МАобр = 01100111111
МАдоп = 01101000000
МВобр = 00110111111
МВдоп = 00011100000
10110111111
+ 00011100000
МС:= 11010001111
С754 = 1.0011.11010001111
2. Алгоритм
1. Начало
2. Обнуляем ЦА . Задаем число А (В),С в формате IEEE 754 . Задаем к-формата =10.
3. Проверяем РОН1 на значение 0 занесенного числа А
4. Присвоить в РОН3 число С равное А
5. Проверяем РОН2 на значение 0 занесенного числа В
6. Присвоить в РОН3 число С равное В
7. Проверить 15 (знаковый) разряд РОН1 на значение 1 или 0
8. В РОН1 присвоить РОН1 в дополнительном коде
9. В СМ присвоить РОН1
10. Проверить 15 (знаковый) разряд РОН2 на значение 1 или 0
11. В РОН2 присвоить РОН2 в дополнительном коде
12. К СМ прибавить РОН2
13. Проверить 15 и 16 (знаковый) разряд СМ на значение 10 или 01
14. Сдвинуть СМ на 1 разряд вправо. Добавить к к-формата единицу
15. Проверить знак СМ (15 и 16 знаковые разряды) на значение 11 или 00
16. Присвоить в СМ значение СМ в прямом коде
17. В С присвоить значение СМ. В РОН 3 присвоить значение С
18. Конец
3. Блок-схема алгоритма
4. Граф-схема
5. Алфавит сигналов
Y1 - ЦА:=0 - установка "стартового" состояния цифрового автомата.
Y2 - кф=10 - установка к-формата 10 разрядов.
Y3 - РОН1:=А - присвоение РОН1 значения А.
Y4 - РОН2:=В - присвоение РОН2 значения В.
Y5 - РОН3:=С=В - присвоение РОН3 результирующего значение С которому присваивается значение В.
Y6 - РОН3:=С=А - присвоение РОН3 результирующего значение С которому присваивается значение А.
Y7 - РОН1:=РОН1Д - присвоение РОН1 значения РОН1 в дополнительном коде.
Y8 - СМ:=РОН1- присвоение в сумматор значения РОН1.
Y9 - РОН2:=РОН2Д - присвоение РОН2 значения РОН2 в дополнительном коде.
Y10 - СМ:СМ+РОН2 - присвоение в сумматор суммы значений сумматора и РОН2.
Y11 - R(1,СМ) - сдвиг сумматора на 1 разряд вправо.
Y12 - кф = кф+1- инкрементирование к-формата.
Y13 - СМ:=СМП - присвоение в сумматор значения сумматора в прямом коде.
Y14 - С:=СМ(СМП) - присвоение в С значения сумматора (сумматора прямого кода).
Y15 - РОН3:=С - присвоение в РОН3 значения С.
6. Граф-блок-схема алгоритма
7. Анализ ГСА
Алфавит состояний А={a0,..a10};
количество состояний М=11;
начальное состояние - а0;
входной алфавит: z={z1 ,…z12};
z1 =!x1 ; z5 =!x3; z9 =!x5;
z2 = x1; z6 = x3; z10 =x5;
z3 =!x2 ; z7 =!x4; z11 =!x6;
z4= x2; z8 = x4; z12 =x6;
количество входных слов: F=12;
множество логических условий: X={x1…x6};
количество логических условий: L=6;
алфавит микрокоманд: W={w1,…w10};
w1=y1y2y3y4;
w2=y5;
w3=y6;
w4=y7;
w5=y8;
w6=y9;
w7 = y10 ;
w8 = y11 y12
w9= y13
w10= y14
количество микрокоманд: G=10;
множество микроопераций: Y={y1,…y14};
количество микроопераций: N=14.
8. Мнемоническая форма структурной таблицы
№ |
as |
ad |
x(as,ad) |
w(ad) |
тип перехода |
|
1 |
a0 |
a1 |
1 |
y1y2y3y4 |
безусловный |
|
2 |
a1 |
a9 |
x1 |
y5 |
условный |
|
3 |
a1 |
a10 |
!x1x2 |
y6 |
условный |
|
4 |
a1 |
a2 |
!x1!x2!x3 |
y7 |
условный |
|
5 |
a1 |
a3 |
!x1!x2x3 |
y8 |
условный |
|
6 |
a2 |
a3 |
1 |
y8 |
безусловный |
|
7 |
a3 |
a4 |
!x4 |
y9 |
условный |
|
8 |
a3 |
a5 |
x4 |
y10 |
условный |
|
9 |
a4 |
a5 |
1 |
у10 |
безусловный |
|
10 |
a5 |
a6 |
!x5 |
y11y12 |
условный |
|
11 |
a5 |
a7 |
x5!x6 |
y13 |
условный |
|
12 |
a5 |
a8 |
x5x6 |
y14 |
условный |
|
13 |
a6 |
a7 |
!x6 |
y13 |
условный |
|
14 |
a6 |
a8 |
x6 |
y14 |
условный |
|
15 |
a7 |
a8 |
1 |
y14 |
безусловный |
|
16 |
a8 |
a0 |
1 |
__ |
безусловный |
|
17 |
a9 |
a0 |
1 |
__ |
безусловный |
|
18 |
a10 |
a0 |
1 |
__ |
безусловный |
9. Кодированная форма структурной таблицы
t T4T3T2T1 |
t+1 T4T3T2T1 |
K(X) |
Tn=1 n: |
||
a0>a1 |
0001 |
0010 |
- |
2 |
|
a1>a2 |
0010 |
0011 |
!X1!X2!X3 |
1,2 |
|
a1>a9 |
0010 |
1010 |
X1 |
2,4 |
|
a1>a10 |
0010 |
0100 |
!X1X2 |
1,2,4 |
|
a1>a3 |
0010 |
0100 |
!X1!X2X3 |
3 |
|
a2>a3 |
0011 |
0100 |
- |
3 |
|
a3>a4 |
0100 |
0101 |
!X4 |
1,3 |
|
a3>a5 |
0100 |
0110 |
X4 |
2,3 |
|
a4>a5 |
0101 |
0110 |
- |
2,3 |
|
a5>a6 |
0101 |
0110 |
!X5 |
1,2,3 |
|
a5>a7 |
0110 |
1000 |
X5!X6 |
4 |
|
a5>a8 |
0110 |
1001 |
X5X6 |
1,4 |
|
a6>a7 |
0111 |
1000 |
!X6 |
4 |
|
a6>a8 |
0111 |
1001 |
X6 |
1,4 |
|
a7>a8 |
1000 |
1001 |
- |
1,4 |
|
a8>a0 |
1001 |
0001 |
- |
1 |
|
a9>a0 |
1010 |
0001 |
- |
1 |
|
a10>a0 |
1011 |
0001 |
- |
1 |
Таблица сигналов
an |
y1 |
y2 |
y3 |
y4 |
y5 |
y6 |
y7 |
y8 |
y9 |
y10 |
y11 |
y12 |
y13 |
y14 |
|
a1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
a2 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
a3 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
|
a4 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
|
a5 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
|
a6 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
|
a7 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
|
a8 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
|
a9 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
a10 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
10. Функции возбуждения триггеров
T1=a1A+a1B+a3C+a5D+a5E+a6F+f7+a8+a9+а10 T2=a0+a1A+a1x1+a1B+a3x4+a4+a5D
T3=a1!x1!x2x3+a2+a3C+a3x4+a4+a5D
T4=a1x1+a1B+a5x5!x6+a5E+a6!x6+a6F+a7
A=!x1!x2!x3
B=!x1x2
C=!x4
D=!x5
E=x5x6
F=x6
11. Параметры комбинационных блоков
КС1:F(T1)={f1…f10}
KC2:F(T2)={f1…f7}
KC3:F(T3)={f1…f6}
KC4:F(T4)={f1…f7}
12. Функциональная схема
13. Операционная схема
14. Синтез комбинационной схемы ЦА
Y1=V(0,4,5,8,9,12,13)
Y2=V(8,9,10,11,12,13,14)
Y3=V(0,2,8,10,12,14,15)
Аналитический метод
Y1=!x1!x2!x3!x4+!x1x2!x3!x4+!x1x2!x3x4+x1!x2!x3!x4+x1!x2!x3x4+x1x2!x3!x4+x1x2!x3x4=!x1!x3!x4+!x1x2!x3x4+x1!x2!x3+x1x2!x3=!x1!x3!x4+!x1x2!x3x4+x1!x3=!x3x1+!x3x2+!x3!x4
Y2=x1!x2!x3!x4+x1!x2!x3x4+x1!x2x3!x4+x1!x2x3x4+x1x2!x3!x4+x1x2!x3x4+x1x2x3!x4=x1!x2!x3+x1!x2x3+x1x2!x3+x1x2x3!x4=x1!x2+x1x2!x3+x1x2x3!x4=
=x1!x2+x1x2!x3+x1x2!x4=x1x2!x3+x1!x2+x1x2!x4=x1x2!x3+x1!x2+x1!x4=
=x1!x2+x1!x3+x1!x4
Y3=!x1!x2!x3!x4+!x1!x2x3!x4+x1!x2!x3!x4+x1!x2x3!x4+x1x2!x3!x4+x1x2x3!x4+x1x2x3x4=!x1!x2!x4+x1!x2!x4+x1x2!x4+x1x2x3x4=!x2!x4+x1x2!x4+x1x2x3=!x2!x4+!x4x1+x1x2x3
15. Метод карт Карно
Y1:
0000 0100 1100
0100 1100 1101
1100 0101 1000
1000 1101 1001
!x3!x4 x2!x3 x1!x3
Y1=!x3x1+!x3x2+!x3!x4
Y2:
1000 1000 1000
1001 1100 1100
1011 1010 1001
1010 1110 1101
x1!x2 x1!x4 x1!x3
Y2=x1!x2+x1!x3+x1!x4
Y3:
0000 1100
0010 1000
1000 1010 1111
1010 1110 1110
!x2!x4 x1!x4 x1x2x3
Y3=!x2!x4+!x4x1+x1x2x3
16. Метод Квайна-Мак-Класки
Y1:
Y1=!x3!x4+x2!x3+x1!x3
Y2:
Y2=x1!x2+x1!x3+x1!x4
Y3:
Y3=!x2!x4+x1!x4+x1x2x3
Выводы
В ходе выполнения курсовой работы спроектирован цифровой автомат, предназначенный для выполнения арифметических операций сложения двоичных чисел, представленных в форме с фиксированной запятой, на сумматоре дополнительного модифицированного кода.
Разрядность чисел - 16 и включает:
- знак мантиссы - 2 разряда;
- мантисса - 14 разрядов.
При проектировании ЦА использован базис алгебры Буля (И-ИЛИ-НЕ).
При проектировании ЦА:
- построены операционные, функциональные схемы отдельных устройств;
- аналитически описаны логические системы, логические функции в алгебре Буля;
- минимизированы аналитические функции с применением основных методов (аналитическим, Квайна-Мак-Класки, методом карт Карно).
Размещено на Allbest.ru
Подобные документы
Проектирование цифрового автомата для выполнения арифметической операции деления двоичных чисел, алгоритм работы. Числа с плавающей запятой. Типы элементов памяти управляющего автомата JK-триггер, не имеющего запрещенных состояний на основных входах.
курсовая работа [747,4 K], добавлен 25.03.2012Понятие, последовательность построения и схемная реализация цифрового автомата. Описание форм представления функций алгебры логики. Принципы минимизации функций выходов и переходов автомата, их перевода в базис. Сведенья о программе Electronics Workbench.
курсовая работа [2,0 M], добавлен 27.10.2010Разработка алгоритма работы блока сложения дробных двоичных чисел в обратном модифицированном коде с фиксированной запятой. Определение состава узлов и управляющих сигналов блока по схеме электрической функциональной, описание его принципа работы.
реферат [415,8 K], добавлен 29.11.2010Синтез цифрового автомата с комбинационной частью на логических элементах. Реализация спроектированного автомата в виде иерархического блока со схемой замещения на библиотечных компонентах в режиме SPICE–проектов. Разработка абстрактных символов.
курсовая работа [831,2 K], добавлен 23.09.2013Последовательность выполнения задания и рекомендации по проектированию. Проектирование несложных дискретных устройств (цифрового автомата), структурная схема и алгоритм функционирования. Применение синхронного триггера и его отличия от асинхронного.
методичка [258,6 K], добавлен 28.04.2009Разработка управляющего автомата, ориентированного на выполнение заданной микрооперации. Разработка алгоритма работы управляющего автомата. Листинг программы. Выбор оптимального варианта кодирования состояний автомата. Синтез функции возбуждения.
курсовая работа [506,9 K], добавлен 26.12.2012Определение функций выходных сигналов и сигналов возбуждения. Построение функциональной схемы управляющего автомата. Способы выполнения операции умножения с фиксированной и с плавающей запятой. Получение функциональной ГСА. Кодирование состояния автомата.
курсовая работа [60,9 K], добавлен 15.02.2011Общая схема D-триггера и цифрового автомата Мили. Построение входных и выходных преобразователей в соответствии с таблицами кодирования входных и выходных сигналов. Составление таблиц переходов и выхода состояния автомата Мили. Выбор серии микросхем.
курсовая работа [525,4 K], добавлен 04.11.2012Разработка структурной схемы вычислительного устройства, выбор системы команд и определение форматов. Разработка алгоритма командного цикла, выполнения арифметических и логических операций. Проектирование операционного автомата, устройств управления.
курсовая работа [2,8 M], добавлен 15.05.2014Изучение методов построения конечного автомата, распознающего заданный язык, и принципы его программной реализации. Проектирование комбинационной и принципиальной схем распознающего конечного автомата с использованием библиотеки интегральных микросхем.
дипломная работа [1,8 M], добавлен 18.08.2013