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

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

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

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

4.24. Цифры в кружочках соответствуют компонентам на рис. 4.23. В микроархитектуре М?с-4 поток байтов заранее вызывается из памяти в автоматическом режиме, декодируется в ??УМ-команды, которые затем с помощью ПЗУ превращаются в последовательность операций и применяются по назначению. Первые три ступени конвейера при желании можно связать с задающим генератором тракта данных, но работа будет происходить не в каждом цикле. Например, блок выборки команд совершенно точно не смо- Повышение производительности 329 жет передавать новый код операции блоку декодирования в каждом цикле, по- скольку выполнение ЦУМ-команды занимает несколько циклов и очередь бы- стро переполнится. Об Ов От О2 Оз О4 От Блок выборки команд Декодер Очередь Операнды Выполнение р Память запись Рис.

4.24. Конвейер М!с-4 В каждом цикле значения регистров М1гк смещаются, и микрооперация, находящаяся в начале очереди, копируется в регистр М1К1. Затем сигналы управления от всех четырех регистров М1К передаются по тракту данных, вызывая определенные действия. Каждый регистр М1К контролирует отдельную часть тракта данных и, следовательно, разные микрошаги. В данной разработке имеется конвейеризированный процессор. Благодаря этому отдельные шаги становятся очень короткими, а тактовая частота — высокой. Многие процессоры проектируются именно таким образом, особенно те, которым приходится выполнять устаревший набор команд (С18С). Например, процессор Репйшп П в некоторых аспектах сходен с микроархитектурой М1с-4, как мы увидим позднее в этой главе.

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

Следовательно, большинство идей, которые мы сейчас будем обсуждать, вероятнее всего уже применяются в производстве. Рассматриваемые усовершенствования можно разделить на две категории, касаю|циеся реализации и архитектуры. Усовершенствования реализации — это такие способы построения новых процессора и памяти, после применения которых система работает быстрее, но архитектура при этом не меняется.

Изменение реализации без изменения архитектуры означает, что устаревшие программы смогут работать на новой машине, а это очень важно для успешной продажи. Чтобы усовершенствовать реализацию, можно, например, использовать более быстрый задающий генератор, но это — не единственный способ. Отметим, что рост производительности от процессора 80386 к процессорам 80486, Репгшш, Репйцш Рго, а затем и к Репгшш П, достигался без изменения архитектуры. Однако некоторые варианты усовершенствований можно реализовать только путем изменения архитектуры. Иногда, например, нужно добавить новые команды 330 Глава 4. Уровень микроархитектуры или регистры, причем таким образом, чтобы устаревшие программы могли работать на новых моделях.

В этом случае для достижения максимальной производительности программное обеспечение приходится переделывать или, по крайней мере, заново компилировать на новом компиляторе. Однако один раз в несколько десятилетий разработчики понимают, что старая архитектура уже никуда не годится и единственный способ развивать технологии дальше — начать все заново. Таким революционным скачком было появление в 80-х годах К15С-архитектуры, а сейчас уже приближается следующий прорыв. Мы рассмотрим соответствующий пример (1псе1 1А-64) в главе 5. Далее в этом разделе мы расскажем о четырех приемах повышения производительности процессора.

Начнем мы с трех хорошо зарекомендовавших себя вариантов усовершенствования реализации, а затем перейдем к варианту, требующему незначительного усовершенствования архитектуры. Указанные приемы касаются кэш-памяти, прогнозирования ветвлений, выгюлнения с изменением очередности и подменой регистров, а также спекулятивного выполнения. Кэш-память Одним из самых важных вопросов при разработке компьютеров была и остается организация системы памяти, поддерживающей передачу операндов процессору с той же скоростью, с которой он их обрабатывает. Стремительное увеличение быстродействия процессора, к сожалению, не сопровождается столь же стремительным повышением скорости работы памяти. Относительно процессора память работает все медленнее и медленнее. Учитывая чрезвычайную важность основной памяти, эта ситуация, которая ухудшается с каждым годом, серьезно тормозит развитие высокопроизводительных систем, заставляя разработчиков искать обходные пути.

Современные процессоры предъявляют определенные требования к системе памяти и в плане времени ожидания (задержки в доставке операнда), и в плане пропускной способности (объему данных, передаваемых в единицу времени). К сожалению, эти два аспекта системы памяти в значительной степени противоречивы. Обычно с повышением пропускной способности увеличивается время ожидания. Например, конвейерные технологии, которые мы использовали в микроархитектуре М1с-З, можно применить и к системе памяти, в этом случае запросы к памяти будут обрабатываться более рационально, с перекрытием. Однако, к сожалению, как и в микроархитектуре М|с-З, это приводит к увеличению времени ожидания отдельных операций памяти, С увеличением скорости работы задающего генератора становится все сложнее поддерживать такую систему памяти, которая могла бы передавать операнды за один или два цикла. Один из вариантов решения проблемы — добавление кэш-памяти.

Как мы отмечали в подразделе «Кэш-память» раздела «Основная память» главы 2, в кэш-памяти хранятся наиболее часто используемые слова, за счет чего повышается скорость доступа к ним. Если достаточно большой процент нужных слов находится в юш-памяти, время ожидания может значительно сократиться. Одной из самых эффективных технологий одновременного увеличения пропускной способности и уменьшения времени ожидания является применение Повышение производительности 331 нескольких блоков кэш-памяти.

Основной прием — введение отдельных кашей для команд и данных (так называемая разделенная кэш-память). Такая кэш-память имеет несколько преимуществ, в частности, операции могут начинаться независимо в каждой кэш-памяти, что удваивает пропускную способность системы памяти. Именно по этой причине в микроархитектуре М(с-1 нам понадобились два отдельных порта памяти: отдельный порт для каждого каша. Отметим, что каждый кэш имеет независимый доступ к основной памяти. В настоящее время многие системы памяти гораздо сложнее этих.

Между разделенной кэш-памятью и основной памятью часто помещается кэш-память второго уровня. Вообще говоря, поскольку требуются более совершенные системы, может быть три и более уровня кэш-памяти. На рис. 4.25 изображена система с тремя уровнями кэш-памяти. Прямо на микросхеме центрального процессора находится небольшой кэш для команд (Е1-1) и небольпюй кэш для данных (11-О) объемом обычно от 16 до 64 Кбайт. Есть еще кэш-память второго уровня (Е2), которая расположена не на самой микросхеме процессора, а рядом с ним в том же блоке.

Кэш-память второго уровня соединяется с процессором через высокоскоростной тракт данных. Эта кэш-память обычно не является разделенной и объединяет данные и команды. Ее размер — от 512 Кбайт до 1 Мбайт. Кзш-память третьего уровня (ЕЗ) находится на той же плате, что и процессор, и обычно состоит из статического ОЗУ в несколько мегабайтов, которое функционирует гораздо быстрее, чем динамическое ОЗУ основной памяти. Как правило, все содержимое кэш-памяти первого уровня находится в кэпг-памяти второго уровня, а все содержимое кэш-памяти второго уровня — в кэш-памяти третьего уровня. Корпус процессо Раэдепенн кэш-памя первого уровня Плата процессо Кэш-память в плате процессора (ствтическое Озу) Рис.

4.26. Система с тремя уровнями кэш-памяти 332 Глава 4. Уровень микроархитектуры Существует два варианта локализации адресов, от которых зависит работа кэш-памяти. Пространственная локализация основана на вероятности того, что в скором времени появится потребность обратиться к ячейкам памяти, расположенным рядом с недавно вызванными ячейками. Исходя из этого наблюдения, в кэш-память переносится больше данных, чем требуется в данный момент.

Временная локализация имеет место, когда недавно вызванные ячейки запрашиваются снова. Это может происходить, например, с ячейками памяти, находящимися рядом с вершиной стека, или с командами внутри цикла. Принцип временнбй локализации используется при выборе элементов, которые следует удалить из кэш-памяти в случае кэш-промаха. Обычно удаляются те элементы, к которым давно не было обращений. Во всех типах кэш-памяти используется следующая модель. Основная память разделяется на блоки фиксированного размера, которые называются строками каша. Строка каша состоит из нескольких последовательных байтов (обычно от 4 до 64). Строки нумеруются, начиная с О, то есть если размер строки составляет 32 байта, то строка 0 — это байты с 0 по 31-й, строка 1 — байты с 32-го по 63-й и т.

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

Пример одноуровневой кэш-памяти прямого отображения показан на рис. 4.26, а. Данная кэш-память содержит 2048 элементов. Каждый элемент (ряд) может вмещать ровно одну сроку из основной памяти. Если размер строки каша составляет 32 байта (как в этом примере), кэш-память может вмещать 64 Кбайт. Каждый элемент кэш-памяти состоит из трех частей: + Бит достоверности указывает, есть достоверные данные в элементе или нет. Когда система загружается, все элементы маркируются как недостоверные. + Поле тега состоит из уникального 16-разрядного значения, указывающего соответствующую строку памяти, из которой поступили данные. + Поле данных содержит копию данных памяти.

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

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

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

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