Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пояснительная запискаАндр .doc
Скачиваний:
2
Добавлен:
23.08.2019
Размер:
4 Mб
Скачать

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ЖЕЛЕЗНОДОРОЖНОГО ТРАНСПОРТА

Федеральное государственное образовательное учреждение высшего профессионального образования

«ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ПУТЕЙ СООБЩЕНИЯ»

Кафедра «Информационные и вычислительные системы»

Дисциплина: «Теория автоматов»

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

к курсовой работе

на тему:

«РАЗРАБОТКА ОПЕРАЦИОННОГО УСТРОЙСТВА»

Выполнил студент

факультета УПП

группы УПП-001

480808 ______________ /Козлов А.О./

/номер зачетной книжки / подпись, дата

Санкт-Петербург

2010

Реферат

Отчет 40 с., 4 ч., 22 рис., 18 табл., 1 приложение.

ОПЕРАЦИОННОЕ УСТРОЙСТВО, ОПЕРАЦИОННЫЙ АВТОМАТ, УПРАВЛЯЮЩИЙ АВТОМАТ, РЕГИСТР, ТРИГГЕР, ФУНКЦИОНАЛЬНАЯ СХЕМА, СТРУКТУРНАЯ СХЕМА

Объектом исследования является операционное устройство.

Цель работы - проектирование операционного устройства, реализующего операцию: получение операнда A(1:16); получение операнда B(1:16); выдачу результата C(1:16); алгебраическое вычитание для чисел с фиксированной точкой в простых обратных кодах.

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

ОГЛАВЛЕНИЕ

ВВЕДЕНИЕ 4

1 ОПРЕДЕЛЕНИЕ ФУНКЦИЙ ОПЕРАЦИОННОГО УСТРОЙСТВА 5

1.1 Анализ алгоритма заданной операции 5

1.2 Функциональная микропрограмма работы ОУ 9

1.3 Определение функции операционного автомата 11

1.4 Определение функции управляющего автомата 11

2 СИНТЕЗ ФУНКЦИОНАЛЬНОЙ СХЕМЫ ОПЕРАЦИОННОГО АВТОМАТА 13

2.1 Разработка структурной схемы ОА 13

2.2 Синтез функциональной схемы ОА 15

2.2.1 Синтез регистра A 15

2.2.2 Синтез регистра B 18

2.2.3 Синтез регистра С 19

2.2.4 Синтез регистра П 27

2.3 Синтез функциональной схемы для вычисления логических условий 29

3 СИНТЕЗ ФУНКЦИОНАЛЬНОЙ СХЕМЫ УПРАВЛЯЮЩЕГО АВТОМАТА 30

3.1 Структурная схема УА 32

3.2 Функциональная схема УА 33

4 ФУНКЦИОНАЛЬНАЯ СХЕМА ОПЕРАЦИОННОГО УСТРОЙСТВА 39

ЗАКЛЮЧЕНИЕ 40

Введение

Любой сложный преобразователь дискретный информации может быть представлен в виде совокупности операционных устройств (ОУ) и интерфейса (сопряжения этих устройств).

Функцией ОУ является выполнение фиксированного множества операций F={f1, f2, .,fG} над множеством входных слов D={d1, d2,…. dH} для вычисления слов R = {r1, r2,…,rQ}, которые являются результатами операций из множества F. В течение определенного отрезка времени устройство может реализовать только одну операцию R=fg(D), которая определяется кодом операции (номером) g=1, 2, ., G. Функцию ОУ можно представить в виде R=(D).

ОУ объединяются в структуру с помощью цепей, по которым передаются электрические сигналы. Одна цепь передает в один момент времени бит информации (0 1). Совокупность цепей, связывающих два ОУ и алгоритм, определяющий порядок передачи информации между ОУ, называется интерфейсом. Обычно ОУ представляют в виде двух автоматов: операционного автомата (ОА) и управляющего автомата (УА). ОА выполняет действия над словами информации – хранение, реализацию МКО и вычисление ЛУ – и, таким образом, является исполнительной частью ОУ. УА генерирует последовательность управляющих сигналов, которая определена микропрограммой и соответствует значениям ЛУ и, следовательно, задает порядок выполнения МКО в ОА.

На рисунке 1 представлена упрощенная структура ОУ. D – множество входных слов, R – множество выходных слов, Y – множество микроопераций, X – множество логических условий, g – код операции fg.

Рисунок 1 – Упрощенная структура ОУ

1 Определение функций операционного устройства

1.1 Анализ алгоритма заданной операции

Алгоритм операции:

    1. Начало.

    2. Слову П(1) присвоить значение «0».

    3. Изменить знак вычитаемого на противоположный.

    4. Образовать обратные коды слов А и В.

    5. Слову С(0:16) присвоить значение суммы слов А и В.

    6. Значение разряда С(0) равно 1?

ДА: к значению слова С(1:16) прибавить «1» и перейти к п. 7,

НЕТ: перейти к п. 7.

    1. Знаковые разряды слов В и А равны?

ДА: перейти к п. 8,

НЕТ: перейти к п. 9.

    1. Знаковые разряды слов С и А равны?

ДА: перейти к п. 9,

НЕТ: перейти к п. 10.

    1. Образовать прямой код результата и перейти к п. 11.

    2. Слову П(1) присвоить значение «1» и перейти к п. 11.

    3. Конец.

Для проектирования ОУ, необходимо было удостовериться в правильности алгоритма, для этого была осуществлена проверка (смотри таблицу 1).

Таблица 1. Проверка алгоритма

Пункт

Действие и результат

Переход

Комментарии

1. A (1:5) = 0.0101 = 5 ;

B (1:5) = 0.0011 = 3

Случай без переполнения; знаки операндов А и В положительные

2

П (1) = 0

3

Слову П(1) присвоить значение «0»

3

В (1) =  В (1)

4

Изменить знак вычитаемого на противоположный

4

A (1:5) = 0.0101

B (1:5) = 1.1100

5

Образовать обратные коды слов А и В

5

С (1:5) = A (1:5) + B (1:5)

A (1:5) = 0.0101

B (1:5) = 1.1100

C (1:5) = 10.0001

6

Слову С присвоить значение суммы слов А и В

6

С(0) = 1

С(1:5) = С(1:5) + 1

С(1:5) = 0.0001

1

С(1:5)=0.0010

7

Проверка разряда С(0)

7

А (0) = 0; В (1) = 1

А (0) В (1) = 1

9

Проверка на совпадение знаковых разрядов слов А и В

9

С (1:5) = 0.0010 = 2

11

Образовать прямой код результата

Продолжение Таблицы 1

11

Конец

2. А (1:5) = 1.0101 = -5 ;

B (1:5) = 1.0011 = -3

Случай без переполнения; знаки операндов А и В отрицательные

2

П(1) = 0

3

Слову П(1) присвоить значение «0»

3

В (1) = В (1)

4

Изменить знак вычитаемого на противоположный

4

А (1:5) = 1.1010

В (1:5) = 0.0011

5

Образовать обратные коды слов А и В

5

С (1:5) = A (1:5) + B (1:5)

A (1:5) = 1.1010

B (1:5) = 0.0011

C (1:5) = 1.1101

6

Слову С присвоить значение суммы слов А и В

6

С(0)=0

7

Проверка разряда С(0)

7

А (1) = 1; В (0) = 0

А (1) В (0) = 1

9

Проверка на совпадение знаковых разрядов слов А и В

9

С (1:5) = 1.0010 = -2

11

Образовать прямой код результата

11

Конец

3. A (1:5) = 0.0101 = 5 ;

B (1:5) = 1.0011 = -3

Случай без переполнения; знак операнда А положительный, а В отрицательный

2

П (1) = 0

3

Слову П(1) присвоить значение «0»

3

В (1) =  В (1)

4

Изменить знак вычитаемого на противоположный

4

А (1:5) = 0.0101

В (1:5) = 0.0011

5

Образовать обратные коды слов А и В

5

С (1:5) = A (1:5) + B (1:5)

A (1:5) = 0.0101

B (1:5) = 0.0011

C (1:5) = 0.1000

6

Слову С присвоить значение суммы слов А и В

6

С(0) = 0

7

Проверка разряда С(0)

7

А (1) = 0; В (1) = 0

А (1) В (1) = 0

8

Проверка на совпадение знаковых разрядов слов А и В

8

С (1) = 0; A (1) = 0

С (1) А (1) = 0

9

Проверка на совпадение знаковых разрядов слов А и С

9

С (1:5) = 0.1000 = 8

11

Образовать прямой код результата

11

Конец

Продолжение Таблицы 1

4. А (1:5) = 1.0101 = -5 ;

В (1:5) = 0.0011 = 3

Случай без переполнения; знак операнда А отрицательный, а В положительный

2

П (1) = 0

3

Слову П(1) присвоить значение «0»

3

В (1) =  В (1)

4

Изменить знак вычитаемого на противоположный

4

А (1:5) = 1.1010

В (1:5) = 1.1100

5

Образовать обратные коды слов А и В

5

С (1:5) = A (1:5) + B (1:5)

A (1:5) = 1.1010

B (1:5) = 1.1100

C (1:5) = 11.0110

6

Слову С присвоить значение суммы слов А и В

6

С(0) = 1

С(1:5) = С(1:5)+1

С(1:5) = 1.0111

1

С(1:5)=0.0111

7

Проверка разряда С(0)

7

А (1) = 1; В (1) = 1

А (1) В (1) = 0

8

Проверка на совпадение знаковых разрядов слов А и В

8

С (1) = 1; A (1) = 1

С (1) А (1) = 0

9

Проверка на совпадение знаковых разрядов слов А и С

9

С (1:5) = 1.1000 = -8

11

Образовать прямой код результата

11

Конец

5. A (1:5) = 1.1011 = -11 ;

B (1:5) = 0.0111 = 7

Случай с отрицательным переполнением; знак операнда А отрицательный, а В положительный

2

П (1) = 0

3

Слову П(1) присвоить значение «0»

3

В (1) =  В (1)

4

Изменить знак вычитаемого на противоположный

4

А (1:5) = 1.0100

В (1:5) = 1.1000

5

Образовать обратные коды слов А и В

5

С (1:5) = A (1:5) + B (1:5)

A (1:5) = 1.0100

B (1:5) = 1.1000

C (1:5) = 10.1100

6

Слову С присвоить значение суммы слов А и В

6

С(0) = 1

С(1:5) = С(1:5)+1

С(1:5) = 0.1100

1

С(1:5)=0.1101

7

Проверка разряда С(0)

7

А (1) = 1; В (1) = 1

А (1) В (1) = 0

8

Проверка на совпадение знаковых разрядов слов А и В

Продолжение Таблицы 1

8

С (1) = 0; A (1) = 1

С (1) А (1) = 1

10

Проверка на совпадение знаковых разрядов слов А и С

10

П(1) = 1

11

Слову П(1) присвоить значение «1»

11

Конец

6. А (1:5) = 0.1011 = 11 ;

В (1:5) = 1.0111 = -7

Случай с положительным переполнением; знак операнда А положительный, а В отрицательный

2

П (1) = 0

3

Слову П(1) присвоить значение «0»

3

В (1) =  В (1)

4

Изменить знак вычитаемого на противоположный

4

А (1:5) = 0.1011

В (1:5) = 0. 0111

5

Образовать обратные коды слов А и В

5

С (1:5) = A (1:5) + B (1:5)

A (1:5) = 0.1011

B (1:5) = 0.0111

C (1:5) = 1.0010

6

Слову С присвоить значение суммы слов А и В

6

С(0) = 0

7

Проверка разряда С(0)

7

А (1) = 0; В (1) = 0

А (1) В (1) = 0

8

Проверка на совпадение знаковых разрядов слов А и В

8

С (1) = 1; A (1) = 0

С (1) А (1) = 1

10

Проверка на совпадение знаковых разрядов слов А и С

10

П(1) = 1

11

Слову П(1) присвоить значение «1»

11

Конец

Результаты сверены для всех случаев, алгоритм работает верно.