Требования к кодам команд и способы кодирования микрокоманд
Код команды должен соотв требованиям:
1)Указывать на код операции
2)Указывать на адрес(адреса) одного(неск) операндов участв в выполнении команды.
3)Указывать на адрес,куда помещается результат выполнения
4)Указывать на ардрес след команды
Способы:
1)Горизонтальное кодирование.При гориз кодир каждому упр возд yi выдел-ся свой разряд в Рг.МК.
y1 | y2 | … | . | yn |
+: высокое быстродейтсв(в любо мом времени можно выполн любой у или несколько)
- : высокие аппаратные затраты
2)Вертикальное кодирование.
в Рг.МК. запис двоичн код или номер yi ктр необх выполн.
-: одно упр возд yi в ед времени
+:низкие аппаратные затраты.
3)Вертикально-гориз микропрограмм-е.
Вся совокупность упр возд yi делится на К подгрупп наиболее часто выполняемык одновременно yi.
К
y1…………yn |
К – двоичный код N подпр. (задается верт) a yi в подгр – горизонт
4)Горизонтально-верикальное микропрогр
Всё множ-во упр возд yi разбив-ся на К подгр по принципу несовместных команд или встр очень редко.
N групп-гориз
yi – вертикально
Высокое быстр и высокие аппаратные затраты.
Организация ЭВМ типа IBM PC (AT)
L-шина обладает пониженным напряж питания(напр пит ЦП)
S-шина нормальная магистраль 5В. Первое поколение- ISA шины следующее PCI. Как вариант PCI была шина VESA.
М-шина (шина подкл памяти)
Х-шина обращения к ВУ.
ША/2-потому что динамич память (адр строки, адр столбца)
Базовый магистральный кристалл VL82C100- контроллер ВУ (84 конт, 2 контр ПДП 82237, 2 контр прерываний, таймер)
VL82C101-сист контр(генератор тактовык импульсов 8224, сист контр 88238,СППЗ 80287) с пониженным питанмем.
VL82C102-контроллер ДОЗУ
Протокол обмена по системной шине ISA (такой же как у про-цессора 1810ВМ86) каждый обмен выполн за 4 такта. 1 такт состояния 2 такт-командный.
Любая ЭВМ содержит: ЦП, ГТИ, модули ПЗУ, модули ОЗУ, таймер, контролер прерыв(м/б и ПДП), устр упр вв/выв (ППИ), устр последов вв/выв.
Если все эти устр-ва установить на одном кристалле то получится однокристальная ЭВМ (транспьютер).
Процессор Pentium
С начала 486 проц а затем и проц ряда Pentuim стали использовать эл-ты RISC арх-ры (глубокий конвейер, все команды выполняются за опр промеж времени). С переходом на Pentium для обеспечения min выполнения команд арифметики с палвающ (,) потребовалось сильно переделать СПЗ(сопроцессор) первые партии Pentuim были с ошибкой в СПЗ.
ША-32 ШД-64(внешн) ШД-32(внутр)
БФА –блок формирования адреса
СППЗ – сопроцессор с плавающей запятой
Процессор имеет суперскалярную архитектуру (закладывается параллелизм) и при тактовой частоте 66MHz процессор обепечивал производ-ть до 100млн опер/с. Внутр структура проц Гарвардская (раздельная память команд и память данных). Внешняя структура фон-Неймановская. Обращение в внешней памяти идет блоками по 4 64-разр слова для заполнения 256 разр КЭШ. Процессор имеет 2 || работающих 5-ти ступенчатых конвейера U и V. Конв U полноразмерный и на нем может выполн любая ариф и лог команда. U имеет 64-разр сдвигатель. Конв V упрощенный, предназ начен для выполнения простых команд типа сдвига,лог опер (легких). Команда из КЭШ дешефрируется (ДШК) и УУ рег-ми и микрокомандами выбирает аппаратные ресурсы необход-е для выполн данной команды, при этом команды анализирются на возможность их одновременного выполнения в U и V конв. Схема формир адр следит за тем чтобы последовательность выполнения команд не нарушалась.
В проц-ре впервые исполз схема предсказания переходов (блок ветвл переходов).В БВ хранится до 256 адресов последних переходов. Вероятность предсказания ≈10%. Принцип: если переход состоялся то в след цикле наиболее вероятно , что этот переход повторится. Это позволяет не ломать “логику” конвейера.
БФА обеспечивает формир адреса при работе с внешними модулями памяти и ВУ. Адр простр памяти и ВУ раздельное.
Проц имеет возмодность работать с КЭШ 2-го уровня который нах-ся на матер плате (в процессоре встр контроллер КЭШ памяти и встроенный контроллер Вирт памяти.)
Pentium II (Pentium Pro)
УРК- устр распред команд.
Процессор имеет суперскалярную архитектуру и на кристалле располагается двухуровневая КЭШ. 16кб КЭШ команд и 16кб КЭШ данных. КЭШ 2-го ур-ня (общая)(128k-2mb). Одновременно работают до5-ти аппаратных ресурса (5 команд может выполн одновременно). Проц имеет 11-ти ступ конвейер т.е. все команды выполняются за 11 тактов. Команда из КЭШ памяти поступает в ДШК, УРК формирует блоки из кодов команд и операндов ктр загружаются в пул команд, ДШ команд из цикла выбирает те команды которые для которых определены операнды и есть свободные аппаратные ресурсы, команды выполн аппаратными ресурсами и возвращаются обратно в пул команд. Блок отката выбирает из пула команд выполненные ком-ды и восстанавливает последовательность выполнения команд в соотв с программой. Результат отправляется в КЭШ данных 1-го уровня.
Процессор относится к разряду машин управляемых потоком данных. Проц имеет несколько напряж питания : вычислительное ядро запитывается напряж-ем 2,3В, микросхема обвязки (внешний уровень) повышенным, мощность потребл достигает 40Вт. Прой имеет встроенный датчик температуры и встроенный АЦП, а также требует внешней системы охлаждения. Потребляемый ток 15-20 А.
Процессор Pentium IV
Внутренняя архитектура гарвардского типа (раздельная память команд и память данных), наличие КЭШ 2-го уровня на одном кристалле (в PIII для этого использовался отдельный кристалл). Конвейерное выполнение команд(20-ти ступенчатый конвейер). Суперскалярная архитектура (одновременное выполнение нескольких команд на разных аппаратных ресурсах. Спекулятивное (опережающее) выполнение команд (машина управляемая потоком данных)
БЦР- блок целочисленных регистров
FPU- сопроцессор с плавающей запятой
MMX-Multi Media Extraction
Процессор обращается к внешн модулям памяти и с СМ с мах скоростью записывает коды команд и операнды в КЭШ 2-го уровня. Блок трансляции адресов выбирает код следующей команды. Здесь же команда предварительно дешифрир и если это команда усл или безусл перехода вкл блок предсказания ветвления переходов в котором хранится 4к(4096) адресов последних переходов. Есть 2 дополн бита в адресах которые сигнализируют том как часто происх ветвление по данному адресу.
11-почти всегда
10-часто
01-редко
00-практически никогда
Если по адресу обратились то увел на 1, если не угадали то -1.
При обращении по предсказанному адресу код адреса автомати-чески инкрементируется (мах 11 так и остается) Если обращение по адр не произошло происх декрементация. (min 00).
ДШК дешифрирует очередную команду, из управляющей памяти микропрограмм выбир-ся последовательность МК, которая запис в КЭШ м/команд. Блок распр регистров выбирает свободнее регистры(или те которые указаны в командах) которые требуются для выполнения данной команды. Выбранные МК ставятся в очередь МК, в очереди нах-ся до 126 МК это позволяет блоку распредел ресурсов выбирать из очереди МК те МК для которых свободны аппаратные ресурсы(спекулятивная выборка команд). 126 МК позволяют заглянуть вперед на 40 команд ассемблера.
SISD - 1 команда - 1 данные(32р слова)
SIMD – 1 команда –группа данных
64 разр Рг=1х64р/слова=2х32р/слова=
=8хр/слова. В команде до 8 байтовых данных.
В БУР содержится 128-32р регистровю Блок ММХ содержит 8ММХ (0..7) 64 разр регистров для реализации функций SIMD арифметики с фикс запятой.
Блок FPU содержит SI(0..7)-64 разр регистра.
SEE –предназначен для реализации команд SIMD арифм с плавающ запятой SEE(0..7) -128р рег-ров.
Главная задача процессора (РIV) обработка мультимедийный приложений.
Результат выполненный в одном из аппар ресурсов помещ к КЭШ 1-го ур-ня. Последовательность восстановл требуемой цепочки команд осущ двумя блоками формирования адреса (БФА)(Блок отката для РII)
Вид приложения | Повышение производ по сравн с PIII |
1)Обработка целых чисел(Spec Int200) | 23% |
2)Обработка чисел с плавающ запятой (Spec fp2000) | 79% |
3)Кодирование аудио сигналов MP3 Plud 1.3 | 25% |
4)Распознавание речи | 27% |
5)3D игры (Quake III) | 44% |