Реклама:

Чтобы в одном или обоих конвейерах сократить время простоев, вызванных задержками выборки команд при изменении счетчика адреса в результате выполнения в программах команд ветвления, в Pentium применяется буфер адреса ветвления {Branch Target Buffer — ВТВ), в котором используются алгоритмы предсказания множественного ветвления. Если переход по команде ветвления должен произойти в ближайшем будущем, программные инструкции из соответствующей ячейки памяти заранее считаются в ВТВ. Предсказание адреса перехода позволяет обоим конвейерам работать с максимальным быстродействием. Внутренняя архитектура процессора Pentium представлена на рис. 3.39.

Процессор Pentium имеет 32-разрядную шину адреса (такую же, как и процессоры 386DX и 486), что позволяет адресовать память объемом до 4 Гбайт. Но, поскольку разрядность шины данных увеличена до 64, при одинаковой тактовой частоте скорость обмена данными ока-

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

Рис. 3.39. Внутренняя архитектура процессора Pentium

В большинстве системных плат память организована на основе модулей SIMM или DIMM. Модули SIMM бывают 8- и 32-разрядными. В специальных версиях этих модулей применяются коды коррекции ошибок (Error Correction Codes — ЕСС). В компьютерах с процессором Pentium применяются в основном 36-разрядные модули SIMM (32 бит данных и 4 бит четности) — по два модуля на один банк памяти. На системной плате обычно устанавливается четыре гнезда для этих модулей, т.е. для двух банков памяти. В более новых компьютерах с процессором Pentium и Pentium II применяются 64-разрядные модули DIMM.

Несмотря на то что внешняя шина данных 64-разрядная, внутренние регистры Pentium — 32-разрядные. При выполнении команд и обработке данных внутри процессора они предварительно разбиваются на 32-разрядные элементы и обрабатываются почти так же, как в процессоре 486. Иногда говорят, что Intel вводит всех в заблуждение, называя Pentium 64-разрядным процессором. На это можно ответить, что внешний обмен данными все-таки 64-разрядный. Внутренние же регистры Pentium полностью соответствуют регистрам процессора 486.

Процессор Pentium имеет два встроенных кэша объемом по 8 Кбайт, тогда как в 486-м содержится один кэш объемом 8 или 16 Кбайт. Схемы кэш-контроллера и сама кэш-память размещены на кристалле процессора. В кэш-память копируется информация (данные и программные коды) из различных областей системной памяти. Кэш-память процессора Pentium

может также хранить информацию, которая должна быть записана в память, до того момента, пока не снизится нагрузка на процессор и другие компоненты системы. (Процессор 486 выполняет все записи в память сразу.)

Отдельное кэширование кода и данных организовано по двухстраничной схеме; каждая страница разделена на строки по 32 байт. Для каждого кэша предусмотрен специальный ассоциативный буфер преобразования адресов {Translation Lookaside Buffer — TLB), предназначенный для преобразования линейных адресов в физические адреса памяти. Кэш-память может работать как в режиме сквозной записи, так и в двунаправленном режиме, т.е. с построчным опросом. Производительность процессора в двунаправленном режиме оказывается выше, поскольку в кэш-память записываются не только считываемые данные, но и результаты, в отличие от режима сквозной записи (при котором в кэш-память записываются только считываемые данные). В двунаправленном режиме значительно уменьшается количество обменов данными между процессором и системной памятью. В программном кэше предусмотрена защита от записи, поскольку в нем хранятся только программные инструкции, а не меняющиеся по ходу выполнения программ данные. Благодаря использованию укороченных циклов памяти данные в кэш-память (или из нее) могут быть переданы очень быстро.


⇐ Предыдущая страница| |Следующая страница ⇒