Особенности микроархитектуры микропроцессора IBM Power6

Процессор Power6 имеет: максимальная тактовая частота — 4,7 ГГц; количество транзисторов — более 790 млн.; площадь — 341 кв. мм. Процессоры изготавливаются с использованием 65-нанометрового технологического процесса, технологии «кремний на изоляторе» (Silicon on Insulator, SoI) и медных десятиуровневых соединений.

У процессора два суперскалярных ядра с поддержкой «одновременной многопотоковости» (Simultaneous Multithreading, SMT). Каждое ядро включает в себя два арифметических целочисленных устройства, два арифметических устройства с плавающей точкой и одно устройство для десятичной арифметики. Система команд Power6 дополнена 50 новыми командами для выполнения десятичных операций и операций перевода из десятичной системы в двоичную и обратно. Процессор снабжен кэш-памятью второго уровня на 8 Мбайт. Предусмотрена поддержка общей для обоих ядер кэш-памяти третьего уровня емкостью до 32 Мбайт, двух контроллеров памяти, а также двухуровневого коммутатора SMP (Symmetric Multiprocessing). Процессор поддерживает наборы команд AltiVec (операции с плавающей точкой, выполняемые в режиме SIMD) и векторные операции ViVA-2 (Virtual Vector Architecture).

Особо стоит отметить достижения, связанные с уменьшением энергопотребления. При удвоении производительности по сравнению с Power5 за счет того, что частота увеличилась вдвое, а длину конвейера (показатель, определяющий супескалярность) удалось оставить прежней, рассеиваемая мощность осталась прежней. Теперь на те же киловатты можно выполнить либо вдвое больше работы, либо, сохраняя объем работы, вдвое сократить расход энергии. Кроме того, выделение тепла уменьшается возможностями технологии EnergyScale, позволяющей снижать частоту, а в отсутствии нагрузки переходить в режим «дремы» (nap).

Снижение энергетических потерь превратилось в одно из ключевых направлений научно-исследовательских работ IBM, для этого осуществляется комплексная программа, включающая в себя совершенствование не только аппаратного, но и программного обеспечения и сервисов. Частью проекта является программа виртуализации, обеспечивающая выполнение тех же задач на меньшем числе серверов за счет миграции приложений и освобождения неиспользуемых компьютеров. Конструкция процессора Power6 адаптирована к такого рода задачам, у процессора очень высокая пропускная способность каналов, кроме того, он поддерживает функцию Live Partition Mobility, которая реализована в последних редакциях операционной системы IBM AIX.

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

Особенности микроархитектуры микропроцессора IBM Power6 - student2.ru

Рис.18 Структура конвейера Power 6

Но не только ускорение обмена отличает Power6 от Power5: не меньшее значение имеет организация соединений между процессорами в сервере. На рис. 19, а показано, как 32 разъема восьми четырехпроцессорных сборок, так называемых «квадов», обеспечивают структуру, где связанными являются две или три соседних сборки. На рис.19, б представлена структура, которую можно реализовать на процессоре Power6 с использованием двух контроллеров памяти, здесь каждая сборка связана с каждой. Кроме того, существует возможность для создания двухуровневой многопроцессорной архитектуры (рис. 19, в).

Особенности микроархитектуры микропроцессора IBM Power6 - student2.ru

Рис.19 Варианты структур на базе Power 6

ЭВОЛЮЦИЯ ОПЕРАТИВНОЙ ПАМЯТИ

Все процессоры, начиная с i386 большую часть времени тратят не на вычисления, а на операции обмена медленной оперативной памятью (ОП). Все ВС имеют многоуровневую архитектуру памяти: емкую, дешевую, но медленную основную память и сравнительно небольшой объем быстрой, но дорогой КЭШ-памяти. Основная ОП строится на микросхеме DRAM (динамическая память с произвольным доступом).

Физически DRAM представляет собой массив обыкновенных конденсаторов, наличие заряда соответствует логической 1, а отсутствие – 0. Так как конденсаторы, как элементы достаточно дешевые, поэтому и память относительно не дорогая.

Конденсаторы в силу своей емкости обладают инертностью, что не позволяет мгновенно считать-записать состояние конденсатора.

Память на быстродействующих триггерах называется SRAM (статическая ОЗУ). Ее быстродействие намного выше и единственный недостаток – это стоимость, т. е. 1 триггер – это одна ячейка, каждый триггер – это 6 транзисторов, т. о. 1Мбайт памяти требует 56000 транзисторов.

Первоначально все модули памяти были асинхронными, так как от них не требовали высокой производительности. При асинхронной передаче гарантируется, что определенная операция будет закончена за фиксированный промежуток времени, например 60 нс. Работа асинхронной памяти не привязана к тактовой частоте системной шины, и данные появляются на этой шине в произвольные моменты времени. С системной шины данные считываются контролером, который синхронизирован тактовой частотой, и если данные появляются в ближайший момент за фронтом тактового импульса, то они будут считаны только с началом следующего тактового импульса, т.е. возникает задержка с обработкой данных. Осуществляя специальные режимы доступа, проектировщики памяти смогли улучшить работу динамической памяти с рабочей частотой 4,77 МГц. В новом виде памяти FPM применялся режим постраничной адресации (fast page mode), и при этом удалось увеличить тактовую частоту до 40 МГц.

Следующим шагом на пути улучшения памяти был переход к стандарту EDO (Extended data output), который характеризовался увеличенным по сравнению с FPM временем хранения данных на выходе микросхемы памяти. В сочетании с пакетным режимом передачи данных (Burst Mode) эта память обеспечила хорошую производительность и с успехом применяется и сейчас в системах, не требующих более 66 МГц системной шины.

Как только стало очевидным, что потребуются шины, работающие быстрее, чем 66 МГц, разработчикам DRAM потребовалось найти способ преодоления существенных проблем задержек, которые все еще существовали. Напомним, что быстродействие асинхронных типов DRAM характеризуется временем цикла обращения, т.е. минимальным периодом, с которым можно выполнить циклическое обращение по произвольным адресам. Когда говорят, что модуль 60 нс, именно это время и имеется в виду. Процессор, работающий с асинхронной памятью, вынужден простаивать в ожидании завершения внутренних действий микросхем DRAM, для чего обычно требуется 60 нс.

При синхронной работе с памятью DRAM выдает информацию на системную шину под контролем (с тактами) системного генератора. При этом управление памятью усложняется, так как приходится вводить дополнительные «защелки», которые хранят адреса, данные и управляющие сигналы, в то время как процессор, передав их в память, продолжает работать с другими устройствами. После определенного числа тактовых циклов, количество которых считает специальный счетчик, данные становятся доступными и процессор может получить их с системной шины. При этом для описания быстродействия памяти вместо продолжительности цикла доступа стали применять минимально допустимый период тактовой частоты. Так, если говорят, что модуль 10 нс, это означает, что он тактируется 100 МГц.

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

На частотах до 83 МГц не было никакой реальной причины переходить с EDO на SDRAM. Цена SDRAM была значительно выше, а производительность возрастала незначительно. С появлением системной шины 100 МГц все изменилось. EDO DRAM уже не могла устойчиво работать на данной частоте, а производительность SDRAM на частоте 100 МГц уже была значительно выше.

SDRAM разрабатывался, когда считалось, что этот стандарт памяти разрешит многие проблемы производительности, однако быстро стало очевидно, что практическая выгода небольшая, вместе с тем появилось множество дополнительных проблем с совместимостью. Первые SDRAM модули содержали только два входа синхронизирующих импульсов, но вскоре стало понятно, что этого недостаточно. Пришлось создавать две различные модульные конструкции с двумя и четырьмя тактовыми входами. В каждом случае их применения необходимо было знать, какая же из них требуется для вашей материнской платы. Были и аппаратные неполадки с парами SDRAM от разных производителей у чипсетов I430TX и SIS5571. Появившийся чипсет I430TX был улучшен, а на модули памяти стали устанавливать SРD-чип, который позволял считывать всю необходимую информацию с модуля SDRAM при автоконфигурации системы.

Когда компания Intel готовилась к переходу на системную шину 100 МГц и вела разработки революционного чипсета I440BX, стало ясно, что большинство SDRAM-модулей, производившихся в то время, не будут должным образом функционировать на частотах системной шины более чем 83 МГц. Чтобы каким-то образом упорядочить рынок памяти, компанией Intel была введена спецификация PC100 как техническое руководство производителям модулей памяти, которые должны правильно функционировать с чипсетом I440BX. После выхода спецификации достаточно долго оставалось непонимание того, из чего же фактически состоит «настоящий» модуль PC100. Было достаточно много случаев, когда модули, предлагаемые как PC100, работали неустойчиво на системной шине 100 МГц. Для оценки скоростных характеристик модулей SDRAM мало скоростных характеристик чипов, из которых они изготовлены, так как большое значение имеют и другие параметры.

Чипы SDRAM официально оцениваются в мегагерцах (МГц), а не в наносекундах (нс), так что имеется общий знаменатель между скоростью шины и скоростью чипа. Эту скорость определяют путем деления 1 секунды (1 млрд. нс) на выходную скорость чипа. Например, 100 МГц SDRAM-чип оценивается как 10 нс. Это оценка в наносекундах не является мерой той же самой синхронизации, как асинхронного чипа DRAM. Хотя SDRAM внутри содержит DRAM, работающую таким же образом, как в EDO, принцип управления модулем SDRAM совершенно другой и улучшение производительности модуля достигнуто путем «скрытия» внутренней работы DRAM специальными методами.

Основные особенностями микросхем SDRAM является синхронизация всех операций с тактовой частотой системной шины и процессора. SDRAM-модуль разделен на два или более банков. Такое решение позволяет иметь одновременно две открытые страницы. Доступ к этим страницам чередуется (bank interleaving), что позволяет исключить задержки, связанные с регенерацией и устранением фазы восстановления памяти. Этим обеспечивается создание непрерывного потока данных.

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

На чипе памяти размещен регистр режимов, который применяется для настройки основных параметров микросхемы, в том числе длины и типа потока (с последовательной выборкой или чередованием).

SDRAM позволяет устанавливать задержку вывода данных, которые определяется числом тактовых импульсов между моментом получения адреса столбца и выводом данных. Значение этого параметра может быть 2 или 3 (латентность).

В настоящее время основным типом памяти является DDR SDRAM. Передача данных такой памяти ведется по обоим фронтам тактирующего сигнала, что дает результирующую пиковую пропускную способность, вдвое превышающую для микросхем SDRAM. DDR SDRAM имеет маркировку означающую пиковую пропускную способность в Мб/с (PC-1600, PC-2100)

DDR II SDRAM является развитием памяти типа DDR SDRAM и имеет результирующую пиковую пропускную способность, вдвое превышающую для микросхем DDR SDRAM.

Память в стандарте RIMM SDRAM работает с результирующей частотой 800 МГц. и использует 16 битную мультиплексируемую шину, что обеспечивает высокую скорость работы в приложениях требующих потоковую передачу данных, но с другой стороны увеличение стоимости как самих модулей, так и предназначенных для них материнских плат.

Наши рекомендации