Проектирование универсального процессора
Процесс разработки универсального процессора ЭВМ с фиксированной системой команд и форматами данными. Обоснование выбранных форматов данных. Изучение форматов команд при разработке ВМ. Использование сегментных регистров. Режимы процессора и памяти.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 05.02.2013 |
Размер файла | 1,0 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Курсовой проект
Проектирование универсального процессора
Буякова Е., Пермякова А.
рук. Вожегов Д.В.
Киров, 2012
Содержание
Введение
1. Постановка задачи
2. Разработка архитектуры процессора
2.1 Выбор и обоснование форматов данных
2.2 Выбор способов адресации
2.3 Выбор форматов команд
2.4 Разработка системы команд
2.5 Определение внутренних регистров процессора
2.5.1 Регистры общего назначения
2.5.2 Управляющие регистры
2.5.3 Регистры сегментов
2.5.4 Регистры системных адресов
3. Разработка функциональных схем отдельных устройств
4. Расчетная часть
4.1 Расчёт быстродействия
4.2 Расчёт надёжности аппаратуры процессора
4.3 Расчет потребляемой мощности процессора
Введение
Объект разработки - процессор ЭВМ с фиксированной системой команд и форматами данных, который может выполнять универсальную обработку информации.
Цель работы - разработка универсального процессора с заданным быстродействием. Процессор должен удовлетворять следующему техническому заданию:
- Быстродействие - 6,0 млн. оп/сек;
- Объем ОЗУ - 256 Мбайт;
- Время доступа к памяти - 150 нс;
- Ширина выборки из памяти - 64 бит;
- Формат данных с ФЗ - 8/16/32/64 бит;
- Формат данных с ПЗ - 64 бит;
- Количество маскируемых запросов - 24;
- Уровень вложенности - 8;
- Количество немаскируемых запросов - 4;
- Виды адресации - не менее 7.
1. Постановка задачи
Объект разработки - процессор ЭВМ с фиксированной системой команд и форматами данных, который может выполнять универсальную обработку информации.
Цель работы - разработка универсального процессора с заданным быстродействием на основе существующих микропроцессорных комплектов и ТТЛ-серий.
В ходе проектирования должны быть просмотрены основные направления проектирования процессоров и использованы те методы, которые позволяют решить поставленную проблему. Основными методами проектирования являются:
- использование и применение знаний, полученных в ходе изучения дисциплин «Организация ЭВМ и систем» и «МПС»;
- рассмотрение уже готовых решений некоторых фирм для достижения поставленной цели.
2. Разработка архитектуры процессора
2.1 Выбор и обоснование форматов данных
В соответствии c заданием процессор должен работать со следующими типами данных: 8-, 16-, 32- или 64-разрядные числа в формате с ФЗ и 64-разрядное слово в формате с ПЗ. За основу процессора выбрана 64-разрядная архитектура - внутренние магистрали процессора 64-разрядные.
8-битные, 16-битные и 32-битные данные при передаче по МД располагаются в младших разрядах. Целые числа без знака представлены в прямом коде (ПК), целые числа со знаком - в дополнительном коде (ДК). Процессор не различает числа со знаком и без знака, это решает программист. Ниже рассмотрены используемые форматы данных:
1) Байт без знака. Диапазон представления чисел от 0 до 255 (рисунок 1 а).
2) Байт со знаком. Диапазон представления чисел от -128 до 127 (рисунок 1 б).
3) Слово без знака. Диапазон представления чисел от 0 до 65535 (рисунок 2 а).
4) Слово со знаком. Диапазон представления чисел от -32768 до 32767 (рисунок 2 б).
5) Двойное слово без знака. Диапазон представления чисел от 0 до 4294967295 (рисунок 3 а).
6) Двойное слово со знаком. Диапазон представления чисел от -2147483648 до 2147483647 (рисунок 3 б).
7) Учетверенное слово без знака. Диапазон представления чисел от 0 до 18446744073709551616 (рисунок 4 а).
8) Учетверенное слово со знаком. Диапазон представления чисел от -9223372036854775808 до 9223372036854775807 (рисунок 4 б).
9) Числа в формате с ПЗ.
Данные такого типа состоят из знака, положительной мантиссы (52 бита) и смещенного порядка (11 бит). Формат числа с ПЗ представлен на рисунке 5.
2.2 Выбор способов адресации
Вопрос о том, каким образом в адресном поле команды может быть указано местоположение операндов, считается одним из центральных при разработке архитектуры ВМ. С точки зрения сокращения аппаратурных затрат выгодно уменьшить длину адресного поля при сохранении возможностей доступа ко всему адресному пространству. С другой стороны, способ задания адресов должен способствовать максимальному сближению конструктов языка программирования высокого уровня и машинных команд. Все это привело к тому, что в архитектуре системы команд предусмотрены несколько способов адресации операндов.
В данном проекте предусмотрены следующие виды адресации:
1) Непосредственная адресация
Операнд находится непосредственно в адресном поле команды. Не требуется дополнительного обращения к памяти для вызова операнда, однако таким способом можно работать только с константами, и число значений ограничено размером адресного поля команды.
ADD CX, 5
2) Регистровая адресация
Этот способ адресации используется в случаях, когда операнд находится в одном из регистров общего назначения. В команде в адресной части указывается номер регистра:
MOV AX, BX
3) Прямая адресация
Адрес операнда находится в адресном поле команды.
MOV AX, [смещение]
4) Косвенная регистровая адресация
Этот способ адресации используется в случаях, когда операнд находится в памяти, а его адрес находится в одном из регистров общего назначения. Достоинством косвенной адресации является то, что можно обращаться к памяти, не имея к команде полного адреса.
CMP AX, [DX]
5) Базово-индексная автоинкрементная адресация
После выполнения команды содержимое индексного регистра автоматически увеличивается на единицу.
MOV [BP][SI] ++, АХ
6) Базово-индексная автодекрементная адресация
После выполнения команды содержимое индексного регистра автоматически уменьшается на единицу.
MOV [BX][DI]--, AX
7) Базовая регистровая адресация
Адрес операнда определяется суммированием содержимого регистра базы и смещения.
ADD AX, [BX] +1234h
8) Индексная адресация
Адрес операнда определяется суммированием содержимого индексного регистра и смещения.
ADD AX, [SI]+1234h
Вычисление исполнительного адреса для каждого из видов адресации приведено в таблице 1, где:
С (смещение) - число, включенное в команду;
Б (база) - содержимое базового регистра (обычно используется для указания на начало некоторого массива);
И (индекс) - содержимое индексного регистра.
Таблица 1 - Виды адресации:
№ |
Способ адресации |
Эффективный адрес |
|
1 |
Непосредственная |
Операнд в команде |
|
2 |
Регистровая |
Операнд в регистре |
|
3 |
Прямая |
ЕА:=[смещение] |
|
4 |
Косвенная регистровая |
ЕА:=[РЕГ] |
|
5 |
Базово-индексная автоинкрементная |
ЕА:=Б+И, И:=И+1 |
|
6 |
Базово-индексная автодекрементная |
ЕА:= Б+И, И:=И-1 |
|
7 |
Базово-регистровая |
ЕА:=Б+С |
|
8 |
Индексная |
ЕА:=И+С |
2.3 Выбор форматов команд
Разработка форматов команд является важным этапом при разработке ВМ. С одной стороны целесообразна минимизация формата команды, что позволит сократить место в памяти для хранения программ и время выборки команды из памяти, однако при этом усложняется процесс декодирования команды.
Следовательно, достижение минимального размера команды должно уравниваться со временем, затрачиваемым на декодирование и выборку команды.
Также необходимо учитывать достаточный объём пространства в формате команды для выражения всех требуемых операндов.
Чтобы обеспечить гибкости системы команд с точки зрения программирования, но в то же время, исключить слишком длинные инструкции, решено ввести 3 основных формата команд: 2-х, 1-но и без- адресные, что позволяет оптимально закодировать все команды, наиболее полно используя код операции (КОП). Для простоты дешифрации в процессоре принята фиксированная длина основной части командного слова - 2 байта.
Операционная часть команды одинакова для всех команд, но в разных форматах могут отсутствовать некоторые поля, которые используются в качестве дополнительных бит кода операции (КОП).
1) Двухадресные команды
В двухадресных командах есть следующие типы команд: регистр - регистр, регистр - память, регистр - непосредственный операнд (НО).
Назначение полей команды: КОП (5 бит: 15-11) - код операции;
- Ф (2 бита: 9,8) - разрядность операндов: 00 - 8 бит, 01 - 16 бит, 10 - 32 бит, 11 - 64 бит;
- Н (1 бит: 10) - направление пересылки результата: 1 - в память / 0 - в регистр;
- РЕГ1 (3 бита: 2-0), РЕГ2 (3 бита: 5-3) - номер регистра (таблица 2);
- СА1 (2 бита: 7,6), СА2 (3 бита: 5-3) - используемые способы адресации (таблица 3);
Таблица 2 - Кодирование РОН в командах:
Рег/Ф |
00 |
01 |
10 |
11 |
|
000 |
AL |
AX |
EAX |
RAX |
|
001 |
BL |
BX |
EBX |
RBX |
|
010 |
CL |
CX |
ECX |
RCX |
|
011 |
DL |
DX |
EDX |
RDX |
|
100 |
AH |
DI |
EDI |
||
101 |
BH |
SI |
ESI |
||
110 |
CH |
BP |
EBP |
||
111 |
DH |
SP |
ESP |
Таблица 3 - Способы адресации второго операнда в двухадресных командах:
CА2/CА1 |
00 |
01 |
10 |
11 |
|
000 |
M[EAX] |
[SI+C] |
[BX+DI+C] |
EAX /AX /AL |
|
001 |
M[EBX] |
[DI+C] |
[BP+SI+C] |
EBX /BX /BL |
|
010 |
M[ECX] |
[BP+C] |
НО |
ECX /CX /CL |
|
011 |
M[EDX] |
[BX+C] |
M[смещение] |
EDX /DX /DL |
|
100 |
M[ESI] |
[BX+SI]++ |
EBP /BP /AH |
||
101 |
M[EDI] |
[BX+DI]++ |
ESP /SP /BH |
||
110 |
[BX+SI] |
[BX+SI]-- |
ESI /SI /CH |
||
111 |
[BX+DI] |
[BX+DI]-- |
EDI /DI /DH |
Оставшиеся неиспользованные комбинации могут быть задействованы при введении новых способов адресации в дальнейшем.
2) Одноадресные команды
Свободные биты могут использоваться для расширения кода операции.
Назначение полей в данном формате команды то же, что и в формате двухадресной команды. Используются виды адресации, приведённые в таблице 4.
Таблица 4 - Способы адресации второго операнда в одноадресных командах:
ПА2\ПА1 |
00 |
01 |
10 |
11 |
|
000 |
M[EAX] |
[SI+C] |
[BX+DI+C] |
EAX /AX /AL |
|
001 |
M[EBX] |
[DI+C] |
[BP+SI+C] |
EBX /BX /BL |
|
010 |
M[ECX] |
[BP+C] |
НО |
ECX /CX /CL |
|
011 |
M[EDX] |
[BX+C] |
M[смещение] |
EDX /DX /DL |
|
100 |
M[ESI] |
[BX+SI]++ |
EBP /BP /AH |
||
101 |
M[EDI] |
[BX+DI]++ |
ESP /SP /BH |
||
110 |
[BX+SI] |
[BX+SI]-- |
ESI /SI /CH |
||
111 |
[BX+DI] |
[BX+DI]-- |
EDI /DI /DH |
3) Безадресные команды
4) Команды для сопроцессора
В данном курсовом форматы этих команд не разрабатываются. Они должны определяться процессором по равным 1 битам 15, 14 и 8, а затем передаваться в сопроцессор.
2.4 Разработка системы команд
Согласно ТЗ, процессор должен быть универсальным, поэтому в систему команд должны входить команды для решения широкого круга задач. Как уже упоминалось ранее, в ПР предусмотрено 3 формата команд. Благодаря 10 различным видам адресации и представленному ниже набору команд, ПР удовлетворяет заданному требованию. В общем наборе команд присутствуют арифметические и логические команды, команды перехода (по различному условию), команды управления и пересылки данных.
1) Двухадресные команды:
- Арифметические (таблица 5)
Таблица 5:
Код операции |
Мнемоника |
Описание |
|
0000 |
ADD X,Y |
сложение |
|
0001 |
AD X,Y |
сложение с переносом |
|
0010 |
SUB X,Y |
вычитание |
|
0011 |
SB X,Y |
вычитание с переносом |
- Логические (таблица 6)
Таблица 6:
Код операции |
Мнемоника |
Описание |
|
0100 |
AND X,Y |
логическое «И» |
|
0101 |
OR X,Y |
логическое «ИЛИ» |
|
0110 |
XOR X,Y |
«исключающее ИЛИ» |
- Пересылки (таблица 7)
Таблица 7:
Код операции |
Мнемоника |
Описание |
|
0111 |
MOV X,Y |
пересылка операнда Y на место X |
|
1000 |
LDA X,Y |
загрузка ЭА в регистр |
- Сдвига (таблица 8)
Таблица 8:
Код операции |
Мнемоника |
Описание |
|
1001 |
ROL X,C |
циклический сдвиг влево |
|
1010 |
ROR X,C |
циклический сдвиг вправо |
|
1011 |
SAL X,C |
арифметический сдвиг влево |
|
1100 |
SAR X,C |
арифметический сдвиг вправо |
|
1101 |
SHL X,C |
логический сдвиг влево |
|
1110 |
SHR X,C |
логический сдвиг вправо |
- Сравнения (таблица 9)
Таблица 9:
Код операции |
Мнемоника |
Описание |
|
1111 |
CMP X,Y |
сравнение операндов |
Итого: 16 двухадресных команд
2) Одноадресные команды
- Арифметические (таблица 10)
Таблица 10:
Код операции |
Мнемоника |
Описание |
|
0000 000 |
INC X |
Инкремент |
|
0001 000 |
DEC X |
Декремент |
|
0010 000 |
DIV X |
Деление |
|
0011 000 |
MUL X |
Умножение |
|
0100 000 |
IDIV X |
Деление со знаком |
|
0101 000 |
IMUL X |
Умножение со знаком |
- Логические (таблица 11)
Таблица 11:
Код операции |
Мнемоника |
Описание |
|
0110 000 |
NEG X |
Инверсия знака операнда |
|
0111 000 |
NOT X |
Инверсия операнда |
- Передачи управления (таблица 12)
Таблица 12:
Код операции |
Мнемоника |
Описание |
|
1000 000 |
CALL A |
Вызов подпрограммы |
|
1001 000 |
FAR A |
Дальний вызов |
|
1010 000 |
LOOP A |
Переход, пока CX<>0 |
|
1011 000 |
JMP A |
Условный переход |
- Команды условного перехода (таблица 13)
Таблица 13:
Код операции |
Мнемоника |
Условие перехода |
Описание |
|
1100 000 |
JC A |
CF=1 |
Если перенос |
|
1101 000 |
JNC A |
CF=0 |
Если нет переноса |
|
1110 000 |
JE A |
ZF=1 |
Если равно |
|
1111 000 |
JZ A |
Если 0 |
||
0000 001 |
JNE A |
ZF=0 |
Если не равно |
|
0000 010 |
JNZ A |
Если не 0 |
||
0000 011 |
JS A |
SF=1 |
Если знак минус |
|
0000 100 |
JNS A |
SF=0 |
Если знак плюс |
|
0000 101 |
JO A |
OF=1 |
Если переполнение |
|
0000 110 |
JNO A |
OF=0 |
Если нет переполнения |
|
0000 111 |
JG A |
ZF = 0 и SF = OF |
Если больше |
|
0001 001 |
JL A |
SF <> OF |
Если меньше |
- Прочие (таблица 14)
Таблица 14:
Код операции |
Мнемоника |
Описание |
|
0001 010 |
IN N |
Чтение из порта |
|
0001 011 |
OUT N |
Запись в порт |
|
0001 100 |
POP X |
Извлечение из стека |
|
0001 101 |
PUSH X |
Загрузка в стек |
- Работа с АП (таблица 15)
Таблица 15:
Код операции |
Мнемоника |
Описание |
|
0001 110 |
INT N |
Программное прерывание |
|
0001 111 |
VEC X |
Сохранение вектора |
|
0010 001 |
LRM X |
Загрузка регистра маски |
|
0010 010 |
SRM X |
Сохранение регистра маски |
|
0010 011 |
LRS X |
Загрузка регистра состояния |
|
0010 100 |
SRS X |
Сохранение регистра состояния |
|
00111 |
STI |
разрешение прерывание |
|
01000 |
CLI |
запрещение прерываний |
Итого:
34 одноадресные команды.
3) Безадресные команды (таблица 16)
Таблица 16:
Код операции |
Мнемоника |
Описание |
|
00001 |
NOP |
нет операции |
|
00010 |
PUSHF |
Сохранение PSW |
|
00011 |
POPF |
Загрузка PSW |
|
00011 |
HLT |
останов процессора |
|
00100 |
RET |
возврат из ПП |
|
00101 |
FARRET |
возврат из ПП |
|
00110 |
IRET |
возврат из прерывания |
|
11000 FL |
STF FL |
установка флага |
|
11001 FL |
CLF FL |
сброс флага |
|
11010 FL |
INV FL |
инверсия флага |
Итого: 12 безадресных команд.
4) Часть команд для обработки чисел с ПЗ (таблица 17)
Таблица 17:
Код операции |
Мнемоника |
Описание |
|
00000 |
FMOV X,Y |
загрузка вещественного числа |
|
00001 |
FPUSH X |
сохранение в стеке |
|
00010 |
FPOP X |
выборка из стека |
|
00011 |
FADD X,Y |
сложение с ПЗ |
|
00100 |
FSUB X,Y |
вычитание с ПЗ |
|
00101 |
FMUL X,Y |
деление с ПЗ |
|
00110 |
FDIV X,Y |
умножение с ПЗ |
|
00111 |
FINC X |
инкремент с ПЗ |
|
01000 |
FDEC X |
декремент с ПЗ |
|
01001 |
FCOMP X |
сравнение двух чисел с ПЗ |
|
01010 |
FABS |
модуль числа с ПЗ |
|
01011 |
FCHS |
инверсия знака числа с ПЗ |
|
01100 |
FNOP |
пустая операция |
|
01101 |
FLD |
обнуление числа с ПЗ |
Итого: 13 команд для обработки чисел с ПЗ.
2.5.1 Регистры общего назначения
Разрядность РОН определяется максимальной разрядностью данных, обрабатываемых устройством. Следовательно, РОН данного устройства будут 64х разрядными. Каждый из РОН может быть использован в арифметико-логических операциях. Однако каждый РОН имеет своё определённое назначение. Это позволяет уменьшить разрядность команд при неявном использовании какого-либо из РОН. Так как в проектируемом устройстве используются данные разрядности также 8, 16, 32 в РОН'ах есть возможность адресации к младшим 16 битам, поделённым на восьмибитные поля, и к младшим 32 битам. Формат РОН представлен на рисунке 8, их кодирование представлено выше в таблице 2.
Рисунок 8 - Формат регистров общего назначения:
Все РОН могут участвовать в арифметико-логических операциях. Вместе с тем каждый РОН имеет свою специальную функцию, что позволяет уменьшить разрядность команд и повысить, в некоторых случаях, быстродействие.
Рассмотрим специальное назначение РОН:
1) RAX - аккумулятор. Используется в качестве неявного операнда в некоторых одно- или безадресных командах;
2) RBХ - базовый регистр. Используется в качестве базового регистра;
3) RCX - счетчик. Является счетчиком при организации циклов;
4) RDX - данные. Является расширением регистра EAX при умножении двойных слов, а также при операциях деления хранит остаток;
5) ESI - индекс. Используется в качестве индексного регистра;
6) EDI - индекс. Используется в качестве индексного регистра;
7) EBP - дополнительный регистр базы. Используется в качестве базового регистра; в операциях со стеком содержит верхнюю границу стека;
8) ESP - указатель стека.
2.5.2 Управляющие регистры
Указатель инструкций IP (16 разрядов) содержит смещение следующей исполняемой инструкции относительно базы сегмента кода. IP находится в РОН и может быть прочитан или перезагружен как и другие регистры.
Рисунок 9 - Указатель инструкций:
В состав архитектуры процессора входит 16-ти разрядный регистр слова состояния ПР PSW (рисунок 10).
Слово состояния находится в УУВС, чтобы было проще поддерживать соответствие флагов операций в PSW и ОУ.
Рисунок 10 - Регистр слова состояния процессора:
- M - устанавливается текущий режим работы ПР (0 - реальный режим, 1 - защищённый режим);
- S - признак привилегий процесса (0 - системный, 1 - пользовательский). Два режима предусмотрены в целях защиты. В пользовательском режиме программам запрещается выполнение команд, влияющих на системные ресурсы;
- ERR - код ошибки при выполнении команды;
- DF - устанавливается текущий сегментный регистр (0 - DS,1- ES);
- TF - флаг трассировки;
- IF - флаг запрещения маскируемых прерываний;
- SF - флаг знакового разряда результата;
- OF - признак переполнения;
- ZF - признак нулевого результата;
- CF - признак переноса;
2.5.3 Регистры сегментов
Сегментные регистры содержат 16-битные базовые адреса (в реальном режиме) или селекторы (в защищенном режиме) сегментов CS (сегмент кодов команд); SS (сегмент стека); DS (сегмент данных); ES - дополнительный сегмент. Использование сегментных регистров определяется типом обращения к памяти.
Таблица 18 - Использование сегментных регистров
Тип ссылки |
Используемый сегмент Используемый регистр |
Правило выбора сегмента по умолчанию |
|
Команды |
Сегмент кода регистр CS |
Автоматически при выборе команды |
|
Стек |
Сегмент стека регистр SS |
Для команд занесения в стек и удаления из стека Для некоторых ссылок с использованием базовых регистров ESP и EBP |
|
Локальные данные |
Сегмент данных регистр DS |
Все ссылки на данные, стека строк назначения |
|
Строки-приемники |
Дополнительный сегмент регистр ES |
Приемник в командах обработки строк |
С каждым из 4-х сегментных регистров связаны программно-недоступные теневые регистры дескрипторов (в защищенном режиме), автоматически загружаемые при загрузке соответствующих селекторов сегмента.
Рисунок 11 -Использование сегментных регистров: а) - защищенный режим, б) - реальный режим:
Базовый адрес определяет сегмент в памяти (при реальном режиме), размером от 64Кб до 1Mб. Индекс дескриптора определяет номер используемого дескриптора сегмента, RPL - бит запрашиваемых привилегий.
При загрузке селектора сегмента процессор сравнивает значение поля DPL выбираемого дескриптора со значением поля RPL селектора. Значение RPL должно быть меньше либо равно значения DPL. При несоблюдении этого условия доступ к ОП блокируется и формируется нарушение общей защиты.
2.5.4 Регистры системных адресов
Регистр таблицы дескрипторов сегментов (RGGDT).
Рисунок 12 - Формат регистра таблицы дескрипторов сегментов:
В регистре (32 бита) хранится 20-разрядный базовый адрес таблицы, следовательно она должна располагаться в памяти по адресу кратному 256, и 12-разрядный размер таблицы в дескрипторах, следовательно, максимально возможное число сегментов 2^12=4K. Регистр таблицы адресов прерываний (RGIDT).
Рисунок 13 - Формат регистра таблицы дескрипторов прерываний:
В регистре (32 бита) хранится 24 разрядный базовый адрес таблицы дескрипторов прерываний, который должен быть кратен 16, и 8-разрядный размер таблицы в дескрипторах, следовательно, максимально возможное число прерываний 2^8=256.
2.6 Выбор режимов работы процессора и системы управления памятью
Разрабатываемый процессор по ТЗ работает в однозадачном режиме.
При этом пользователь получает ЭВМ в полное распоряжение: он сам готовит ЭВМ к работе, загружает задания, инициирует их, наблюдает за ходом решения и выводом результатов. По окончании работ одного пользователя все ресурсы ЭВМ передаются в распоряжение другого. Этот тип режима характеризуется весьма низкой полезной загрузкой технических средств. К снижению производительности ЭВМ из-за простоев процессора приводят затраты времени на подготовку ЭВМ к работе (включение, проверка, загрузка ОС, ввод заданий и т.д.) и большое время реакции пользователя. Однако этот режим обеспечивает максимальные удобства пользователю в плане владения ресурсами.
По ТЗ размер ОЗУ составляет 256 Мбайт. Было решено предусмотреть для проектируемого ПР два режима работы: реальный и защищенный. Реальный режим или режим реальных адресов будет использоваться при начальной загрузке процессора для инициализации всех управляющих регистров и структур в памяти на этапе первоначальной загрузки операционной системы (ОС). Защищенный режим будет использоваться при обычной работе с пользовательскими программами. Именно в нем реализована защита памяти. Так как в ПР предусмотрена работа с байтами (согласно ТЗ), то минимальная ячейка памяти, к которой может обращаться ПР - байт. Следовательно, разрядность физического адреса должна быть 28 разрядов.
1) Реальный режим
В реальном режиме программисту доступно все 256 Мбайт физической памяти. При этом память разбивается на сегменты размером от 2 до 64 Кбайт. Физический адрес вычисляется конкатенацией 12 младших разрядов смещения с суммой сегментного регистра и номера блока в сегменте (старшие 4 разряда смещения) (рисунок 14).
Рисунок 14 - Формирование ФА в реальном режиме:
2) Защищенный режим
Защищенный режим работы обеспечивает выполнение следующих функций: контроль несанкционированного доступа пользователей к данным, повреждения программ и данных из-за ошибок в программах; предотвращение намеренных попыток разрушить целостность системы и использования информации в памяти не в соответствии с ее функциональным назначением. В защищенном режиме адресуются 256 Мбайт с разделением на сегменты до 1 Мбайта с использованием защиты памяти. При этом каждая задача может запросить данные из другого сегмента посредством дальней адресации. Присвоение каждому сегменту некоторых атрибутов с информацией о нём позволяет переложить часть функций по контролю за доступом на аппаратуру процессора. Для реализации данного подхода введена специальная структура, называемая дескриптором сегмента. Формат дескриптора сегмента представлен на рисунке 15.
ПР работает в однозадачном режиме, значит для организации его работы потребуется одна глобальная таблица дескрипторов (GDT). Количество сегментов, т.е. размер таблицы дескрипторов, должно быть таким, чтобы можно было адресовать всю физическую память и составляет максимально 4k дескрипторов.
Адрес начала ТД и её размер определяются в регистре GDTR (рисунок 15). Так как БА ТД 20-разрядный то ТД должна располагаться в памяти по адресу кратному 256.
Рисунок 15 - Формат регистра GDTR:
- БА - базовый адрес таблицы дескрипторов;
- Предел - размер ТД в дескрипторах.
63 53 |
52 51 |
50 |
49 |
48 |
47 20 |
19 0 |
|
* |
DPL |
C/D |
ED |
R/W |
БА |
Предел |
- DPL - уровень привилегий сегмента;
- C/D - сегмент кода (=1) или данных (=0);
- ED - направление расширения сегмента данных (ED=1 - сегмент стека);
- R/W - запрет чтения из сегмента кода или запрет записи в сегмент данных (R/W=0).
- Предел - размер сегмента в байтах;
- БА - базовый адрес сегмента;
- * - зарезервировано.
Физический адрес ФА формируется, как сумма 28-разрядной базы, которая хранится в дескрипторе (рисунок 16), и 20-разрядного эффективного адреса.
Формирование физического адреса в защищенном режиме на основе таблицы дескрипторов ТД с использованием теневых регистров для хранения дескрипторов активных сегментов показано на рисунке 16.
При формировании ФА адрес базы сегмента выбирается из теневого регистра.
При загрузке нового селектора в сегментный регистр, происходит поиск дескриптора по индексу в глобальной таблице дескрипторов.
Затем происходит проверка найденного дескриптора по доступу и размеру, и если доступ разрешен, дескриптор загружается в соответствующий теневой регистр.
В зависимости от обрабатываемых команд адрес программ и данных в памяти определяется путём сложения смещения в требуемом сегменте с соответствующим базовым адресом сегмента из теневых регистров.
Рисунок 16 - Схема преобразования ЛА в ФА:
Предварительный расчет быстродействия.
По техническому заданию быстродействие разрабатываемого процессора должно составлять 6 млн. оп./с. Следовательно время Т выполнения одной команды не должно превышать:
Т ? 1/(6*106) > Т ? 166,7 нс
Для предварительной оценки быстродействия процессора можно воспользоваться формулой:
Tн = в *Tyy + б *Tзу + г *Tалу
Где в - среднее количество тактов УУ необходимое для выполнения команды без учета количества тактов на выборку из памяти самой команды и операнда задержки на АЛУ при вычислении операции и помещение результата в память;
Туу - длительность основного такта процессора (в УУ);
б - среднее количество обращений к ЗУ при выполнении команды;
Тзу - время выборки из ЗУ;
г - среднее количество тактов, необходимых на выполнение команды в АЛУ;
Талу - длительность одного такта работы АЛУ
Для того, чтобы было проще и точнее посчитать время, затрачиваемое ПР на выполнение одной команды, разделим весь цикл выполнения команды на логически завершенные стадии:
1) Выборка команды;
2) Дешифрация КОП;
3) Вычисление ЭА и ФА;
4) Выборка операндов;
5) Выполнение операции на операционном устройстве(ОУ);
6) Запись результата;
Выполнение каждого этапа не возможно без работы УУ, тогда получаем в = 6.
В таблице 19 представлены способы адресации и вероятности, с которыми они будут выполняться. Также в таблице 19 показано, осуществляет ли способ обращение к памяти.
Таблица 19 - Вероятности появления различных видов адресаций:
№ |
Способ адресации |
Вероятность (%) |
Обращение к памяти |
|
1 |
Непосредственная |
5 |
- |
|
2 |
Регистровая |
40 |
- |
|
3 |
Косвенная регистровая |
20 |
+ |
|
4 |
Базово-индексная автоинкрементная |
15 |
+ |
|
5 |
Базово-индексная автодекрементная |
15 |
+ |
|
6 |
Индексная |
5 |
+ |
|
7 |
Базово-регистровая |
5 |
+ |
|
8 |
Прямая |
10 |
+ |
При выполнении команды обращение к памяти происходит на этапах выборки команды, выборки операндов в зависимости от вида адресации, записи результата также в зависимости от вида адресации. В таблице 19 представлено, в каких видах адресации происходит обращение к памяти и вероятность их появления. В зависимости от этого рассчитываем среднее количество обращений к памяти при выполнении команд:
=1+0,2+0,15+0,15+0,05+0,05+0,1=1,7
В таблице 20 представлены типы команд с приблизительными вероятностями появления в ходе работы ПР, а также среднее количество тактов, требуемое на выполнение команды соответствующего типа.
Короткие операции (30%) выполняются за два такта, а длинные (15%) (например, умножение и деление) примерно за 6. Логические (20%) операции также выполняются за один такт работы АЛУ.
Таблица 20 - Вероятности появления различных типов команд:
Тип команд |
Вероятность |
Ср. кол-во тактов |
|
Арифметические короткие |
30 |
2 |
|
Арифметические длинные |
15 |
6 |
|
Логические |
20 |
1 |
|
Пересылки |
15 |
1 |
|
Передачи управления |
8 |
2 |
|
Остальные |
2 |
1 |
Рассчитываем среднее количество тактов работы АЛУ:
г=0,3*2+0,15*6+0,2*1+0,15*1+0,08*2+0,02*1= 2,03
Примем время работы устройства управления:
Туу=120 нс,
АЛУ - Талу=100 нс
ОП - Тзу=150 нс
По заданию и произведём расчёт времени выполнения одной команды:
Тн = 6*120+1,7*150+2,03*100 = 720+255+203 = 1178 нс > 166,7 нс
Полученное значение превышает допустимую норму, поэтому вводим элементы, ускоряющие работу процессора.
Вводим очередь команд (ОК), что позволит нам ускорить выборку команд. Среднее обращение к памяти с ОК будет составлять =0,7. ОК обладает собственным устройством управления, поэтому из цикла выполнения команды исключается этап выборки команды и в будет равно пяти. Таким образом, при такой структуре общее время:
Тн = 5*120+0,7*150+2,03*100 = 600+105+203 = 908 нс > 166,7 нс
Заданное быстродействие все еще не достигнуто, поэтому вводим КЭШ данных, что позволит уменьшить время задержки на ОП.
Примем вероятность попадания в КЭШ - 95%, а время доступа Ткэш =70 нс.
Рассчитываем время выполнения одной команды:
Тн=5*120+0,7*(0,95*70+0,05*150)+2,03*100=720+51,8+203=854,8нс>166,7 нс
Таким образом, можно сделать вывод о том, что классическая линейная структура работы процессора не удовлетворяет требованиям по быстродействию. В связи с этим было принято решение организации конвейера. Выбор количества ступеней конвейера обуславливается тем, во сколько раз следует ускорить линейный алгоритм работы.
Большое количество ступеней конвейера позволяет сократить время выполнения одной операции, но усложняет управление.
С учётом приведённых выше значений можно сделать вывод, что наиболее подходящим является вариант с 6 ступенями.
Время выполнения одной команды при этом будет примерно равно Тн = 854,8/6 = 142,47 нс. С учетом примерной погрешности 15% быстродействие составит 6,09 млн. операций в секунду, что удовлетворяет ТЗ.
Подробнее разработка ступеней будет рассмотрена ниже.
Таким образом, структурная схема ПР включает следующие устройства:
- операционное устройство (ОУ);
- шесть устройств управления работой ступеней(УУ1, УУ2, УУ3, УУ4, УУ5, УУ6);
- оперативное запоминающее устройство (ОЗУ);
- аппаратуру прерываний (АП);
- очередь команд (ОК);
- блоки формирования эффективного и физического адресов (БФЭА и БФФА);
- кэш-данных (КЭШД);
- буферные регистры для передачи данных между ступенями;
- математический сопроцессор (СоПР) для обработки данных с ПЗ;
- арбитр шины.
Разработка ступеней конвейера:
Для достижения заданного быстродействия командный цикл процессора был разделён на шесть ступеней, работающих параллельно. К аппаратуре первой ступени можно отнести:
- управляющее устройство первой ступени (УУ1), осуществляющее роль связующего звена между остальными блоками и выполняющего все действия в зависимости от содержимого регистра команд;
- очередь команд (ОК), позволяющая благодаря предвыборке команд из оперативной памяти и своей организации выбирать команды и содержащийся в команде операнд за один такт;
- набор регистров для хранения промежуточных данных;
Вторая ступень состоит из:
- управляющего устройства второй ступени (УУ2), этот блок осуществляет дешифрацию команд.
- блок дешифрации команд (БДК), осуществляет дешифрацию команд, признаков адресации и определяет другие параметры.
- набора регистров для хранения промежуточных данных.
Третья ступень состоит из:
- управляющего устройства второй ступени (УУ3), этот блок осуществляет формирование физического адреса.
- блок формирования физического адреса (БФФА), организующий вычисление эффективного адреса, а затем физического по исполнительному и защиту памяти;
- набора регистров для хранения промежуточных данных.
К четвертой ступени относятся:
- устройство управления третьей ступенью (УУ4), осуществляет выборку данных из кэш памяти;
- набор регистров для хранения промежуточных данных.
Пятая ступень состоит из:
- управляющего устройства четвёртой ступени (УУ5), этот блок осуществляет непосредственное выполнение команд, а также запись в РОН;
- операционное устройство (ОУ), осуществляет работу под управлением УУ3(работа с регистрами) и УУ5 (выполнение команды).
На шестой ступени осуществляется запись результата в кэш-память.
Недостатком конвейера является возникновение ситуаций ведущих к формированию неправильного адреса или неправильного операнда.
На примере это выглядит следующим образом:
- subax, 7
- mov [аx], 8
При обработке такой последовательности команд непосредственный операнд будет записан по неверному адресу, а точнее по адресу, который хранился до команды 1 в bx. Это происходит по из-за того, то в то время как на второй ступени формируется с использованием регистра bx исполнительный адрес команды 2, команда 1 в это время находится на третьей ступени, а присвоение регистру bx нового значения будет выполнено только на четвертой.
Для предотвращения таких ошибок необходимо создать транслятор исходного кода, который производит проверку команд на зависимость по данным или управлению и по возможности переставляет команды. Если же перестановка команд не возможна, то в исходный код вставляется команда NOP. Это не приведет к заметному снижению быстродействия, т.к. время прохождения команды NOP по конвейеру - 1 такт. Введение дополнительной аппаратуры, позволяющей определять такие ситуации, приведет к тем же простоям конвейера. Поэтому было решено возложить все функции по устранению зависимостей на транслятор.
При нарушении работы конвейера (команды передачи управления) команда на четвертой ступени выполняется до конца, а первые три ступени сбрасываются и начинают выборку и обработку новой команды.
Разработка операционного устройства:
Операционное устройство (ОУ) процессора предназначено для выполнения простых арифметических, логических операций, операций сдвига и сложных операций, таких как умножение и деление, на основе простых. ОУ выполняет действия с операндами, имеющими разрядность 8, 16, 32 или 64 бита.
В своем составе ОУ должно иметь два входных 64-разрядных регистра для операндов, устройство для выполнения требуемых операций и выходной 64-разрядный регистр для результата, а также внутренне УУ для выполнения длинных операций.
Основным элементом операционного устройства процессора являются микропроцессорные (МПС) секции типа КР1804ВС2 в количестве восьми микросхем.
ОУ процессора строится по типовой схеме включения. Для ускорения переноса между МПС вводятся схемы ускоренного переноса из микропроцессорного комплекта 1804 (КР1804ВР1 - 3 микросхемы). Для организации арифметических и логических сдвигов используется схема замыкания данных КР1804ВР2.
Так как вышеназванные секции обладают набором внутренних регистров, эти регистры будут использованы как вспомогательные при выполнении некоторых операций, то есть как программно недоступные (ПН) регистры.
Операнды подаются в ОУ с буферных регистров RgB0 и RgB1, входами для которых могут быть РОН, КЭШД, а также буферный регистр RgB2, хранящий непосредственный операнд. Кроме того, при выполнении операций умножения и деления ОУ использует данные, записываемые в его РЗУ. Пересылка данных в ОУ и непосредственно его работа осуществляется на пятой ступени конвейера. Результат выполнения операции помещается в выходном регистре RgDO, откуда затем может быть передан на МД1. Выходы генерируемых МПС ВР2 флагов поступают на входы регистра флагов процессора. Задержка на ОУ не должна превышать 100 нс.
Разработка структуры ОЗУ: По ТЗ объем ОЗУ равен 256 Мбайт, время доступа 150 нс. Для ускорения работы применен метод расслоения обращений. Устройство строится из 4-х модулей, ширина выборки из каждого модуля - 64 бита. Внутри каждый модуль организован из четырех модулей с шириной строки по 8 бит (используется для записи 8-битных операндов). Таким образом ширина выборки 256 бит или 32 байт. Объем каждого модуля ОП 64 Мбайт. Для всех модулей в ОЗУ имеется один общий 28-разрядный регистр адреса. Младший нулевой и первый разряды определяют номер 8-разрядного модуля внутри 64-разрядного. Следующие 2 разряда (2 и 3) определяют номер модуля внутри ОЗУ. Остальные 24 разрядов ФА определяют номер строки в модуле.
Работа с ОЗУ производится в следующих направлениях:
- заполнение очереди команд (256 бит);
- заполнение КЭШД (256 бит);
- запись в ОЗУ 8-и разрядных слов;
- запись в ОЗУ 16-х разрядных слов;
- запись в ОЗУ 32-х разрядных слов;
- запись в ОЗУ 64-х разрядных слов.
В первом случае должна быть организована передача всей строки из ОЗУ в ОК.
При заполнений КЭШД передача данных осуществляется так же по 256 бит. Следует отметить, что, так как в КЭШД будет использоваться сквозная запись, в памяти должен быть предусмотрен буфер для записи данных в то время, когда к памяти не обращается ни одно из устройств.
Разработка КЭШ данных:
Время доступа к ОЗУ по техническому заданию составляет 150 нс. При заданном быстродействии работы процессора 6 млн. оп/сек это составляет практически все время, отведённое на команду, что не допустимо и прежде всего говорит о необходимости введения кэш-памяти.
Кэш-память вместе с ОЗУ образуют иерархическую структуру доступа к данным и ее действие эквивалентно быстрому доступу к ОЗУ. Рекомендуемый объем кэш-памяти 1/1000 от объема ОЗУ, что составит 256 Кбайт. Кэш-память строится из четырех модулей на основе частично-ассоциативного распределения (ЧАР). Достоинствами данного метода распределения являются:
- сокращение числа промахов по сравнению с методом прямого распределения,
- высокое быстродействие - чтение за один такт, запись за два такта,
- также незначительные аппаратурные затраты (использование БИС памяти с произвольным доступом статического типа).
Модули образуют группу строк. Для выбора группы строк используется метод прямого распределения, а для выбора строки в группе - метод полностью ассоциативного распределения. Емкость строки - восемь 64-разрядных слов.
Таким образом, получаем четыре модуля емкостью 64 Кбайт по 128 строк. При ЧАР адрес разбивается на три части: старшая часть - тег - для сравнения с тегами из группы строк и выбора одной строки, средняя часть - индекс - для выбора группы строк и младшая часть - номер слова в строке. Таким образом, по индексу выбирается множество строк (группа), а по тегу - конкретная строка из этого множества. Ещё одно поле вводится для того, чтобы обратиться в соответствии с заданными форматами к 8, 16, 32 или полностью к 64 разрядам в 64-разрядном слове.
Обращение к массиву тегов и СОЗУ данных кэш-памяти происходит параллельно, поэтому, если требуемая строка присутствует в кэш-памяти, данные сразу же выдаются на МД.
Стратегия обновления ОЗУ - сквозная (прямая) запись с распределением WTWA. При такой стратегии, если адрес не принадлежит тегу (кэш-памяти), то и при чтении, и при записи нет необходимости удалять строку из кэш-памяти в ОЗУ, а сразу реализуется процедура замещения кэш-памяти по выбранной стратегии. Из ОП считывается строка и записывается в кэш-память на место строки, назначенной кандидатом на удаление, в память тегов записывается новый тег считанной строки. Таким образом, данный метод даёт выигрыш в быстродействии, так как не требуется выполнять процедуру удаления строки из кэш-памяти в ОЗУ (её копия всегда хранится там). Кроме того, выполнение командного цикла продолжается сразу после записи данных в кэш-память, не дожидаясь окончания цикла записи в ОП.
В качестве метода замещения кэш-памяти выбран метод, учитывающий активность строк - стратегия псевдо-LRU стека. Данный метод учитывает активность строк, использование кэш-памяти является наиболее эффективным в данном случае. Количество модулей кэш-памяти равняется четырем, поэтому реализация псевдо LRU-стека на основе автомата с жесткой логикой не обладает излишними аппаратурными затратами. При этом методе из кэш-памяти удаляется строка, которая дольше всех не использовалась, то есть при каждом обращении к строке ее номер заносится в стек, в результате удалению подлежит строка из наиболее глубокой позиции стека.
Если АTeg (кэш-памяти), то по одной из выбранных стратегий замещения определяется строка, подлежащая удалению из кэш-памяти в ОП, и выполняется процедура удаления (перезаписи) выбранной строки в ОП как при чтении, так и при записи, а затем реализуется процедура замещения кэш-памяти, т.е. из ОП считывается запрашиваемая строка и записывается в СОЗУ данных на место удаленной строки, а в память тегов - новый тег считанной строки. Затем требуемое слово записывается или считывается из кэш-памяти, т.к. теперь АTeg.
При конвейерном выполнении команд одновременно может потребоваться доступ к кэш-памяти со стороны нескольких ступеней, т.е. можно говорить о введении двухпортовой кэш-памяти. При этом аппаратурные затраты увеличиваются приблизительно вдвое, т.к. требуется введение двухпортовых памяти тегов, памяти LRUи бит достоверности, СОЗУ данных, а также дублирование основных узлов (схем сравнения, регистров тегов, и др.). Но, как сказано выше, чтение и запись выполняются за 1 такт, в то время как время выполнения команды на других стадиях составляет 2 и более такта. Следует также отметить, что вероятность такой ситуации составляет 30-40 %. Поэтому простои, связанные с конфликтом по доступу к кэш-памяти, не скажутся на ухудшении характеристики быстродействия. Более подробно это будет рассмотрено в следующем разделе. Поэтому введение двухпортовой кэш-памяти является необоснованным и в данном процессоре используется однопортовая кэш-память.
Рисунок:
Разработка очереди команд:
На первой ступени, на которой производится выборка команды, вводится очередь команд (ОК) для увеличения быстродействия.
ОК представляет собой буфер FIFO, в который выбираются команды из памяти перед выполнением. Для безостановочной работы ОК необходим объём в 2 раза превышающий ширину выборки, поэтому ОК состоит из 16 16-разрядных слов или 512 бит. Функциональная схема ОК приведена на рисунке. На схеме: CTWR - счётчик записи, указывает на первое свободное слово; CTRD - счётчик чтения, указывает на следующую команду; CT в паре с DC2- счётчик выбора внутреннего 16-и разрядного регистра (RG0-RG15); DC1 - 4-х входовой дешифратор, работает в паре со счётчиком CTWR и выбирает слово, в которое будет записываться следующее данное из пакета; БФИ - блок формирования импульсов, формирует последовательно в течение такта три сигнала инкрементирования счетчика СТ и записи в выходные регистры. ОК содержит 16 шестнадцатиразрядных регистров, разбитых на пары по 4 байта. Для разных целей можно выбрать ...
Подобные документы
Разработка структурной схемы процессора; синтез микропрограммного и управляющего автомата с жесткой логикой. Функциональная организация процессора: программные модели, форматы данных и команд. Организация оперативной памяти. Проектирование блока операций.
учебное пособие [1,1 M], добавлен 09.04.2013Описание архитектуры внешних выводов кристалла процессора. Рассмотрение форматов данных для целых чисел со знаком и без знака. Выбор модели памяти и структуры регистровой памяти. Использование кэш прямого отображения. Арифметические и логические команды.
курсовая работа [890,5 K], добавлен 05.06.2015Рассмотрение принципа работы процессора и его практической реализации с использованием языка описания аппаратуры Verilog. Проектирование системы команд процессора. Выбор размера массива постоянной памяти. Подключение счетчика инструкций и файла регистра.
курсовая работа [1,2 M], добавлен 26.05.2022Принцип работы процессора, способы его охлаждения, кодовые названия. Шины процессора, разрядность и кэш–память. Технологии расширения и поток команд процессора. Процессорные вентиляторы и их характеристика. Алгоритм и способы разгона процессора.
реферат [38,0 K], добавлен 21.02.2009Функциональная и структурная организация ЭВМ. Разработка функциональных микропрограмм заданных команд. Их объединение и привязка к структуре операционного автомата процессора. Разработка управляющего автомата процессора с программируемой логикой.
дипломная работа [4,0 M], добавлен 25.03.2012Принцип работы процессора (одномагистральная структура). Временные диаграммы, описывающие выполнение микроопераций для каждой команды. Структурная схема управляющего автомата на основе памяти с одним полем адреса. Описание процессора на языке Active VHDL.
курсовая работа [621,0 K], добавлен 24.09.2010Разработка структурной схемы вычислительного устройства, выбор системы команд и определение форматов. Разработка алгоритма командного цикла, выполнения арифметических и логических операций. Проектирование операционного автомата, устройств управления.
курсовая работа [2,8 M], добавлен 15.05.2014Синтез структуры простого магистрального процессора с одним АЛУ, выполняющего 8 заданных команд. Разработка формата и кодировки команд, структурной схемы процессора, функциональные схемы всех его блоков в целом с указанием шин и управляющих сигналов.
реферат [123,9 K], добавлен 18.05.2009Разработка устройства, реализующего набор команд из числа операций с плавающей точкой семейства процессора i486. Структура сопроцессора FPU. Принцип выполнения операций, разработка блок-схемы, построение структурной схемы основных блоков процессора.
курсовая работа [734,9 K], добавлен 27.10.2010Строка Меню текстового процессора и панель инструментов Форматирование текстового процессора MS Word, назначение основных команд и кнопок. Технология формирования (расчета) ведомости выдачи заработной платы средствами табличного процессора MS Excel.
контрольная работа [15,1 K], добавлен 09.05.2010Последовательность загрузки значений регистров базовых адресов и регистров прав доступа для системного режима. Методы и средства защиты памяти, преобразования логического адреса в физический, реализованных в УУП процессора. Режим работы процессора.
лабораторная работа [1,5 M], добавлен 23.07.2012Изучение базовых команд ПК на базе МП i286 и их форматов. Изучение прямых способов адресации данных. Наработка практических навыков работы с командами. Разработка регистровой модели выполнения операций передачи данных. Программа реализации команд.
контрольная работа [42,2 K], добавлен 12.03.2011Функциональная организация процессора. Сложение с нормализацией, синтез операций, выборка команды. Описание структурной схемы процессора. Синтез управляющего автомата, разметка граф схемы. Разбиение микроопераций по полям и кодирование логических условий.
курсовая работа [91,8 K], добавлен 24.09.2010Типы системной памяти. ОЗУ (оперативное запоминающее устройство), ПЗУ (постоянное запоминающее устройство), "энергонезависимая память" (CMOS). Процессор. Основные шины. Адресные данные. Совокупность всех возможных команд - система команд процессора.
контрольная работа [24,3 K], добавлен 30.03.2009Структура процессора Pentium, суперскалярность, основные особенности архитектуры. Организация конвейера команд, правила объединения. Дополнительные режимы работы процессора. Источники аппаратных прерываний. Формат ММХ команды. Процессор Pentium 4, схемы.
лекция [4,0 M], добавлен 14.12.2013Функциональная схема микропроцессора Intel 8086 (i8086). Формирование физического адреса памяти, выборка команд из памяти и запись их в очередь команд. Система команд процессора. Суть защищенного режима, переход из защищенного режима в реальный режим.
практическая работа [93,3 K], добавлен 24.03.2013Разработка модели процессора, выполняющего набор машинных команд. Структурная схема процессора (операционного и управляющего автоматов), анализ принципа работы. Содержательный алгоритм микропрограммы, синтез управляющего автомата на основе жесткой логики.
курсовая работа [871,9 K], добавлен 16.09.2010Распараллеливание операций, кэширование памяти и расширение системы команд как способы совершенствования архитектуры и роста производительности компьютеров. Внутренняя структура конвейера центрального процессора Pentium i486. Корпус и колодки ЦП Intel.
презентация [281,2 K], добавлен 27.08.2013Рост производительности и снижение потребляемой мощности процессора. Упрощенная-схема процессора BF535. Поддержка моделей памяти. Стандарты коммуникационных протоколов. Системные регистры процессора. Регистровый файл данных. Шины связи регистрового файла.
презентация [6,3 M], добавлен 14.12.2013Управление взаимодействием всех устройств ЭВМ. История создания и развития производства процессора. Структура центрального процессора. Регистры общего назначения. Обозначения популярных моделей процессоров Intel и AMD. Команды центрального процессора.
реферат [111,2 K], добавлен 25.02.2015