Московский государственный университет путей сообщения
Опубликован: 11.04.2006 | Доступ: свободный | Студентов: 1241 / 258 | Оценка: 4.39 / 4.00 | Длительность: 17:21:00
ISBN: 978-5-9556-0036-1
Специальности: Разработчик аппаратуры
Лекция 4:

Микроархитектура zSeries

< Лекция 3 || Лекция 4: 123 || Лекция 5 >
Ключевые слова: кэш, память, адресное пространство, подсистема ввода-вывода, MBA, memory bus, adapter, SC, сервер, кластер, общее адресное пространство, когерентность, uniprocessor, dyadic, processor, MCM, chip, MODULE, модуль, msc, memory, storage, controller, interface, группа, SD, криптографические операции, надежность, контроллер, обмен информацией, адаптер, интерфейс, демультиплексор, secondary, I/O, switch, CLK, book, CMOS, MCC, MESI, емкость памяти, SMI, memory interface, объединение, операции, binary floating point, BFP, ESA, PSW, кэш данных, запись, COPS, control, element, recovery, checkpointing, array, информация, исполнение, целое число, if, буфер, индекс, команда, очередь, адрес, TLB, Размещение, АЛУ, структурная схема, бит, регистр команд, BTB, branch, target, поиск, выборка, вероятность, цикла, декодирование, сложение, FPR, регистр, FPU, конвейерная обработка, слово, set-associative, байт, разрядность, обмен данными, ALB, конвейеризация, C2, таблица, absolute address, history, table, массив, translator, аппаратные средства, управляющие, операнд, входные данные, входной, функция контроля, регистровая память, контроль, подмножество, доступ, эффективный механизм, приостановка выполнения, general-purpose register, запуск, безусловный переход, системная область, HSA, процессорное ядро, пропускная способность, ICB, ATM, Ethernet, token, кабель, Синхронный, прием сигнала, Си, выход, прием данных

Структурная организация серверов zSeries

Структурная организация серверов zSeries основана на использовании вычислительных узлов с SMP-архитектурой (рис. 2.17). Такой узел включает P процессоров PU 0 \div PU P-1, симметрично подключенных к памяти через двухуровневую КЭШ (L1, L2). КЭШ первого уровня L1 реализует стандарт сквозной записи и состоит из P блоков, каждый из которых используется локально одним процессором. КЭШ второго уровня L2 построена по стандарту с обратной записью и в зависимости от модели сервера может быть разбита на L блоков, используемых группами по P / L процессоров. Кроме этого на втором уровне КЭШ поддерживается протокол выравнивания содержимого блоков КЭШ обоих уровней.

Структура узла системы

Рис. 2.17. Структура узла системы

Внутренняя или процессорная память системы состоит из М блоков - карт памяти, включающих контроллеры управления обращениями и защиты информации. В состав памяти включены два уровня адресных пространств: основное адресное пространство, доступное для большинства команд с адресацией памяти, и адресное пространство расширенной памяти, доступное для нескольких специальных команд.

Подсистема ввода-вывода включает канальные пути на базе интерфейсов различных типов для подключения периферийных устройств и межсистемного обмена. Для управления канальными путями используются канальные процессоры. Подключение периферийных устройств к интерфейсам выполняется через индивидуальные и групповые контроллеры CU.

Для обмена информацией между памятью и подсистемой ввода-вывода используется блок сопряжения, включающий B адаптеров памяти MBA (Memory Bus Adapter), подключенных к КЭШ L2.

Блок системного контроля SC подключен ко всем блокам узла для управления их согласованной работой.

Сервер zSeries в общем случае может включать R узлов (рис. 2.18). Для объединения узлов в кластер используются многоразрядные шины обмена информацией и управления, подключаемые к устройствам буферизации, коммутации и управления (блоки L2, SC, MBA). При этом память всех узлов объединяется в общее адресное пространство, доступное всем процессорам кластера, и в КЭШ L1, L2 всех узлов поддерживается когерентность содержимого. Такой кластер может рассматриваться как RxP-процессорный SMP-узел и использоваться для построения кластеров следующего, более высокого, уровня.

Система с R узлами

Рис. 2.18. Система с R узлами

Различные модели и генерации серверов отличаются качественными и количественными характеристиками компонентов объединяемых узлов. Модели, состоящие из одного узла (R=1), использовались в архитектурах, предшествующих z/Architecture, и назывались односторонними (singleside) серверами. В зависимости от числа используемых процессоров модели определялись как uniprocessor models (P=1), dyadic processor models (P=2) и т.д.

Сервер с бинодальной структурой

Рис. 2.19. Сервер с бинодальной структурой

Наибольшее распространение, в том числе и в z/Architecture (z900), получили модели с бинодальной структурой при R=2 (рис. 2.19). Такие модели, как и модели с R>2, принято называть N-way серверами, где N= RxP - суммарное число процессоров всех объединяемых узлов. В последних моделях z/Architecture (z990, z890) число используемых узлов может меняться от 1 до 4 R=1 \div 4. В таблице 2.32 приведены основные параметры моделей серверов z/Architecture.

Таблица 2.32. Параметры кластеров z/Architecture
Модель P M L B R
z900 1-10 (до 8 СP) 2 1 2 2
z800 1-5 (до 4 СP) 2 1 1 1
z990 1-12 (до 8 СP) 4 1 3 1-4
z890 1-5 (до 4 СP) 4 1 2 1

Структурная организация сервера zSeries z/900 приведена на рис. 2.20 [2.12 - 2.14]. Основу сервера составляют два узла, образующие бинодальную симметричную структуру, реализованную в одном многочиповом модуле MCM (Multi Chip Module). Модуль MCM подключен к четырем картам памяти через контроллеры памяти MSC (Memory Storage Controller), а также к подсистеме ввода-вывода через самосинхронизирующиеся интерфейсы STI (Self-Timed Interface).

Архитектура сервера z900

Рис. 2.20. Архитектура сервера z900

В состав сервера входят 20 процессоров (PU), каждый из которых реализован в отдельном чипе вместе с КЭШ первого уровня L1 емкостью 512 KB. Группа из 10 процессоров, объединенных в одном узле, подключается к отдельному фрагменту КЭШ второго уровня L2 на базе четырех модулей (чипов) SD. Каждый из процессоров подключен к модулям КЭШ L2 с использованием двунаправленной 16-байтной шины. Один модуль КЭШ L2 имеет объем 4 MB, что обеспечивает суммарный объем КЭШ второго уровня 16MB на узел или 32MB на весь модуль MCM. КЭШ L2 каждого из узлов доступна для процессоров другого узла, для чего каждая пара модулей SD одного узла соединена двумя 8-байтными шинами обмена с аналогичной парой модулей SD другого узла.

Для аппаратной поддержки криптографических операций используются два сопроцессора Crypto0, Crypto1 (по одному на каждый узел), соединенные 4-байтными двунаправленными шинами с двумя процессорами разных узлов. Такое подключение увеличивает надежность их функционирования. Дополнительные криптографические сопроцессоры (до 16) могут быть подключены через систему ввода-вывода.

Память сервера реализована на четырех картах card 0 \div card 3, каждая из которых имеет собственный контроллер памяти MSC (Memory Storage Controller). Для связи памяти с модулем MCM контроллер MSC подключен к одной из пар модулей КЭШ L2 двумя 8-байтными двунаправленными шинами.

Обмен информацией между памятью и подсистемой ввода-вывода выполняется через КЭШ L2, для чего в модуле MCM используются четыре адаптера памяти MBA по два на каждый из узлов. Адаптер MBA подключается к модулям КЭШ L2 посредством 8-байтных двунаправленных шин, а к подсистеме ввода-вывода - через самосинхронизирующийся интерфейс STI (Self-Timed Interface). Каждый такой интерфейс функционирует на скорости 1GB/s, что обеспечивает в дуплексном режиме работы суммарную пропускную способность 2GB/s. В подсистеме ввода-вывода STI-интерфейсы соединяются с каскадированными мультиплексорами-демультиплексорами (M/D) для выхода на вторичные (secondary) интерфейсы с меньшей пропускной способностью (333 МВ/s, 500 МВ/s). Вторичные интерфейсы подключаются к картам ввода-вывода (I/O card), обеспечивающим требуемую пропускную способность и управление для типовых каналов ввода-вывода, таких как ESCON, FICON и др. Для связи периферийных устройств D с типовыми интерфейсами используются контроллеры CU, а также коммутаторы (Director, Switch), необходимые для создания различных путей доступа к устройствам.

Блок системного контроля SC предназначен для управления согласованной работой всех блоков узла и подключен посредством управляющих сигналов ко всем блокам узла (процессоры, КЭШ L2, MBA) и блоку SC соседнего узла. Блок SC реализован на одном чипе с большим числом выводов (более 1600). Для взаимной синхронизации всех устройств в модуле MCM используется отдельный блок синхронизации CLK.

Структурная организация сервера zSeries z990 приведена на рис. 2.21 [2.8 - 2.10, 2.15]. Основу сервера составляют от одного до четырех узлов, называемых книгами (book) и соединенных между собой замкнутыми кольцевыми шинами для взаимного доступа к ресурсам каждого из узлов. Для подключения в кольцевую структуру в узле предусмотрены два порта, каждый из которых имеет входную и выходную шины, что позволяет создать две кольцевых шины с противоположными направлениями обмена. При отсутствии одного из узлов, например при замене, в соединенных с ним соседних узлах две кольцевых шины объединяются, образуя одно кольцо для обмена информацией. Отсутствующий на постоянной основе узел может быть заменен заглушкой, обеспечивающей трансляцию сигналов с сохранением двух кольцевых шин. Такая структура связей между узлами обеспечивает повышенную надежность и упрощает процедуры модернизации и ремонта "на лету".

Архитектура IBM z990

Рис. 2.21. Архитектура IBM z990

Основу узла сервера (рис. 2.22) составляет многочиповый (16 чипов) модуль MCM, в состав которого включены 12 процессоров PU0 - PU11, КЭШ L2 на базе четырех модулей SD, блок системного контроля SC и два контроллера памяти модуля MSC. Помимо МСМ в узле используются две карты памяти и три модуля MBA для связи с подсистемой ввода-вывода.

Архитектура IBM z990

Рис. 2.22. Архитектура IBM z990

Процессоры узла реализованы на чипах CMOS 9SG с циклом 0,83 нс и имеют дублированную структуру с зеркальным исполнением команд в двух процессорных каналах. КЭШ L1 размещена на одном чипе с процессором, имеет объем 512 KB (по 256 KB для данных и команд) и построена на основе протокола со сквозной записью. КЭШ L2 узла построена на четырех блоках SD общим объемом 32 MB. В состав блоков SD помимо запоминающего массива включен контроллер MCC для поддержки когерентности памяти всех узлов в соответствии с расширенным протоколом MESI. Все обмены между процессорами, блоками MSC, MBA и с другими узлами выполняются через КЭШ L2 и системный контроллер SC.

Каждая карта памяти может иметь емкость 8 GB, 16 GB или 32 GB, что обеспечивает емкость памяти до 64 GB в одном узле и до 256 GB - во всем сервере. Интерфейс между КЭШ L2 и основной памятью реализуется двумя модулями MSC, каждый из которых имеет четыре высокоскоростных шины, подключенные через контроллеры памяти SMI (Synchronous Memory Interface) к картам памяти. Для хранения ключей защиты памяти используются отдельные блоки памяти ключей защиты (ПКЗ).

К подсистеме ввода-вывода узел подключен через три модуля MBA, каждый из которых обеспечивает управление четырьмя интерфейсами STI 2 GB/s. C учетом дуплексного режима STI это обеспечивает для одного узла пропускную способность ввода-вывода до 48 GB/s и для всего сервера - до 192 GB/s.

< Лекция 3 || Лекция 4: 123 || Лекция 5 >
Андрей Скурихин
Андрей Скурихин
Россия, Санкт-Петербург, Санкт-Петербургский государственный электротехнический университет (ЛЭТИ), 1997