Научная литература
booksshare.net -> Добавить материал -> Физика -> Александров Е.К. -> "Микропроцессорные системы" -> 33

Микропроцессорные системы - Александров Е.К.

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 27 28 29 30 31 32 < 33 > 34 35 36 37 38 39 .. 528 >> Следующая

осуществляется обращение к кэш-памяти 2-го уровня или основной памяти (по
системной шине). Данный блок реализует спекулятивную выборку при чтении
операнда.
Для промежуточного хранения данных, записываемых в основную память, в
составе блока МОВ имеется буфер данных записи. Эта буферная память
емкостью 32 байта позволяет задержать запись результата до того момента,
когда системная шина завершит выполнение других циклов обмена, например,
выборки команд или чтения процессором новых операндов. Запись результатов
производится, когда процессор выполняет команды, не требующие обращения к
системной шине. Таким образом обеспечивается дополнительное повышение
производительности системы. Отметим, что буферизация не выполняется при
обращении процессора к устройствам ввода/вывода с помощью команды OUT.
Вывод данных в этом случае реализуется в очередном цикле шинного обмена.
Обмен с основной памятью при использовании кэш-памяти производится с
помощью пакетных циклов обращения, которые позволяют за один цикл
переслать содержимое целой строки кэш-памяти (32 байта). Внешняя 64-
разрядная шина данных позволяет выполнить такую пересылку за 5 тактов
машинного времени: первый такт служит для установки адреса строки, а в
течение следующих четырех тактов идет передача данных. При этом
необходимые сигналы управления обменом устанавливаются только один раз (в
начале цикла), а изменение младших разрядов адреса в тактах передачи
осуществляется автоматически основной памятью.
В процессорах Р6 реализован конвейер команд с 12 ступенями их выполнения.
При прохождении первых семи ступеней (до блока изменения
последовательности ROB) сохраняется исходный порядок следования команд,
на трех исполнительных ступенях последовательность команд может быть
нарушена, две заключительные ступени обеспечивают запись полученных
результатов в память или регистры с восстановлением исходного my
следования. Такое восстановление выполняется буферным блоком МОВ при
СТРУКТУРА И ФУНКЦИОНИРОВАНИЯ ПРОЦЕССОРОВ INTEL Р6
записи результатов в память или блоками изменения последовательности и
распределения команд (ROB и RS) при записи результатов в регистр (блок
RRF).
Последовательная работа конвейера команд нарушается при поступлении
команд условных переходов, так как в случае выполнения условия перехода,
которое проверяется в исполнительном устройстве, потребуется перезагрузка
конвейера - очистка всех предыдущих ступеней и выборка команды из новой
ветви программы. Чтобы сократить или исключить потери времени, связанные
с перезагрузкой длинного 12-ступенчатого конвейера, используется блок
предсказания ветвлений. Его основной частью является ассоциативная
память, называемая буфером адресов ветвлений (ВТВ - Branch Target
Buffer), в которой хранятся 512 адресов ранее выполненных переходов.
Кроме того, ВТВ содержит четыре бита предыстории ветвления, которые
указывают, выполнялся ли переход при четырех предыдущих выборках данной
команды. При поступлении очередной команды условного перехода указанный в
ней адрес сравнивается с содержимым ВТВ. Если этот адрес не содержится в
ВТВ, т. е. ранее не производились переходы по данному адресу, то
предсказывается отсутствие ветвления. В этом случае продолжается выборка
и декодирование команд, следующих за командой перехода. При совпадении
указанного в команде адреса перехода с каким-либо из адресов, хранящихся
в ВТВ, производится анализ предыстории. В процессе анализа определяется
чаще всего реализуемое направление ветвления, а также выявляются
чередующиеся переходы. Если предсказывается выполнение ветвления, то
выбирается и загружается в конвейер команда, размещенная по
предсказанному адресу. Одновременно в блоке выборки - декодирования
сохраняется декодированная следующая команда. Если после анализа условия
ветвления выясняется, что предсказание было неправильным, эта
декодированная команда поступает из УУ в исполнительное устройство,
обеспечивая сокращение потерь времени на перезагрузку конвейера.
Используемый алгоритм предсказания ветвлений ориентирован на достаточно
частое повторение обращения к процедуре, которая обеспечивается
определенной ветвью программы. При этом рекомендуется более часто
используемые процедуры располагать в ветвях, следующих непосредственно за
командой перехода, чтобы сократить время перезагрузки конвейера при
ошибочно предсказанных ветвлениях. По имеющимся оценкам, данный алгоритм
обеспечивает вероятность правильного предсказания ветвлений на уровне
90%.
2.1.2. РЕЖИМЫ РАБОТЫ ПРОЦЕССОРА И ОРГАНИЗАЦИЯ ПАМЯТИ
Процессоры Р6, как и предыдущие модели микропроцессоров Intel
80286,80386,80486, Pentium имеют три основных режима функционирования:
• режим реальных адресов (реальный режим);
• режим защищенных виртуальных адресов (защищенный режим);
• режим системного управления.
В реальном режиме процессор работает как очень быстрый микропроцессор
8086, выполняющий обработку 16-разрядных операндов и адресующий 1 Мбайт
Предыдущая << 1 .. 27 28 29 30 31 32 < 33 > 34 35 36 37 38 39 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed