Главная » Просмотр файлов » Э. Таненбаум - Архитектура компьютера

Э. Таненбаум - Архитектура компьютера (1127755), страница 88

Файл №1127755 Э. Таненбаум - Архитектура компьютера (Э. Таненбаум - Архитектура компьютера) 88 страницаЭ. Таненбаум - Архитектура компьютера (1127755) страница 882019-05-11СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 88)

В любом случае команда уровня 1ЯА процессора Репгптш 4 преобразуется в последовательность микроопераций, подлежаших исполнению К15С-ядром микросхемы. Этот механизм позволяет «навести мосты» между устаревшим набором С1ЯС-команд и современным трактом данных К15С. Декодированные микрооперации отправляются в кэш трасс (Ггасе сасЬе), в роли которого выступает кэш команд первого уровня. Поскольку кэшируются не исходные команды, а декодированные микрооперации, необходимость в повторном декодировании при извлечении команды из каша трасс отпадает.

В этом заключается одно из наиболее существенных расхождений между микроархитектурами ЫетВцгзг и Р6 (в последней команды Репгппа удерживались в каше команд первого уровня). Здесь же выполняется прогнозирование ветвлений. Команды передаются из кэша трасс планировщику команд в порядке, определяемом программой, но при их выполнении возможно отступление от этого порядка. При обнаружении микрооперации, которую нельзя выполнить, планировшик команд удерживает ее, одновременно продолжая обрабатывать поток команд — запускаются все последующие команды, которые не предусматривают обращение к занятым ресурсам (регистрам, функциональным блокам и т.

д.). Здесь же выполняется подмена регистров, благодаря чему ЖАК- и %'АЖ-взаимозависимые команды могут выполняться без задержки. Как уже отмечалось, очередность запуска команд может не соответствовать предусмотренной в программе. В то же время требование архитектуры Рептшш, касающееся точных прерываний, говорит о том, что 15А-команды должны возвращать результаты без отступления от заданной программой последовательности. За реализацию этого требования отвечает блок пересортировки. В верхней правой части рисунка изображен блок исполнения, объединяющий специализированные блоки исполнения, которые непосредственно осуществляют целочисленные операции, операции с плавающей точкой и специализированные команды. Существует несколько блоков исполнения, работающих параллельно.

Данные они получают из регистрового файла и каша данных первого уровня. 354 Глава 4. Уровень микроархитектуры Конвейер МеФВогвФ На рис. 4.32 приводится более подробная схема микроархитектуры 1нетВпгзц в том числе ее конвейер. В верхней части схемы изображен блок предварительной обработки, ответственный за выборку команд из памяти и их подготовку к выполнению. Этот блок получает новые инструкции Репг1пш из каша второго уровня порциями по 64 бит. Они декодируются в микрооперации и помещаются в кэш трасс.

Емкость каша трасс составляет 12 000 микроопераций, и по своей производительности он сопоставим с традиционным кэшем первого уровня на 8 или 16 Кбайт. Блок декодирования Блок предварительн обработки Кзрг трасс'';„,' ВУВ.;трнсс Блок распределения и подмены :.,памяти'.;,'.::. ;Очередь операций и-памяти В память! из памяти Планировщик Планировщик загрузки сохранения Планировщик Планировщик АЛУ АЛУ Загрузка! сохранение Блок ММХ смещения !пт ЯЯЕ 'Кйщгдаиимвг' Блок пересортировки с хао с хх во о о Ео с о с .- *., * ', «:~', " '" ,РеГистр1гВый файл для ' ойесрн Ю.;...НсЗФраа.',щьей; ',.-';::~чвМ, '.

Йоб " ьгкгрвераци",. Рис. 4.32. Упрощенная схема тракта данных Рептющ 4 Примеры уровня микроархитектуры 355 В кэше трасс каждые шесть микроопераций объединяются в группу, занимаю|цую одну строку. Микрооперации из одной строки выполняются без нарушения последовательности, хотя они могут быть образованы из 18А-команд РепВцш, отстоящих друг от друга на тысячи байтов. Для формирования более протяженных последовательностей микроопераций практикуется объединение трассируемых строк. Если для выполнения 18А-команды Репгшш требуется более четырех микро- операций, она не декодируется и не помещается в кэш трасс.

Вместо этого она снабжается специальным маркером, заставляющим систему провести поиск микроопераций в памяти микрокоманд. Таким образом, логика исполнения с изменением последовательности получает микрооперации путем извлечения из каша трасс ранее декодированных 18А-команд или оперативного поиска сложных 18А-команд (например, команды смещения строки) в памяти микрокоманд. Встретившись с командой безусловного перехода, блок декодирования ищет предсказанный обьект перехода в буфере объектов перехода (Вгапсп Тагйег ВцКег, ВТВ) первого уровня и продолжает декодирование с соответствующего адреса.

В каше буфера объектов перехода первого уровня сохраняются 4000 последних переходов. Если необходимая команда перехода отсутствует в таблице, применяется статическое прогнозирование. При этом подразумевается, что обратный переход, во-первых, является частью цикла, во-вторых, не занят. Точность статического прогноза в этом случае очень высока. Прямой переход считается незанятым и входящим в структуру оператора 18 Точность статического прогноза в случае прямых переходов значительно ниже, чем в случае обратных. Для прогнозирования микроопераций перехода применяется буфер трасс объектов перехода, или ВТВ трасс.

Второй компонент конвейера — логика исполнения с изменением последовательности — получает данные из каша трасс емкостью 12 000 микроопераций. При поступлении из блока предварительной обработки каждой последующей микрооперации (а за цикл их поступает три) блок распределения и подмены регистрирует ее в таблице, состоящей из 128 записей и называемой буфером переупорядочивания команд (КеОгдег Вц~ег, КОВ).

В этом буфере хранятся данные о состоянии микрооперации, вплоть до пересортировки ее результатов. Затем блок распределения и подмены проводит проверку на предмет доступности ресурсов, необходимых для выполнения микрооперации. Если ресурсы свободны, микрооперация устанавливается в одну из очередей на выполнение.

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

Этот принцип позволяет поддерживать загрузку всех функциональных блоков на максимально высоком уровне. В каждый отдельно взятый момент могут одновременно обрабатываться до 126 команд, причем 48 из них могут загружаться из памяти, а 24 — сохраняться в памяти. Иногда микрооперации простаивают. Это происходит в тех случаях, когда к одному и тому же регистру для чтения или записи пытаются обратиться несколько микроопераций; соответственно, одной из них это удается, а остальным— 356 Глава 4.

Уровень микроархитектуры нет. Такие конфликты, как мы уже выяснили, называются ЖАК- н ДИЧАЮ-взаимозависимостями. Подмена целевого регистра позволяет записать результаты выполнения микрооперации в один из 120 временных регистров, а значит, выполнить эту микрооперацию немедленно. Если же все временные регистры недоступны или микрооперация попадает в ситуацию ВАЧ~-взаимозависимости (обойти которую нельзя), планировгцик указывает характер возникшей проблемы в виде записи в буфере КОВ. Впоследствии, после освобождения всех необходимых ресурсов, микрооперация устанавливается в одну из очередей на выполнение.

Блок распределения и подмены помешает готовые к выполнению операции в одну из двух очередей. Четыре планировщика ответственны за извлечение микрокоманд нз очередей. Каждый планировщик регламентирует обращения к тем нли иным ресурсам: 1. Планировщик 1 — АЛУ 1 и блок смещения операций с плавающей точкой. 2. Планировщик 2 — АЛУ 2 и блок исполнения операций с плавающей точкой. 3. Планировщик 3 — команды загрузки.

4. Планировщик 4 — команды сохранения. Поскольку планировщики и АЛУ работают на скорости, вдвое превышающей номинальную тактовую частоту, первые два планировщика могут передавать по две микрооперации за цикл. Учитывая то, что два целочисленных АЛУ тоже работают на удвоенной скорости,пропессор Репйшп 4 с тактовой частотой 3 ГГц способен выполнять 12 млрд целочисленных операций в секунду.

В силу столь высокой скорости блок контроля исполнения с изменением последовательности испытывает некоторые трудности с загрузкой АЛУ. Команды загрузки и сохранения проходят через один блок исполнения, работающий на удвоенной частоте, который в течение одного цикла может вызывать по одной команде обоих типов. Таким образом, в лучшем случае (при отсутствии операций с плавающей точкой) за цикл может быть вызвано 6 целочисленных микроопераций. Два целочисленных АЛУ не одинаковы. АЛУ 1 выполняет любые арифметические и логические операции и переходы. АЛУ 2 способно выполнять только команды сложения, вычитания, сдвига и циклического сдвига.

Не идентичны и два блока исполнения операций с плавающей точкой. Первый из них выполняет только сдвиги и ЯБЕ-командьь Второй поддерживает арифметические операции с плаваюгдей точкой, а также ММХ- и БВЕ-командьь АЛУ и блоки исполнения операций с плавающей точкой получают данные от двух регистровых файлов емкостью по 128 записей. Один из этих файлов отводится для целых чисел, другой — для чисел с плавающей точкой. В них содержатся все операнды, необходимые для исполнения команд; кроме того, они играют роль хранилища результатов. В силу подмены регистров восемь из них содержат регистры, доступные на уровне архитектуры команд (ЕАХ, ЕВХ, ЕСХ, ЕПХ и т, д.), однако расположение «реальных» значений в каждом конкретном случае зависит от изменений в отображении, происходящих в ходе выполнения. Кэш данных первого уровня является одним из компонентов высокоскоростной (2х) схемы.

При емкости 8 Кбайт в нем хранятся целые числа, числа с плавающей точкой и другие типы данных. В отличие от каша трасс, эти данные ни- Примеры уровня микроархитектуры 357 коим образом не декодируются. Функция кэша данных сводится к хранению копий байтов, находящихся в памяти. Что касается его характеристик, то кэш данных первого уровня представляет собой 4-входовую ассоциативную кэш-память с емкостью строки 64 байт. Он поддерживает сквозную запись; иными словами, при изменении строки кэша она незамедлительно копируется обратно в кэш второго уровня. В течение никла кэш данных первого уровня обрабатывает по одной операции чтения и записи.

Характеристики

Тип файла
DJVU-файл
Размер
13,7 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6458
Авторов
на СтудИзбе
304
Средний доход
с одного платного файла
Обучение Подробнее