Что делает процессор в компьютере

Содержание

Слайд 2

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander

Yurievich

Outline

Что делает процессор в компьютере?:
● оперативная память(ОЗУ);
● устройства ввода-вывода;
● пространство памяти.

Архитектура и микроархитектура процессора:
● конвейеризация;
● переименование регистров;
● исполнение по предложению;
● продвижение данных;
● предсказание переходов;
● исполнение с изменением последовательности инструкции.

Резюме к лекции и список используемой литературы

Программная модель процессора:
● Введение ;
● Регистры процессора

Слайд 3

Под архитектурой фон Неймана, подразумевают физическое отделение процессорного модуля от устройств

Под архитектурой фон Неймана, подразумевают физическое отделение процессорного модуля от
устройств

хранения программ и данных.

!

Машина фон Неймана

}

Выполняемые действия определяются
блоком управления и АЛУ, которые вместе
являются основой центрального процессора(CPU)

CPU:центральный процессор

Имеет

выбирает и исполняет

команды из памяти последовательно,
а адрес очередной команды задается
«счетчиком адреса» в блока управления.

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

Машина фон Неймана

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander Yurievich

Слайд 4

Оперативная память(ОЗУ) Оперативная память – самый большой массив ячеек памяти со

Оперативная память(ОЗУ)

Оперативная память – самый большой массив ячеек памяти
со смежными

адресами – реализуется, как правило, на модулях(микросхемах) динамической памяти.

Для повышения производительности обмена данными(включая и считывание команд)
оперативная память кэшируется сверхоперативной памятью(CACHE)

Cache I,II территориально располагаются в микропроцессоре

Оперативная память вместе с кэшем всех уровней представляет собой единый массив памяти, непосредственно
доступный процессору для R/W data + R program code

ОЗУ

ПЗУ

Единое пространство с линейной адресацией

Дополняется

Устройствами хранения данных

Что делает процессор в компьютере?

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander Yurievich

Слайд 5

Устройства ввода-вывода Служат для преобразования информации из внутреннего представления в компьютере(биты

Устройства ввода-вывода

Служат для преобразования информации из внутреннего представления в компьютере(биты и байты)

в форму, доступную для окружению, и обратно.

Input/output devices

Периферия

Что делает процессор в компьютере?

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander Yurievich

Слайд 6

Пространства памяти и ввода-вывода неравнозначны не только по объёму, но и

Пространства памяти и ввода-вывода неравнозначны не только по объёму,
но и по

способам обращения

!

Способы адресации

ПАМЯТИ

I/O

>9

2

Виртуальная адресация:
Иллюзия создания ROM
гигантского размера (если ОС поддерживает)

создается

С помощью устройств хранения и paging

Реальная адресация к памяти – в этом случае физический
адрес совпадает с логическим.

К портам I/O обращаются
только по реальным
адресам, а виртуализация
возможна только
программными средствами

Логический адрес текущей выполняемой инструкции хранится в указателе инструкций(IP),
который соответствует счетчику команд фон-неймановской машины

Что делает процессор в компьютере?

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander Yurievich

Слайд 7

Архитектура и микроархитектура процессора Архитектура процессора – это его программная модель,

Архитектура и микроархитектура процессора

Архитектура процессора – это его программная модель,
то есть

программно-видимые свойства.

Микроархитектура процессора – это внутренняя реализация этой
программной модели.

Микроархитектура

Конвейеризация (pipelining)

Переименование регистров(register renaming)

Продвижение данных
(data forwarding)

Предсказание переходов
(branch prediction)

Исполнение по предложению (Speculative execution)

Исполнение с изменением последовательности инструкции(out-of-order execution)

Основные понятия об архитектуре процессора

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander Yurievich

Слайд 8

Физический факультет, ЭВУ и системы, 7 семестр,2010 Доцент Моховиков А..Ю. Physics

Физический факультет, ЭВУ и системы, 7 семестр,2010 Доцент Моховиков А..Ю. Physics

Faculty, Electronic Devices & Systems, 7th semester,2010 Dr. Mokhovikov

Конвейеризация (pipelining):
Предполагает разбивку выполнения каждой инструкции на несколько этапов,
причем каждый этап выполняется на своей ступени конвейера процессора

Одновременно может обрабатываться несколько инструкций, и
производительность процессора можно оценивать темпом выхода
инструкций со всех его конвейеров

Для достижения максимальной производительности процессора
Надо обеспечить полную загрузку конвейеров с минимальным числом
лишних штрафных циклов(penalty cycles).

Суперконвейерная архитектура в настоящее время имеет от 20 конвейеров

Переименование регистров (register renaming):
Позволяет обойти архитектурное
ограничение на возможность параллельного
исполнения инструкций
(доступно всего лишь 8 общих регистров)

При записи промежуточных результатов
устанавливается соответствие логических имен
и физических регистров

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

Основные понятия об архитектуре процессора

Слайд 9

Продвижение данных (data forwarding): Подразумевает начало исполнения инструкции до готовности всех

Продвижение данных
(data forwarding):
Подразумевает начало исполнения
инструкции до готовности всех
операндов. При этом

выполняются
Все возможные действия, и декодированная
инструкция с одним операндом помещается
в исполнительное устройство, где дожидается
готовности второго операнда, выходящего с
другого конвейера.

Предсказание переходов
(branch prediction):
Позволяет продолжать выборку и декодирование потока инструкций после выборки инструкций ветвления(условного перехода),не дожидаясь проверки условия.

Основные понятия об архитектуре процессора

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander Yurievich

Слайд 10

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander

Yurievich

Основные понятия об архитектуре процессора

Исполнение с изменением последовательности инструкции(out-of-order execution):
Изменяется порядок внутренних манипуляций данными, а внешние(шинные) операции ввода-вывода и записи в память выполняются в порядке предписанном программным кодом.
1)Свойственно RISC-архитектуре,
2) Блокирует несовершенства разрядностей при совместимости различного программного кода

Исполнение по предложению (Speculative execution):
предсказанные после перехода инструкции не
только декодируются, но и по возможности исполняются до проверки условий перехода.
+ если сбывается – удача; - если нет – конвейер простаивает несколько тактов

Слайд 11

RISC CISC Reduced (restricted) Instruction Set Computer Complete Instruction Set Computer

RISC

CISC

Reduced (restricted) Instruction
Set Computer

Complete Instruction
Set Computer

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

(достаточно
большое количество);
Коды и инструкции имеют четкую
структуру с фиксированной длиной;
Небольшие затраты на декодирование
и исполнение инструкций за минимальное
число тактов синхронизации;
Унификация регистров.

∃{}Δ?

Состав и набор их регистров существенно неоднородны;
Широкий набор команд усложняет декодирование инструкций и, как следствие, расходуются аппаратные средства;
Возрастает число тактов, необходимых для выполнения инструкций.


В процессорах семейства х86,
применяется комбинированная
архитектура – CISC-процессор
имеет RISC-ядро

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander Yurievich

Основные понятия об архитектуре процессора

Слайд 12

NetBurst: до и после Поколение Р6: суперскалярная гиперконвейерность. Боролись за рост

NetBurst: до и после

Поколение Р6: суперскалярная гиперконвейерность.
Боролись за рост тактовой частоты.


NetBurst: отсутствие первичного кэша инструкций, в котором
хранились копии фрагментов ОЗУ и вторичного кэша, содержащие ранее исполненные инструкции и следующие за ними строки.

Cache L1 instructions => Executive Trace Cache (кэш трасс исполнений)

ДО

Трассами называют последовательности микроопераций,
в которые декодированы инструкции.

NetBurst: до и после

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander Yurievich

Слайд 13

Система шина (FSB) Блок интерфейсов шин Вторичный кэш(L2) Блок выборки/ декодирования

Система шина (FSB)

Блок интерфейсов шин

Вторичный кэш(L2)

Блок выборки/
декодирования

Кэш трасс
исполнения

ВТВ и предсказатель переходов

«Беспорядочное»
исполняющее


ядро

Первичный
кэш данных(L1)

Блок
завершения

Блок схема NetBurst

*ВТВ и предсказатель переходов

Толстыми линия изображены наиболее используемые пути

* BTB = Buffer Table Branch

NetBurst: блок-схема

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander Yurievich

Слайд 14

Блок выборки/ декодирования Кэш трасс исполнения Кэш трасс совместно с блоком

Блок выборки/
декодирования

Кэш трасс
исполнения

Кэш трасс совместно с блоком
выборки и декодирования образуют
устройство предварительной

обработки,
выполняющее функции:
● Предварительную выборки инструкций,
которые предполагается исполнить;
● Декодирование инструкции в микрооперации;
● Генерацию кодов для сложных инструкций;
● Доставку декодированных инструкций
из кэша трассы;
● Предсказание переходов, использует
статические и динамические методы

Способен
хранить до
12 К операций

NetBurst

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander Yurievich

Слайд 15

Блок выборки/ декодирования Кэш трасс исполнения Кэш трасс совместно с блоком

Блок выборки/
декодирования

Кэш трасс
исполнения

Кэш трасс совместно с блоком
выборки и декодирования образуют
устройство предварительной

обработки,
выполняющее функции:
Предварительную выборки инструкций,
которые предполагается исполнить;

Целевые адреса ветвлений
предсказываются по своим
линейным адресам

есть

нет

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander Yurievich

NetBurst

Слайд 16

ВТВ и предсказатель переходов Статическое предсказание Условные переходы назад сбудутся (типовой

ВТВ и предсказатель переходов

Статическое предсказание
Условные переходы назад сбудутся
(типовой цикл)
Условные переходы вперед

– нет
Кроме того, данный тип предсказаний
используется тогда, когда линейный
адрес инструкции отсутствует
в буфере BTB

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

+

Branch hints: 3Eh – будет, 2Eh - нет

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander Yurievich

NetBurst

Слайд 17

«Беспорядочное» исполняющее ядро Имеет пиковую пропускную способность, превышающую возможности блока предварительной

«Беспорядочное»
исполняющее
ядро

Имеет пиковую пропускную способность,
превышающую возможности блока предварительной
обработки и блока завершения

По

сравнению с суперскалярной гиперконвейерностью,
стало более
производительным по количеству тактов, требуемых для исполнения
микроинструкций

NetBurst

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander Yurievich

Слайд 18

Процессор может работать в одном из двух режимов и переключаться между

Процессор может работать в одном из двух режимов и переключаться между
ними

достаточно быстро, как в ту, так и в другую сторону:

Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander Yurievich

Программная модель процессора: Введение

Слайд 19

Программная модель процессора: Введение Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander Yurievich

Программная модель процессора: Введение

Physics Faculty, Electronic Computing Devices & Systems, 7th

semester,2011 Dr.Mokhovikov Alexander Yurievich
Слайд 20

Программная модель процессора: Введение Physics Faculty, Electronic Computing Devices & Systems, 7th semester,2011 Dr.Mokhovikov Alexander Yurievich

Программная модель процессора: Введение

Physics Faculty, Electronic Computing Devices & Systems, 7th

semester,2011 Dr.Mokhovikov Alexander Yurievich
Слайд 21

Физический факультет, ЭВУ и системы, 7 семестр,2011 Доцент Моховиков А..Ю. Physics

Физический факультет, ЭВУ и системы, 7 семестр,2011 Доцент Моховиков А..Ю. Physics

Faculty, Electronic Devices & Systems, 7th semester,2010 Dr. Mokhovikov

http://de.ifmo.ru/--books/electron/cpu-cod.htm
http://www.soft-tlt.ru/pocessora46.html
http://www.gaw.ru/html.cgi/txt/doc/micros/arm/arh_7dtmi/interfase_process.htm
http://www.arxitektura-computerov.ru/node/261
http://xpoint.ru/know-how/Articles/FloatingPointNumbers

Используемые Интернет-ресурсы: