Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1 Многоуровневая архитектура компьютеров.doc
Скачиваний:
6
Добавлен:
21.09.2019
Размер:
181.25 Кб
Скачать

МИКРОАРХИТЕКТУРНЫЙ УРОВЕНЬ 2

ТРАКТ ДАННЫХ 2

РЕГИСТРЫ ТРАКТА ДАННЫХ 2

УСТРОЙСТВО УПРАВЛЕНИЯ (МИКРОПРОГРАММНОЕ) 3

РЕАЛИЗАЦИЯ УСЛОВНЫХ ПЕРЕХОДОВ 4

АРХИТЕКТУРЫ УСТРОЙСТВ УПРАВЛЕНИЯ (ПРОЦЕССОРОВ) 5

МЕТОДЫ ПОВЫШЕНИЯ ПРОИЗВОДИТЕЛЬНОСТИ 6

ОБЗОР 6

ПАРАЛЛЕЛЬНАЯ ОБРАБОТКА ДАННЫХ 6

КОНВЕЙЕРИЗАЦИЯ 7

ИЗМЕНЕНИЕ ПОСЛЕДОВАТЕЛЬНОСТИ ВЫПОЛНЕНИЯ КОМАНД И ПОДМЕНА РЕГИСТРОВ 7

ПРОБЛЕМА ПЕРЕХОДОВ 8

ПРОГНОЗИРОВАНИЕ ПЕРЕХОДОВ 8

УСЛОВНОЕ ИСПОЛНЕНИЕ 8

АРХИТЕКТУРА КОМАНД 9

ОБЗОР УРОВНЯ АРХИТЕКТУРЫ КОМАНД 9

МЕТОДЫ АДРЕСАЦИИ 9

СПОСОБЫ АДРЕСАЦИИ 9

СТЕКОВАЯ АДРЕСАЦИЯ 9

ТИПЫ КОМАНД 10

ТИПЫ ДАННЫХ 10

СТАНДАРТ IEEE 754 ДЛЯ ВЕЩЕСТВЕННЫХ ЧИСЕЛ 11

ДОПОЛНИТЕЛЬНЫЙ КОД 12

ДРОБНЫЕ ЧИСЛА С ФИКСИРОВАННОЙ ЗАПЯТОЙ 12

КОМПЛЕКСНЫЕ ЧИСЛА 12

МОДЕЛИ ПАМЯТИ 13

УРОВЕНЬ ОПЕРАЦИОННОЙ СИСТЕМЫ 14

ОБЗОР 14

ВИРТУАЛЬНАЯ ПАМЯТЬ 14

ПРОБЛЕМЫ ВИРТУАЛЬНОЙ ПАМЯТИ 14

СТРАНИЧНАЯ ОРГАНИЗАЦИЯ ПАМЯТИ 15

ПРЕРЫВАНИЯ И ИСКЛЮЧЕНИЯ 16

УРОВЕНЬ ЯЗЫКА АССЕМБЛЕРА 17

ОБЗОР 17

ПРИМЕР ПРОГРАММЫ НА ЯЗЫКЕ АССЕМБЛЕР 17

ПРОЦЕСС АССЕМБЛИРОВАНИЯ 17

КОМПОНОВКА МОДУЛЕЙ 18

СВЯЗЬ С БИБЛИОТЕЧНЫМИ ФУНКЦИЯМИ 18

МИКРОАРХИТЕКТУРНЫЙ УРОВЕНЬ

ТРАКТ ДАННЫХ

1 – установка управляющих сигналов

2 – регистры выставляют данные на шины

3 – АЛУ выполняет операцию

4 – сохранение результатов

РЕГИСТРЫ ТРАКТА ДАННЫХ

РгАД – регистр адреса данных

РгАК – регистр адреса команд

РгД – регистр данных

РгК – регистр команд

Дополнительные регистры: флаговый, указатель стека и т.д.

УСТРОЙСТВО УПРАВЛЕНИЯ (МИКРОПРОГРАММНОЕ)

РЕАЛИЗАЦИЯ УСЛОВНЫХ ПЕРЕХОДОВ

АРХИТЕКТУРЫ УСТРОЙСТВ УПРАВЛЕНИЯ (ПРОЦЕССОРОВ)

RISC

CISC

VLIW

Современные x86

МЕТОДЫ ПОВЫШЕНИЯ ПРОИЗВОДИТЕЛЬНОСТИ

ОБЗОР

Технологические

Схемотехнические

Архитектурные

ПАРАЛЛЕЛЬНАЯ ОБРАБОТКА ДАННЫХ

Add Р1, Р2:

1. РN = R1;

3. Р1=RN+Р1;

4. РгАК=РгАК+1;

5. READ РгАК.

Add Р1, Р2:

0. РгАК=РгАК+1;

1. Р1=Р1+Р2, READ РгАК, РгАК=РгАК+1;

Суперскалярные процессоры

КОНВЕЙЕРИЗАЦИЯ

Такты

Add Р1, Р2

Add Р3, Р4

Add Р5, Р6

1

B=Р1, C=Р2

2

A=B+C

B=Р3, C=Р4

3

Р1=A

A=B+C

B=Р5, C=Р6

4

Р3=A

A=B+C

5

Р5=A

Конвейеризованные процессоры

Изменение последовательности выполнения команд и подмена регистров

Изменение последовательности выполнения команд

Программа

Реальный порядок команд

Р1=Р2+Р3

Р1=Р2+Р3

Р4=Р1+Р5

Р6=Р7+Р8

Р6=Р7+Р8

Р4=Р1+Р5

Подмена регистров

Программа

Реальный порядок команд и регистры

Р1=Р2+Р3

Р1=Р2+Р3

Р4=Р1+Р5

Р5’=Р6+Р7

Р5=Р6+Р7

Р4=Р1+Р5

Некая команда

Некая команда, Р5=Р5’

Проблема переходов

Безусловный переход

Стадии конвейера

1

Выборка команды

Код 1

Код 2

Код 3

???

Код X

Декодирование

INC

JMP

Выборка операндов

А

X

Исполнение

A+1

-

Сохранение результатов

!

Условный переход

Стадии конвейера

1

Выборка команды

Код 1

Код 2

Код 3

???

???

Код X

Декодирование

INC

JE

Выборка операндов

А

X

Исполнение

A+1

Сохранение результатов

!

ПРОГНОЗИРОВАНИЕ ПЕРЕХОДОВ

Динамическое прогнозирование

Статическое прогнозирование

Двойное исполнение

УСЛОВНОЕ ИСПОЛНЕНИЕ

АРХИТЕКТУРА КОМАНД

ОБЗОР УРОВНЯ АРХИТЕКТУРЫ КОМАНД

МЕТОДЫ АДРЕСАЦИИ

Трехадресная

ADD R1, R2, R3

R1 = R2 + R3

Двухадресная

ADD R1, R2

R1 = R1 + R2

Одноадресная

ADD R1

A = A+R1

Безадресная

ADD

A = A + B

СПОСОБЫ АДРЕСАЦИИ

Непосредственная

MOV R1, 4

Прямая

MOV R1, [10]

Регистровая

MOV R1, R2

Косвенная регистровая

MOV R1, [R2]

Индексная

MOV R1, 10+[R2]

Относительная индексная

MOV R1, [R2+R3]

СТЕКОВАЯ АДРЕСАЦИЯ

ТИПЫ КОМАНД

Перемещения данных

Бинарные операции

Арифметические

Логические

Унарные операции

Сдвиги

Арифметические и логические

Сравнения и условные переходы

Вызова процедур

Управления циклом

Ввода-вывода

ТИПЫ ДАННЫХ

Числовые

Целые

Дробные

Вещественные

Комплексные

Нечисловые

Символьные (ASCII, UNICODE)

Логические (булевые)

Указатели и массивы

Битовые

СТАНДАРТ IEEE 754 ДЛЯ ВЕЩЕСТВЕННЫХ ЧИСЕЛ

ДОПОЛНИТЕЛЬНЫЙ КОД

510 = 0000 01012

-510 = 1111 10112

ДРОБНЫЕ ЧИСЛА С ФИКСИРОВАННОЙ ЗАПЯТОЙ

510 = 0000 01012

410 = 0000 01002

2010 = 0001 01002

1/410 = 0.010 00002

1/810 = 0.001 00002

1/3210 = 0.000 01002

КОМПЛЕКСНЫЕ ЧИСЛА

Порядок: Real-Imag.

МОДЕЛИ ПАМЯТИ

Байт

Слово

Выровненные данные:

0

1

2

3

0

dword

4

word

8

char

16

dword

Не выровненные данные:

0

1

2

3

0

dword

4

word

char

dword_начало

8

dword_продолжение

16

Порядок байтов:

Число: 0xA1B2C3D4

Порядок от младшего к старшему (little-endian)

0xD4

0xC3

0xB2

0xA1

Порядок от старшего к младшему (big-endian)

0xA1

0xB2

0xC3

0xD4

УРОВЕНЬ ОПЕРАЦИОННОЙ СИСТЕМЫ

ОБЗОР

Виртуальная память

Управление процессами

Драйвера устройств

ВИРТУАЛЬНАЯ ПАМЯТЬ

Проблемы работы с физической памятью:

Виртуальная память предоставляет свое адресное пространство (4Гб для современных процессоров) для каждого процесса.

ПРОБЛЕМЫ ВИРТУАЛЬНОЙ ПАМЯТИ

Загрузка и выгрузка страниц

Проблема фрагментации

Сегментация

СТРАНИЧНАЯ ОРГАНИЗАЦИЯ ПАМЯТИ

ПРЕРЫВАНИЯ И ИСКЛЮЧЕНИЯ

Источники прерываний

Источники исключений

Вектор обработки прерывания

Процедуры обработки прерываний

Использование прерываний для многозадачных систем

УРОВЕНЬ ЯЗЫКА АССЕМБЛЕРА

ОБЗОР

ПРИМЕР ПРОГРАММЫ НА ЯЗЫКЕ АССЕМБЛЕР

Метка

Код операции

Операнды

Комментарии

FORMULA:

MOV

EAX, I

; регистр ЕАХ=1

ADD

EAX, J

; регистр EAX=I+J

MOV

N, EAX

; N=I+J

I

DW

3

; резервируем 4 байта и устанавливаем значение 3

J

DW

4

; резервируем 4 байта и устанавливаем значение 4

N

DW

0

; резервируем 4 байта и устанавливаем значение 0