Синтез цифрового микропрограммного автомата

Автор работы: Пользователь скрыл имя, 03 Апреля 2013 в 21:29, курсовая работа

Описание

Операционный автомат служит для выполнения действия над операндами. Управляющий автомат вырабатывает управляющие сигналы, определяющие последовательность действий операционного автомата.
Множество микроопераций, реализуемых в ОА – Y={y1,...,yn}, возбуждаются управляющими сигналами из УА – y1,y2,...,yn. Каждому управляющему сигналу соответствует определённая микрооперация.

Содержание

Задание ............................................................................................. 2
Введение .......................................................................................... 4
Алгоритм выполнения заданной операции
Словесное описание алгоритма ............................................. 5
Реализация алгоритма на примере ......................................... 6
Определение погрешностей представления операндов в разрядной сетке ОА и погрешности выполнения заданной операции .................................................................................... 7
Построение микропрограммы ................................................. 8
Описание автомата на начальном языке
Построение граф-схемы алгоритма ........................................ 9
Построение логической схемы алгоритма ............................. 10
Абстрактный синтез управляющего автомата
Построение отмеченной ГСА, определение числа состояний автомата ..................................................................................... 11
Построение таблицы и графа автомата .................................. 12
Минимизация числа состояний и кодирование ..................... 13
Структурный синтез автомата
Построение структурной таблицы МПА ................................ 14
Построение системы канонических уравнений ..................... 15
Реализация схемы управляющего микропрограммного автомата на заданном комплексе интегральных микросхем и ПЛМ ... 16

Заключение ....................................................................................... 17
Литература ........................................................................................ 18

Работа состоит из  1 файл

Вариант 8.doc

— 451.00 Кб (Скачать документ)

 

 

Задание

 

  1. Определить точность результата выполнения операции алгебраического сложения двух чисел в обратном коде, представленных в форме с плавающей запятой (А = 0,24, В = – 0,53).
  2. Разработать микропрограмму выполнения заданной математической операции.
  3. Уточнить схему операционного автомата.
  4. Построить абстрактный автомат.
  5. Выполнить структурный синтез микропрограммного автомата Мура на RS-триггерах по ГСА.

 

 

 

Содержание


 

Задание ............................................................................................. 2

Введение .......................................................................................... 4

    1. Алгоритм выполнения заданной операции
    1. Словесное описание  алгоритма ............................................. 5
    1. Реализация алгоритма на примере ......................................... 6
    2. Определение погрешностей представления операндов в разрядной сетке ОА и погрешности выполнения заданной операции .................................................................................... 7
    1. Построение микропрограммы ................................................. 8
    2. Описание автомата на начальном языке
    1. Построение граф-схемы алгоритма ........................................ 9
    1. Построение логической схемы алгоритма ............................. 10
    1. Абстрактный синтез управляющего автомата
    1. Построение отмеченной ГСА, определение числа состояний автомата ..................................................................................... 11
    1. Построение таблицы и графа автомата .................................. 12
    2. Минимизация числа состояний и кодирование ..................... 13
    1. Структурный синтез автомата
    1. Построение структурной таблицы МПА ................................ 14
    1. Построение системы канонических уравнений ..................... 15
    1. Реализация схемы управляющего микропрограммного автомата на заданном комплексе интегральных микросхем и ПЛМ ... 16

 

Заключение ....................................................................................... 17

Литература ........................................................................................ 18

 


Введение

 

Основные устройства ЭВМ (процессоры, каналы ввода-вывода, контроллеры, устройства управления внешними устройствами и т.п.) представляются в виде композиции операционного (ОА) и управляющего (УА) автоматов.

 





 

 

Операционный автомат служит для  выполнения действия над операндами. Управляющий автомат вырабатывает управляющие сигналы, определяющие последовательность действий операционного  автомата.

Множество микроопераций, реализуемых в ОА – Y={y1,...,yn}, возбуждаются управляющими сигналами из УА – y1,y2,...,yn. Каждому управляющему сигналу соответствует определённая микрооперация.

ОА также вычисляет  значения логических условий, которым  ставится в соответствие множество осведомительных сигналов X={x1,...,xn}, являющихся входными сигналами УА. УА задаёт порядок выполнения микрокоманд в ОА, вырабатывая последовательность управляющих сигналов в зависимости от микропрограммы и значений логических условий.

 


1.  Алгоритм выполнения заданной операции

1.1  Словесное описание  алгоритма

После сигнала S(старт) проверяем на равенство нулю числа A. Если A=0, то сумма  будет равна числу B. Присваиваем CM:= B, PC:=PB.

Проверяем число B на равенство нулю. Если B=0, то сумма будет равна числу A. Присваиваем CM:= A, PC:=PA.

Проверяем равенство порядков чисел  A и B. Пока PA не станет равным PB выполняем выравнивание порядков: если порядок числа A(PA) больше порядка числа B(PB), то сдвигаем вправо числа в мантиссе числа B и увеличиваем порядок PA на 1; если порядок числа A(PA) меньше или равен порядку числа B(PB), то сдвигаем вправо числа в мантиссе числа A и увеличиваем порядок PA на 1.

Присваиваем порядку результата значение порядка числа A.

Проверяем знак числа A. Если A<0, то заносим в сумматор число, обратное A. В противном случае заносим в сумматор число A.

Проверяем знак числа B. Если B>0, то прибавляем к значению, занесенному в сумматор(CM) число B. Если же число B не больше 0, то инвертируем разряды мантиссы числа B, затем прибавляем это число к значению в сумматоре(CM).

Сдвигаем вправо мантиссу результата.

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

Конец сложения.

 


1.2  Реализация алгоритма  на примере

Даны операнды в десятичной системе  счисления А=0,24 и В= -0,53. Представим их в двоичной системе счисления  в форме представления с плавающей  запятой.

А= +0,1111010*2-2; В= -0,1000011*20;

Отсюда мантиссы операндов  А и В:

[mA]= 0,1111010; [mB]= 1,1000011;

Порядки А и В: [pA]=100010; [pB]=000000;

Продемонстрируем все  этапы реализации алгоритма операции алгебраического сложения в обратном коде чисел А и В, представленных в форме с плавающей запятой.

Машинные изображения чисел:

[mA]Mпр=00,1111010; [mB]Mпр=11,1000011;

 

    1. Проверяем A и B на равенство нулю.

 

2. Сравниваем порядки PA и PB.

Сдвигаем A: A = 00,0111101; PA=100001;

Сдвигаем A: A = 00,0011110; PA=000000;

 

3. PC:=PA:  PC = 000000;

 

4. Проверка A<0: Присваивание [CM] = 00,0011110;

 

5. Проверка B>0: Присваивание B=00,0111100; CM:=00,1011010

 

6. Проверка равенства первых двух разрядов.

 

7. Проверка равенства вторых  двух разрядов.

 

8. Конец.

 

 

 

1.3  Определение  погрешностей представления операндов  в разрядной сетке ОА и погрешности выполнения заданной операции


 

Операнды:

A = 0,24

B = – 0,53

 

Двоичный прямой код чисел:

[A]пр = 0,0011110

[B]пр = 1,1000011

 

Вычисление погрешностей:

[A] = 0,234375

[B] = – 0,5234375

 

Абсолютные погрешности  представления чисел:

DA = 0,005625

DB = 0,0065625

 

Относительные погрешности  представления чисел:

dA = 0,024

dB = 0,012537313

 

Абсолютная погрешность  операции сложения:

D(A+B) = 0,234375*0,0065625 + (–0,52734375)* 0,005625 = 0,001428222

 

Относительная погрешность  операции сложения:

d (A+B) = 0,005625/(0,234375– 0,5234375) + 0,0065625/(0,234375– 0,5234375) = 0,042162162

 

 

 

 

  1.   Построение микропрограммы

 

 

 

3.  Описание автомата  на начальном языке


    1. Построение граф-схемы алгоритма

 
3.2  Построение логической схемы алгоритма

 

                  7        8                 6                                 

yнBX1­X2­y1y2

   7      6

¯w­

  8        1                  6

¯X3­y3y4

  1        9              10       2      11  3        4      12  5        13                   6  

¯X4­y4X6­y10¯X7­¯y12¯X8­¯X9­y15y16

  9       14                1

¯X5­y5y6

10           2

¯y9

11             3

¯y11

  12                   4

¯y13y14

  13     6

¯w­

  14               

¯y7y8Yк

 

 

 

 

 

 4. Абстрактный синтез  управляющего автомата

4.1 Построение  отмеченной ГСА, определение числа состояний автомата


Отмеченная ГСА:

 


 

То есть число внутренних состояний данного автомата равно 12.

 

4.2 Построение таблицы и графа  автомата


 

 

am

as

X(am, as)

Y(am, as)

a1

a1

ùX1

0

a1

a6

X1ùX2ùX3ùX4ùX5

y7,y8

a1

a5

X1ùX2ùX3ùX4X5

y5,y6

a1

a4

X1ùX2ùX3X4

y4

a1

a3

X1ùX2X3

y3,y4

a1

a2

X1X2

y1,y2

a2

a1

1

0

a3

a1

1

0

a4

a7

ùX6

y9

a4

a8

X6

y10

a5

a6

ùX4ùX5

y7,y8

a5

a5

ùX4X5

y5,y6

a5

a4

X4

y4

a6

a6

ùX4ùX5

y7,y8

a6

a5

ùX4X5

y5,y6

a6

a4

X4

y4

a7

a9

ùX7

y11

a7

a10

X7

y12

a8

a9

ùX7

y11

a8

a10

X7

y12

a9

a10

1

y12

a10

a11

ùX8

y13,y14

a10

a1

X8ùX9

0

a10

a12

X8X9

y15,y16

a11

a11

ùX8

y13,y14

a11

a1

X8ùX9

0

a11

a12

X8X9

y15,y16

a12

a1

ùX9

0

a12

a12

X9

y15,y16


 
4.3  Минимизация числа состояний и кодирование


Кодирование внутренних состояний:

 

am

k(am)

a1

0000

a2

0001

a3

0010

a4

0011

a5

0100

a6

0101

a7

0110

a8

0111

a9

1000

a10

1001

a11

1010

a12

1011


 

Минимизация кодов внутренних состояний:

 

am

k(am)

a1

0000

a2

0001

a3

0010

a4

0011

a5

–100

a6

–101

a7

–110

a8

–111

a9

1–00

a10

1–01

a11

1–10

a12

1–11


 

 

 

5.  Структурный синтез  автомата

    1. Построение структурной таблицы МПА


 

 

am

k(am)

as

k(as)

X(am, as)

Y(am, as)

F(am, as) S/R

0

a1

0000

a1

0000

ùX1

0

-

1

a1

0000

a6

–101

X1ùX2ùX3ùX4ùX5

y7,y8

S2S4

2

a1

0000

a5

–100

X1ùX2ùX3ùX4X5

y5,y6

S2

3

a1

0000

a4

0011

X1ùX2ùX3X4

y4

S3S4

4

a1

0000

a3

0010

X1ùX2X3

y3,y4

S3

5

a1

0000

a2

0001

X1X2

y1,y2

S4

6

a2

0001

a1

0000

1

0

R4

7

a3

0010

a1

0000

1

0

R3

8

a4

0011

a7

–110

ùX6

y9

S2R4

9

a4

0011

a8

–111

X6

y10

S2

10

a5

–100

a6

–101

ùX4ùX5

y7,y8

S4

11

a5

–100

a5

–100

ùX4X5

y5,y6

-

12

a5

–100

a4

0011

X4

y4

S3S4R1R2

13

a6

–101

a6

–101

ùX4ùX5

y7,y8

-

14

a6

–101

a5

–100

ùX4X5

y5,y6

R4

15

a6

–101

a4

0011

X4

y4

S3R1R2

16

a7

–110

a9

1–00

ùX7

y11

S1R3

17

a7

–110

a10

1–01

X7

y12

S1S4R3

18

a8

–111

a9

1–00

ùX7

y11

S1R3R4

19

a8

–111

a10

1–01

X7

y12

S1R3

20

a9

1–00

a10

1–01

1

y12

S4

21

a10

1–01

a11

1–10

ùX8

y13,y14

S3R4

22

a10

1–01

a1

0000

X8ùX9

0

R1R2R4

23

a10

1–01

a12

1–11

X8X9

y15,y16

S3

24

a11

1–10

a11

1–10

ùX8

y13,y14

-

25

a11

1–10

a1

0000

X8ùX9

0

R1R2R3

26

a11

1–10

a12

1–11

X8X9

y15,y16

S4

27

a12

1–11

a1

0000

ùX9

0

R1R2R3R4

28

a12

1–11

a12

1–11

X9

y15,y16

-

Информация о работе Синтез цифрового микропрограммного автомата