Алгоритм решения задач

Курсовой проект - Компьютеры, программирование

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

Содержание

 

Введение

1 Алгоритм решения функциональной задачи

2 Выбор системы команд специализированной ЭВМ

3 Форматы команд и операндов

4 Содержательные графы микропрограмм операций АЛУ

5 Разработка объединенной микропрограммы работы АЛУ

6 Закодированные алгоритмы микропрограмм

7 Проектирование управляющего автомата

Введение

 

Целью курсового проектирования является закрепление знаний по курсу: Организация ЭВМ и систем , полученных в результате изучения лекционного курса и выполнения лабораторного практикума.

Объектом курсового проектирования является процессор специализированной ЭВМ.

В процессоре выделяют устройство, в котором выполняются все основные (арифметические и логические) операции. Это устройство называют арифметико-логическим устройством (АЛУ). Если все основные операции выполняются за один такт (это имеет место в большинстве современных микропроцессоров), АЛУ является частью операционного автомата процессора; если же некоторые или все основные операции выполняются алгоритмически за много тактов, АЛУ имеет собственное устройство управления.

Разработка процессора специализированной ЭВМ включает в себя следующие этапы:

  1. Разработка алгоритма решения функциональной задачи.
  2. Выбор системы команд специализированной ЭВМ.
  3. Определение форматов команд и операндов.
  4. Разработка алгоритмов микропрограмм выполнения минимально необходимого набора операций АЛУ.
  5. Разработка объединенной микропрограммы работы АЛУ.
  6. Разработка структурной схемы операционного автомата АЛУ.
  7. Разработка управляющего автомата АЛУ.

1 Алгоритм решения функциональной задачи

 

Укрупненный алгоритм решения поставленной задачи представлен на рисунке 1.1. Алгоритм вычисления функций F приведен соответственно на рисунке 1.2.

 

Рис.1.1 Укрупненный алгоритм

 

Для вычисления функции F можно воспользоваться степенным рядом:

Функция Arth(x) разлагается [3] в степенной ряд:

 

Этот ряд сходится при |x|<1, . Сумму ряда удобно находить с помощью рекуррентных соотношений. Общий член ряда выражается в данном случае через предыдущий член ряда с помощью равенства:

 

 

2 Выбор системы команд специализированной ЭВМ

 

Для двухадресной системы команд без признака засылки основные операции над двумя операндами будут выглядеть так:

,

где

А1 первый адрес в команде;

А2 второй адрес в команде;

* - обозначение операции.

Введем обозначение:

N . Наименование операции . X . Y

X первый операнд и результат операции.

Y второй операнд (если он не участвует, то ставится -).

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

Часть команд в этой программе имеют два адреса, а часть один адрес, поэтому и система команд ЭВМ должна состоять из одноадресных и двухадресных команд.

 

3 Форматы команд и операндов

 

Будем считать, что оперативная память (ОП) состоит из 256 ячеек длиной в один байт каждая.

Двухадресная система команд без признака засылки содержит 13 различных наименований команд, для кодирования которых поле КО должно иметь 4 разряда.

Поскольку в данном случае имеются одноадресные команды и двухадресные команды, для их различия введено одноразрядное поле кода длины команды (КДК) и принято считать: КДК=1 - для одноадресных и КДК=0 - для двухадресных команд.

Разряды 5-7 первого байта всех команд здесь не используются. Формат команд приведен на рисунке 3.1.

В качестве операнда будет использоваться 16-разрядное слово, запятая считается фиксированной перед старшим разрядом, а ОП оперирует с однобайтовыми словами. Формат операнда в ОП представлен на рисунке 3.2:

Такой операнд загружается за два обращения к ОП, здесь старшие разряды операнды и знак содержатся в первом байте, а младшие разряды во втором.

 

4 Содержательные графы микропрограмм операций АЛУ

 

Числа представляются в 16-разрядном формате, старший (нулевой) разряд используется для представления знака числа, для операции сложения используется модифицированный дополнительный код, поэтому регистр RG имеет 17 разрядов (0:16) (поле RG(1:16) для хранения первого слагаемого), регистр RG1 имеет 16 разрядов RG1(0:15) для второго слагаемого, одноразрядному полю признака переполнения изначально присвоено нулевое значение, при операции сложения слагаемые помещаются по младшим разрядам, результат (сумма) помещается в поле RG(1:16), прибавление константы означает прибавление 1 к младшему разряду слова.

Содержательный алгоритм сложения представлен на рисунке 4.1:

Рисунок 4.1 Алгоритм операции сложения

 

Описание слов, использованных в микропрограмме сложения, представлены в таблице 4.1:

 

Таблица 4.1

ТипСловоПояснениеILORG(0:16)Слагаемое (Сумма)ILRG1(0:16)СлагаемоеILOПППризнак переполнения

 

Содержательный алгоритм вычитания представлен на рисунке 4.2:

Рисунок 4.2 Алгоритм вычитания

 

Описание слов, использованных в микропрограмме вычитания представлены в таблице 4.2:

Таблица 4.2

ТипСловоПояснениеILORG(0:16)Уменьшаемое (разность)ILRG1(0:16)ВычитаемоеILOПППризнак переполнения

Содержательный алгоритмы умножения и деления представлены на рисунках 4.3 и 4.4:

Описания слов, использованных в микропрограммах представлены в таблицах 4.3 и 4.4:

Таблица 4.3

ТипС