Алгоритм решения задач
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
Содержание
Введение
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
ТипС