Разработка функциональной микропрограммы команды ЭВМ
Базовая структура процессора. Хранение признаков перехода и состояний. Применение буферного регистра. Алгоритм выполнения команды условного перехода. Увеличение быстродействия процессора. Выполнение микроопераций и вычисление логических условий.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 31.01.2016 |
Размер файла | 777,7 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
МИНОБРНАУКИ РОССИИ
Федеральное государственное бюджетное образовательное
учреждение высшего профессионального образования
«Ижевский государственный технический университет имени М.Т. Калашникова»
Кафедра «Вычислительная техника»
Пояснительная записка
к курсовому проекту
по дисциплине «ЭВМ и периферийные устройства»
на тему «Разработка функциональной микропрограммы команды ЭВМ»
Выполнил: студент гр. Б07-781-2
Фамилия И.О.
Проверил: к.т.н., доцент кафедры ВТ
Петухов К.Ю.
Ижевск 2015
Введение
Целью курсового проекта является изучение структуры ЭВМ и отдельных ее узлов, а также решение комплекса вопросов, связанных с проектированием процессора ЭВМ.
Курсовой проект включает в себя следующие этапы:
- Разработка микропрограммы выборки команды из ОП;
- Разработка функциональной микропрограммы заданной команды.
Задание
Вариант_ Номер варианта
Исходные данные:
- Емкость оперативной памяти Eоп = 2048 Кбайт;
- Длина слова оперативной памяти lоп = 4 байта.
Разработать функциональную микропрограмму команды BC (код 47).
1. Базовая структура ЭВМ
Рисунок 1.1 - Структурная схема ЭВМ
ЭВМ состоит из процессора, основной (оперативной) памяти (ОП), регистровой (сверхоперативной) памяти (РП) и средств ввода-вывода информации. Структурная схема ЭВМ показана на рисунке 1.1.
Процессор выбирает из ОП команды выполняет все операции за исключением операции ввода-вывода (ОВВ). ОВВ инициируются процессором и выполняются средствами ввода-вывода.
ОП обеспечивает хранение информации. В ЕС ЭВМ адресуется каждый байт ОП. За одно обращение к ОП записываются или читаются несколько байт информации.
РП используется для увеличения быстродействия процессора и состоит из 16 регистров общего назначения (РОН[0..15]) длиной 32 бита, каждый из которых обеспечивает хранение 32-х разрядного слова, и из 4-х регистров с плавающей запятой (РПЗ[K], где К = 0, 2, 4, 6), каждый из которых обеспечивает хранение 64-х разрядного слова. РОН идентифицируется адресами 0, 1, 2, ... , 15, а РПЗ адресами 0, 2, 4, 6. РОН используются в качестве индексных регистров, базовых регистров, а также для хранения слов и полуслов, участвующих в операциях общего назначения. РПЗ хранят числа с плавающей запятой.
ОА процессора служит для хранения слов информации, выполнения микроопераций (МО) над ними и вычисления логических условий (ЛУ).
УА обеспечивает требуемый порядок следования МО на основе заданных микропрограмм (МП).
ОА строится на основе принципа общих микроопераций. ОП разделяется на 2 части: память ОА и комбинационную часть (рисунок 1.1). Память ОА состоит из N регистров. Рабочие регистры РА, РВ, РС и т.д. используются для хранения операндов и внутренних слов МП. Длина их определяется длиной операндов и особенностью выполнения команд. Длина регистра команд РК назначается из максимального формата команд заданного набора. Счетчик адреса команд (СчАК) хранит и модифицирует адрес команды. Длина СчАК определяется емкостью ОП в полусловах, т.е:
lСчАК = log2E - 1 (1.1)
где lСчАК - длина СчАК, а E - емкость ОП.
Базовая структура процессора приведена на рисунке 1.2.
Рисунок 1.2 - Базовая структурная схема процессора
Память ОА связана с комбинационной частью шинами А, В и С. На шины А и В посредством управляющих сигналов из множеств {a} и {b} выбираются операнды, вступающие в микрооперацию, а шина С используется для занесения результатов МО в память ОА. Операционный автомат подключен к магистрали М, связывающей его с ОП и РП через регистр Z.
Комбинационная часть ОА служит для выполнения множества МО над словами, выбранными на шины А и В, и вычисления значений ЛУ из множества X, необходимых для реализации МП. Комбинационная часть ОА содержит следующие операционные элементы комбинационного типа: формирователь кодов (ФК), сдвигатель (СДВ), комбинационный сумматор (КСМ) и формирователи осведомительных сигналов (Ф).
ФК необходим для формирования обратного кода слова, находящегося на шине В (F:=B), выделения поля слова (F:=В(8:31)), формирования константы (F:=const). Возможна прямая передача слова с входной шины ФК на выходную (F:=В). Все МО на ФК инициируются управляющими сигналами из множества {f}.
СДВ служит для выполнения МО сдвига слова вправо или влево на нужное количество разрядов k (S:=Lk(F) или S:=Rk(F), где k=1,2,…) и для прямой передачи слова через СДВ (S:=F). МО сдвига инициируются управляющими сигналами из множества {s}. Если при выполнении МО сдвига необходимо запоминать значение спадающего разряда (оно может быть использовано в дальнейшем), то в структуру вводим дополнительный триггер.
Основное назначение КСМ - выполнение МО суммирования чисел (K:=A+S или K:=A+S+1). Кроме этого, КСМ может выполнять логические МО (К:=А v S; К:=А & S; К:=A S), микрооперации счета (К:=А+1; К:=S+1) и прямую передачу слова на шину K (K:=A; K:=S). Все МО КСМ инициируются управляющими сигналами из множества {k}. П - триггер для запоминания переноса при сложении (вводится в структуру ОА при необходимости).
Результат МО фиксируется в промежуточном регистре Z управляющим сигналом z1 на время одного такта, а затем может быть передан в память ОА по шине С (управляющие сигналы {c}), в ОП или РП через магистраль М (управляющие сигналы {m}) или в адресный регистр АР (управляющие сигналы {r}).
Хранение признаков перехода и состояний обеспечивает совокупность триггеров, образующих регистр признаков перехода и состояний (ППС). Регистр ППС представляет собой часть регистра слова состояний программы (ССП) ЕС ЭВМ. В нем фиксируются все особые случаи выполнения команды (коды прерываний), устанавливаются режимы работы и состояния процессора, признак результата.
В ОП емкостью Е байтов хранятся 16, 32 или 64- разрядные слова. Слово читается и записывается в ОП всегда целиком за одно обращение к ОП. Адрес слова, к которому производится обращение, указывается в регистре адреса оперативной памяти (АОП). Длина регистра АОП вычисляется как:
lАОП = log2Ес (1.2)
где Ес - емкость ОП в словах, вычисляется:
Ес=Е/lоп (1.3)
где lоп - длина слова ОП в байтах.
Слово памяти, которое записывается или читается из ОП, размещается в регистре слова ОП (РОП). Длина регистра РОП (0:lоп-1), где lоп{16,32,64}. Операция в ОП возбуждается сигналами чтения из ОП (ЧтОП) и записи в ОП (ЗпОП). Момент окончания цикла обращения к ОП отмечается сигналом занятости ОП Zоп, так как цикл ОП имеет длительность, большую такта работы процессора. Таким образом, синхронизация работы процессора и ОП обеспечивается за счет ждущих вершин графа микропрограммы.
Обмен информацией между ОА и ОП происходит через магистраль М и промежуточный регистр Z. Адрес слова, которое необходимо прочитать или записать в ОП, предварительно формируется в адресном регистре АР, связанном с АОП шиной, управляемой сигналами из множества {r}. Длина АР равна:
lАР = log2E (1.4)
РП является внутренней (сверхоперативной) памятью процессора. Длина регистра слова РП (РРП) - 32 разряда. Адрес регистра указывается в 5-разрядном регистре адреса РП (APП). Чтение и запись в РП инициируются сигналами ЧтРП и ЗпРП, соответственно.
При обращении к РОН с полусловом или словом любое значение адреса от 0 до 15 является допустимым. При обращении к РОН с двойным словом адрес должен быть четным, (если адрес у РОН нечетный - нарушение спецификации адреса (S)). При обращении к РПЗ со словом или двойным словом (числа с плавающей запятой) адрес РПЗ должен быть четным и меньше восьми. В ином случае фиксируется нарушение спецификации адреса РПЗ (SP).
Сопряжение ОА процессора с РП организовано через магистраль. Сигнал занятости РП отсутствует, т.к. цикл РП (чтение или запись) укладывается в такт процессора.
В формате команды под адрес РП (номер регистра) отводится четырехразрядное поле (R, B или X). Обращение к определенному виду регистров (РОН или РПЗ) зависит от кода операции в команде (типа операнда).
Для обращения к POH за целым числом, базовым адресом, индексным приращением, кодом логической величины или адресом необходимо установить старший разряд адреса АРП(1) в нуль. Для обращения к РПЗ за числом с плавающей запятой АРП(1) устанавливается в единицу. Разряды АРП(2:5) определяются полем R , В или Х в команде. Обращение к регистрам РП за двойным словом выполняется за два цикла.
процессор буферный условный переход
2. Выборка команды из ОП
Для того, чтобы выполнить команду, ее необходимо прочитать из ОП в регистр команд (РК). В зависимости от формата выбираемой команды и ситуации, предшествовавшей выборке данной команды, необходимо выполнить различную совокупность микроопераций для передачи команды из ОП в РК. Команды любого формата начинаются с целочисленной границы полуслова. Слово ОП может содержать полностью команду или только ее часть. Емкость ОП Eоп = 64 КБ. По формуле (1.3) адресный регистр ОП имеет длину:
Адрес выбираемой команды хранится в СчАК и по формуле (1.1) имеет длину:
По формуле (1.2) АОП имеет длину:
Особенности выборки: для исключения повторного обращения к одному и тому же слову ОП применяется буферный регистр, куда записывается невыбранная часть слова ОП. При наличии команды перехода возможно нарушение естественного порядка выполнения команд. Данная ситуация отмечается триггером перехода, при этом буферным регистром пользоваться нельзя. Требуемая команда читается из нового слова ОП. Команда формата RR кодируется как 00.
Микропрограмма выборки из ОП представлена на рисунке 2.1.
Рисунок 2.1 - Микропрограмма выборки команды из ОП
3. Выполнение команды
ФМП команды разрабатывается на основе словесного алгоритма ее выполнения и исходного задания.
3.1 Алгоритм выполнения команды BC
BC (код 47) - Условный переход. Формат команды приведен на рисунке 3.1.
Рисунок 3.1 - Формат команды BC
Продвинутый адрес команды в текущем PSW замещается адресом перехода, если значение признака результата соответствует коду, указанному в поле M1; в противном случае продолжается обычное последовательное выполнение команд с использованием продвинутого адреса.
В качестве адреса используется адрес второго операнда.
Поле M1 используется в качестве 4-битовой маски. 4 бита маски соответствуют слева направо 4 значениям признака результата.
Переход происходит всякий раз, когда бит маски, соответствующий признаку результата в PSW, равен 1.
Выполнение команды процессором задерживается до тех пор, пока не будут завершены все предыдущие обращения к основной памяти по отношению к каналам и другим процессорам. Пока не завершено выполнение данной команды, обращения в память за последующими командами или их операндами не производятся.
Признак результата остается без изменения.
Программные прерывания отсутствуют.
Функциональная микропрограмма команды BC приведена на рисунках 3.2, 3.3.
Рисунок 3.2 - ФМП команды BC
Рисунок 3.3 - ФМП команды BC. Продолжение
Заключение
В результате работы над курсовым проектом была разработана функциональная микропрограмма команды BC (код 47) - условный переход.
Список использованных источников
1. Юминова Т.Ф., Петухов К.Ю. Методические указания к выполнению курсового проекта «Проектирование процессора ЭВМ » по курсу «Организация ЭВМ, комплексов и систем» для студентов дневного отделения специальности 2201.
2. Принципы работы системы IВМ/370. /Под ред. Л.Д. Райкова. - Пер. с англ. М.: Мир, 1978.
Приложение
Список сокращений
АОП - Адрес оперативной памяти
АР - Адресный регистр
АРП - Адрес регистровой памяти
ЕС ЭВМ - Единая система электронных вычислительных машин
КСМ - Комбинационный сумматор
ЛУ - Логическое условие
М - Магистраль
МК - Микрокоманда
МО - Микрооперация
МП - Микропрограмма
ОА - Операционный автомат
ОВВ - Операция ввода/вывода
ОП - Оперативная память
ПЗ - Плавающая запятая
ППС - Признаки переходов и состояний
РОН - Регистр общего назначения
РП - Регистровая память
РПЗ - Регистр с плавающей запятой
СДВ - Сдвигатель
СчАК - Счетчик адреса команд
ФК - Формирователь кодов
ФМП - Функциональная микропрограмма
ЭВМ - Электронная вычислительная машина
Размещено на Allbest.ur
Подобные документы
Принцип работы процессора (одномагистральная структура). Временные диаграммы, описывающие выполнение микроопераций для каждой команды. Структурная схема управляющего автомата на основе памяти с одним полем адреса. Описание процессора на языке Active VHDL.
курсовая работа [621,0 K], добавлен 24.09.2010Функциональная организация процессора. Сложение с нормализацией, синтез операций, выборка команды. Описание структурной схемы процессора. Синтез управляющего автомата, разметка граф схемы. Разбиение микроопераций по полям и кодирование логических условий.
курсовая работа [91,8 K], добавлен 24.09.2010Управление взаимодействием всех устройств ЭВМ. История создания и развития производства процессора. Структура центрального процессора. Регистры общего назначения. Обозначения популярных моделей процессоров Intel и AMD. Команды центрального процессора.
реферат [111,2 K], добавлен 25.02.2015Разработка управляющего автомата процессора с жесткой логикой в САПР Quartus II. Построение схемы функциональной микропрограммы команды "Исключающее ИЛИ" в размеченном виде. Унитарное кодирование состояний автомата. Запись функций переходов и выходов.
курсовая работа [671,3 K], добавлен 04.11.2014Разработка модели процессора, выполняющего набор машинных команд. Структурная схема процессора (операционного и управляющего автоматов), анализ принципа работы. Содержательный алгоритм микропрограммы, синтез управляющего автомата на основе жесткой логики.
курсовая работа [871,9 K], добавлен 16.09.2010Выполнение операции умножения над числами с фиксированной точкой со сдвигом суммы частичных произведений вправо. Разработка структуры центрального процессора при выполнении двухадресной команды со следующими способами адресации: прямая и регистровая.
курсовая работа [459,5 K], добавлен 25.03.2012Рассмотрение принципа работы процессора и его практической реализации с использованием языка описания аппаратуры Verilog. Проектирование системы команд процессора. Выбор размера массива постоянной памяти. Подключение счетчика инструкций и файла регистра.
курсовая работа [1,2 M], добавлен 26.05.2022Разработка программы эмулятора, которая должна имитировать рабочий цикл процессора для каждой команды. Анализ структуры микропроцессора. Моделирующие переменные. Мнемоника команд моделируемого процессора. Разработка структуры программы: классов, методов.
курсовая работа [156,8 K], добавлен 07.11.2012Описание архитектуры внешних выводов кристалла процессора. Рассмотрение форматов данных для целых чисел со знаком и без знака. Выбор модели памяти и структуры регистровой памяти. Использование кэш прямого отображения. Арифметические и логические команды.
курсовая работа [890,5 K], добавлен 05.06.2015Структура процессора Pentium, суперскалярность, основные особенности архитектуры. Организация конвейера команд, правила объединения. Дополнительные режимы работы процессора. Источники аппаратных прерываний. Формат ММХ команды. Процессор Pentium 4, схемы.
лекция [4,0 M], добавлен 14.12.2013