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

ЛИЧНЫЙ КАБИНЕТ 

 

Здравствуйте гость!

 

Логин:

Пароль:

 

Запомнить

 

 

Забыли пароль? Регистрация

Повышение уникальности

Предлагаем нашим посетителям воспользоваться бесплатным программным обеспечением «StudentHelp», которое позволит вам всего за несколько минут, выполнить повышение уникальности любого файла в формате MS Word. После такого повышения уникальности, ваша работа легко пройдете проверку в системах антиплагиат вуз, antiplagiat.ru, etxt.ru или advego.ru. Программа «StudentHelp» работает по уникальной технологии и при повышении уникальности не вставляет в текст скрытых символов, и даже если препод скопирует текст в блокнот – не увидит ни каких отличий от текста в Word файле.

Работа № 88608


Наименование:


Курсовик Проектирование процессора ЭВМ с архитектурой IA-32

Информация:

Тип работы: Курсовик. Добавлен: 18.5.2015. Сдан: 2014. Страниц: 71. Уникальность по antiplagiat.ru: < 30%

Описание (план):


СОДЕРЖАНИЕ
Введение……………………………………..……………………………….……4
1 Задание на КП………………………………………………………….……….5
1.1 Общие аспекты проектирования процесора…………………..……...…5
1.2 Исходные данные…………………………………………..…..…………6
2 Архитектура процессора………………………………………………………8
2.1 Форматы команд…………………………………………...…………….8
2.1.1 CMP Reg8, im8…………………………………….……..…………9
2.1.2 NOT Mem8………………………………………………..………..10
2.1.3 SMSW reg16/reg32……………………………………...…………11
2.1.4 FMUL m32fp ……………………………………….……..……….12
2.2 Форматы данных………………………………………………...………13
2.3 Расчет и выбор разрядности основных узлов процессора……………14
2.4 Регистровая модель……………………………………………..……….15
3 Структурная организация процессора…………………………...…………..24
3.1 Общая структура процессора………………………………...…..……..24
3.2 Выбор и обоснование элементной базы……………………...….…….24
3.3 Блок(и) обработки данных (БОД)……………………………...……….25
3.4 Управляющий автомат (УА)……………………………..…….……….33
3.4.1 УА с микропрограммным управлением…………………………33
3.5 Регистровая память (РП)…………………………………...…….……..37
3.6 Оперативная память (ОП)…………………………………….…..…….38
3.7 Блок интерфейсов (БИНТ)……………………………………...………38
4 Содержательные схемы алгоритмов работы процессора………….……….39
4.1 Общий алгоритм цикла работы процессора……………….……….….39
4.2 Выборка команд……………………………………………….…...……40


4.3 Декодирование команды……………………………………………......42
4.4 Формирование исполнительного адреса ……………..……..…...……44
4.5 Выполнение команд……………………………………………………..50
4.5.1 Команда CMP Reg8, im8…………………...………….………..…50
4.5.2 Команда NOT Mem8………………………………...….……..…..51
4.5.3 Команда SMSW Reg16/ Reg32…………………………….…….52
4.5.4 Команда FMUL m32fp ………………………………….…...……54
5 Микропрограммное управление…………………………..………….……..57
5.1 Структура микрокоманды………………………………………...…….57
5.2 Микропрограмма обработки чисел в формате с плавающей точкой...58
Заключение…………………………………………………………..………..…71
Список использованных источников…………………………………………..72


ВВЕДЕНИЕ
В настоящее время все большее значение приобретает умение людей разбираться в ЭВМ. Это подразумевает под собой не столько умение людей работать на компьютере, сколько знание архитектуры процессора и всего вычислительного комплекса в целом. Это обусловлено тем, что приобретение человеком умения работы с компьютером заключается в заказе на поставку его различным фирмам и организациям, которые сами подбирают различные конфигурации в зависимости от требований клиента. Но незнание архитектуры зачастую приводит к тому, что фирмы комплектуют компьютеры не совсем современными и совместимыми деталями, что может очень сильно сказаться на работе всего вычислительного комплекса в последствии.
Кроме того, знание компьютера на схемотехническом уровне позволит более полно использовать ресурсы системы при создании отдельных программных модулей и готового программного продукта.
В состав ЭВМ входят: процессор, объединяющий операционные автоматы, блок управления и регистровую память, операционная память и каналы ввода-вывода.
Объектом курсового проектирования является процессор ЭВМ широкого назначения. Проектируемый процессор должен реализовать заданную совокупность из четырех команд из набора представленных команд.

1 ЗАДАНИЕ НА КУРСОВОЙ ПРОЕКТ
1.1 Общие аспекты проектирования процессора
1. Описание форматов команд из заданного в варианте набора и форматы используемых в них данных:
-для каждой команды необходимо описать:
а) способ кодирования и длину;
б) тип обрабатываемых данных и их местоположение;
в) способы используемой адресации и правила формирования исполнительных адресов;
г) основное содержание команды (выполняемая операция) и формируемые признаки результата;
д) виды и условия возникновения особых случаев (ошибок) при выполнении команды, а также способ реакции на их появление (прерывания, игнорирование ит.д.);
-для каждого типа данных необходимо описать:
а) способ кодирования и длину;
б) положение младших и старших значащих разрядов в коде числа;
в) расположение знакового разряда для чисел со знаком;
г) расположение знака, характеристики и мантиссы для чисел с плавающей точкой;
д) диапазоны представления чисел.
2. Рассчитать разрядность основных узлов процессора:
а) регистра команд (РгК);
б) счетчика адреса команд (СчАК);
в) регистра адреса оперативной памяти (РгАОП);
г) регистров чтения и записи (РгЧтОП, РгЗпОП);
д) слова состояния процессора (ССП);
е) рабочих программно недоступных регистров и др.
3. Формирование регистровой модели процессора с указанием типов используемых регистров, их количества, способов нумерации и адресации.
4. Синтез структуры процессора в базисе указанного в задании набора МПС. Описание структурной схемы МПС и функционального назначения внешних вводов для операционного блока, блока микропрограммного управления, оперативной и регистровой памяти. Определить набор управляющих сигналов, адресных входов и входов данных для МПС.
5. Реализация алгоритмов цикла работы процессора в виде содержательных схем алгоритмов. Должны быть представлены следующие алгоритмы:
а) цикл работы процессора;
б) выборка машинных команд из памяти;
в) вычисление исполнительных адресов операндов;
г) выборка операндов и запись результатов;
д) обработка прерываний;
е) выполнение четырех машинных команд из задания.
6. Разработка структуры микрокоманды (МК) обеспечивающей функционирование процессора в соответствии с алгоритмом цикла работы. Необходимо определить основные зоны МК, поля и способы их кодирования. Составить микропрограмму операции обработки чисел в формате с плавающей точкой.
1.2 Исходные данные
Таблица 1.1 - Набор команд
№ п.п. Код операции Операция Описание
1F 80/7 h CMP Reg8, im8 Reg8-im8->OF,SF,ZF,AF,PF,CF
74 F6/2 h NOT Mem8 not(Mem8)-> Mem8
C9 0F01/4h SMSW Reg16 SMSW Reg32 CR0->Reg16 CR0->Reg32 [15:0]
E9 D8/1F FMUL m32fp st(0)*m32fp->st(0)


Емкость оперативной памяти, Мбайт Длина слова оперативной памяти, байт Базис реализации процессора Способ адресации Разрядность проектируемого процессора, байт
4 8 МПС К1804ВС1 Базовая адресация EA (0:31) 4
Таблица 1.2 - Основные параметры






2 АРХИТЕКТУРА ПРОЦЕССОРА
2.1 Форматы команд
Структура команды показана на рисунке 2.1


Рисунок 2.1 - Формат команды

Префикс - необязательная часть инструкции, которая позволяет изменить некоторые особенности ее выполнения. В команде может быть использовано сразу несколько префиксов разного типа. В данной курсовой работе префиксы не рассматриваются.
Поле код операции может быть одно, двух или трех байтовым. Это поле является обязательным, определяет операцию, выполняемую командой.
Байт Mod r/m определяет режим адресации, а также иногда дополнительный код операции. Байт ModR/M состоит из трех информационных полей:
1. Поле Mod определяет способ адресации и количество байтов, занимаемых в команде адресом операнда (поле смещения в команде). Mod вместе с полем r/m определяют способ модификации адреса операнда полем смещения в команде.
2. Поле reg/opcode определяет либо регистр, находящийся в команде на месте второго операнда, либо три дополнительных бита кода операции.
Байт SIB (Scale-Index-Base) определяет способ адресации при обращении к памяти в 32-битном режиме. Необходимость байта SIB зависит от режима адресации, задаваемого полем Mod r/m.
Поле - смещение (address displacement) - 8, 16 или 32-разрядное целое число, представляющее собой, полностью или частично (с учетом байта mod r/m), значение эффективного адреса операнда.
Поле - непосредственный операнд (Immediate Data) - представляет собой 8, 16 или 32-разрядный непосредственный операнд. Наличие этого поля определяется из значения байта mod r/m.[7]
2.1.1 CMP Reg8, im8
Команда CMP используется для сравнения двух операндов. Операндами являются: 8-разрядный регистр и 8-разрядный непосредственный операнд. Второй операнд вычитается из первого. Результат нигде не сохраняется, команда просто изменяет регистр признаков (в зависимости от результата устанавливаются флаги регистра EFLAGS).
Таблица 2.1 - CMP Reg8, im8
Код операции Mod Reg r/m Непосредственный операнд
10000000 01 111 XXX 1 байт


Команда CMP Reg8, im8 содержит байт - код операции, байт - поле Mod r/m, 1 байт - непосредственный операнд. Длина команды: 3 байта.
В данном случае в поле Reg записано продолжение кода операции. Поле Mod=01, т.к. в команде используется, базовая адресация. Операция производится над целыми числами со знаком.
Значение поля r/m определяется по таблице 2.2

Таблица 2.2- Значения поля r/m

Значение r/m Регистр Reg8 Регистр Reg16 Регистр Reg32
000 001 010 011 100 101 110 111 AL CL DL BL AH CH DH BH AX CX DX BX SP BP SI DI EAX ECX EDX EBX ESP EBP ESI EDI
В результате выполнения команды формируются следующие признаки:
Таблица 2.3 - Признаки результата
Флаг Результат команды CMP
CF (Carry Flag) Флаг переноса;1- выполнение операции привело к возникновению переноса; 0-перноса не было.
OF (Overflow Flag) Флаг переполнения; устанавливается при переполнении (результат операции не помещается в регистре)
SF (Sign Flag) Флаг знака; 1-старший разряд результата имеет значение 1 0-старший разряд результата имеет значение 0
ZF (Zero Flag) Флаг нуля; 1- результат операции нулевой; 0- результат операции ненулевой
AF (Auxiliary carry Flag) Флаг дополнительного переноса; 1-был произведен перенос из разряда 3 в старший разряд или при вычитании был заем в разряд 3 младшей тетрады из значения в старшей тетраде; 0 - переносов и заемов в(из) 3 разряд(а) младшей тетрады результата не было
PF (Parity Flag) Флаг четности; 1-8 младших разрядов (операнда любого размера) результата содержат четное число единиц. 0-8 младших разрядов результата содержат нечетное число единиц.

2.1.2 NOT Mem8
Используется для инверсии отдельных битов единственного операнда, который в данном случае представлен операндом в памяти.
Бит w в коде операции равен нулю. Это означает, что размер операнда - 8 бит. Результат операции сохраняется здесь же, т.е. в ячейке, где находилось исходное значение, запись результата производится обратно в память. Признаки результата отсутствуют.
Таблица 2.4 - NOT Mem8
Код операции Mod Reg r/m Смещение
11110110 ХХ 010 XXX 1 байт


Команда NOT Mem8 содержит байт - код операции, байт - поле Mod r/m, 1 или 2 байта - смещение. Длина команды: 3 байта. Операция производится над целыми числами без знака.
В данном случае в поле Reg записано продолжение кода операции.
Поле Mod может принимать значения 01 или 10, r/m может быть либо 100, либо 101, т.к. в команде используется базовая адресация. Поэтому мы и имеем смещение в 1 или 2 байта. Т.к. мы имеем дело с 32-ти разрядной базовой адресацией, смещение можно определить по таблице 2.5.
Относительный адрес операнда формируется путем сложения содержимого базового регистра (ВХ, ВР) и смещения d8 или d16.
Таблица 2.5 - Значения поля Mod r/m для 32-ти битовой адресации [2]


2.1.3 SMSW reg16/reg32
Команда SMSW имеет код операции 0F 01 /4 h, отсюда следует что в байте mod/rm команды в поле reg для данной команды будет фиксированное значение равное «100». Способ кодирования команды в машинном представлении: 0000 1111 : 0000 0001 : mod 100 r/m.
Размер команды: 3 байта.
Таблица 2.6 - Структура команды SMSW
Код операции Mod Reg r/m
2 байта 1 байт
0000 1111 : 0000 0001 mod 100 r/m

Описание: Сохраняет machine status word (слово состояния машины) в операнд адресата. В нашем случае загружает 16 бит из регистра CR0 в 16 и 32 разрядный регистр.
2.1.4 FMUL m32fp
Команда FMUL имеет код операции D8 /1F, отсюда следует что в байте mod/rm команды в поле reg для данной команды будет фиксированное значение равное «001». Способ кодирования команды в машинном представлении: 11011 000 : mod 001 r/m.
Размер команды: 6 байт.
Таблица 2.7 - Структура команды FMUL
Код операции Mod Reg r/m Смещение
1 байта 1 байт 4 байта
11011 000 mod 001 r/m

Описание: Команда выполняет умножение вещественного числа расширенной точности, находящегося в вершине стека сопроцессора FPU ST(0) на операнд в памяти - вещественное число двойной точности, записывая результат в ST(0). Формирование результата описывается в
таблице 2.8.
Таблица 2.8. Формирование результата [2]

Примечания:
1. F обозначает корректное вещественное число.
2. * обозначает возникновение исключения сопроцессора недействительного операнда #IA
3. ** обозначает возникновение исключения сопроцессора деления на ноль #Z
Источник - явный операнд, приемник - ST(0).

2.2........


1. Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 1: Basic Architecture, 470 p. 253665.pdf
2. Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 2A: Instruction Set Reference, A-M, 758 p. 253666.pdf
3. Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 2B: Instruction Set Reference, N-Z, 618 p. 253667.pdf
4. Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 3A: System Programming Guide, Part 1, 646 p. 253668.pdf
5. Буланкин В.Б. Теория проектирования ЭВМ и систем. Методические указания к курсовому проекту. Владимирский политехнический институт, 1984.
6. Гришин Г.Г., Микропроцессоры: Справочное пособие для разработчиков М69 судовой РЭА - Л.: Судостроение, 1987 - 520 с., ил.
7.Таненбаум Э., Архитектура компьютера. 4-е издание. Питер, 2003
8. Шахнов В.А. Микропроцессоры и микропроцессорные комплекты интегральных микросхем: Справочник: в 2 т. - М.: Радио и связь, 1988.




Перейти к полному тексту работы


Скачать работу с онлайн повышением уникальности до 90% по antiplagiat.ru, etxt.ru или advego.ru


Смотреть похожие работы

* Примечание. Уникальность работы указана на дату публикации, текущее значение может отличаться от указанного.