Компьютеры

3GIO — достойная смена PCI?

Обзор 3GIO — системы ввода/вывода третьего поколения, идущей на смену PCI.

Шина PCI, оказавшаяся чрезвычайно успешным решением и до сего дня исправно выполняющая обязанности соединительной магистрали между блоками компьютера, вскоре может быть вытеснена другой технологией. Причины такой замены — в растущих требованиях к пропускной способности, увеличивающимся скоростям работы процессоров, памяти и интерфейсов (1- и 10-гигабитный Ethernet, 1394b), а также в недостаточных возможностях масштабирования шины PCI и ужесточающихся требованиях к стоимости по отношению к пропускной способности.

Архитектура нового решения, предложенного Arapahoe Work Group, основанной компаниями Compaq, Dell, IBM, Intel и Microsoft при участии организации PCI-SIG, получила название 3GIO — 3rd Generation IO — система ввода/вывода третьего поколения. 3GIO представляет собой последовательную шину общего назначения, позволяющую радикально уменьшить количество соединительных линий (и контактов в разъемах), а также обеспечить значительную масштабируемость. Область применения новой технологии покрывает широкий диапазон решений: от серверов до мобильных устройств. Предполагается, что новая шина будет использоваться не только для соединения модулей (в частности, для подключения графического адаптера, адаптеров Ethernet, USB2.0, 1394b), но и для межчиповых соединений в пределах системной платы и прочих модулей.

3GIO не рассматривается исключительно в качестве замены стандарта PCI, последнему отводится как минимум еще несколько лет существования наряду с новой технологией. Сосуществование с PCI предполагается обеспечить посредством моста 3GIO-PCI, примерно так же, как это происходило с шиной ISA. В то же время, 3GIO не предназначена для замены интерфейса Serial ATA — эти стандарты будут существовать параллельно, как сосуществуют сегодня стандарты PCI и ATA, и связано это во многом с тем, что существующее программное обеспечение ориентировано на стандарт ATA, с которым Serial ATA полностью совместим.

Технология 3GIO предполагает:
• совместимость с существующей моделью программного обеспечения и драйверов устройств для шины PCI,
• максимально возможную полосу пропускания для единичной линии соединения,
• встроенную систему синхронизации (встроенный синхросигнал), которая позволит избавиться от сложных систем тактирования и синхронизации шины,
• масштабируемость полосы пропускания путем изменения частоты передачи данных по единичной линии и объединения требуемого количества единичных сигнальных линий в параллельную шину,
• предсказуемость задержки передачи данных для выполнения требований приложений, работающих в режиме реального времени (существующие стандарты PCI2.2 и PCI-X не имеют такой возможности на уровне спецификации),
• наличие системы оценки пропускной способности и длительности задержки (QoS),
• механизмы для обеспечения возможности применения новой технологии во встраиваемых и коммуникационных устройствах,
• возможность «горячего подключения» и «горячей замены» модулей,
• режимы пониженного энергопотребления.

Первое и основное отличие 3GIO от предшественников — это последовательная шина. Впрочем, понятия «последовательная» и «параллельная» здесь уже несколько теряют свой смысл: действительно, как назвать шину, в которой несколько последовательных сигнальных линий работают параллельно? Отказ от параллельной технологии (а вернее от синхронной передачи немодулированных данных по нескольким линиям) обусловлен в первую очередь требованиями низкой стоимости систем и масштабируемости — при современном уровне развития технологий несколько логических блоков в составе микросхемы обходятся дешевле, чем несколько качественных контактов в разъеме и дорожек на печатной плате.

На физическом уровне линии 3GIO представляют собой дифференциальные сигнальные пары с импедансом 50 Ом и напряжением сигнала 0,2–0,4 вольта для логического «нуля» и 0,4–0,8 вольта для «единицы». Столь низкие напряжения сигнала выбраны не случайно: они соответствуют напряжениям чипов, изготовляемых как по сегодняшним 0,25 и 0,18-микронным нормам, так и по перспективным 0,13 и 0,09-микронным. Длительность единичного битового сигнала для такой линии может составлять до 400 пикосекунд, что соответствует максимальной частоте передачи 2,5 Ггц. Передатчик осуществляет избыточное кодирование каждых 8 бит информации в 10 бит сигнала для обеспечения баланса по постоянному току (что уменьшает эффект «джиттера») и наличия в выходном сигнале количества перепадов уровней, достаточного для выделения приемником сигнала синхронизации без использования внешнего генератора или отдельной линии синхронизации. Если несколько сигнальных линий используются приемником и передатчиком параллельно, они работают с одинаковой тактовой частотой. Допускается применение схем «размазывания» спектра сигнала (изменение частоты тактового генератора по некоторому закону), однако для линий, использующихся параллельно, закон изменения частоты должен быть одинаковым.

3gio.jpg

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

В применении для межмодульных соединений спецификация оговаривает использование похожих на PCI соединителей с одноуровневыми двухсторонними контактами, разводка которых легко выполняется в четырех слоях печатной платы, однако, в отличие от 120 контактов PCI, в 3GIO всего лишь 36 контактов (вариант Х1), расположенных с шагом 1 мм (также, как и в PCI выводы разъема размещаются в 4 ряда). Масштабирование осуществляется простым увеличением длины соединителей (варианты Х1, Х4, Х8, Х16), при этом все модули форматов Х1, Х4 и Х8 могут устанавливаться в разъемы Х16. Вариант Х1 обеспечивает вчетверо более высокую пропускную способность по сравнению с шиной PCI, вариант Х16 — соответственно в 64 раза большую.

3rdGenWhitePaper_.gif

Для мобильного применения и систем микро-ATX разработан формат коннекторов MiniGIO, напоминающий сегодняшние слоты CardBus.

Кроме собственно сигнальных линий коннектор 3GIO содержит сигналы System Clock (не использующийся, однако, для синхронизации приемника данных с передатчиком), SMBus, Power Good, Wake, Jtag и Presence Detect (определение наличия устройства при «горячем подключении»). Интересно, что спецификация оговаривает полный отказ от питания +5 и –5 вольт: основное питание для модулей 3GIO составляет 3,3 вольта (3А максимум), +12 вольт (0,5 А, 2 А, 2 А и 3А соответственно для вариантов Х1, Х4, Х8 и Х16) и дополнительное «дежурное» питание для режима пониженного энергопотребления 3,3В (375 мА).

Разъемы 3GIO устанавливаются на системную плату в те же позиции, которые используются для разъемов PCI, соответственно, совмещенные слоты 3GIO-PCI невозможны, но совмещение 3GIO и PCI в разных позициях допускается. Форматы карт, оговоренные в спецификации, таковы: стандартная высота — 106,7 мм, уменьшенная (low profile) — 64,4 мм, максимальная длина карты — 312 мм, метод крепления карты и прочие конструктивные особенности соответствуют картам PCI.

3rdGenWhitePaper.gif

Первые продукты 3GIO ожидаются на рынке во второй половине 2003 года, а собственно стандарт рассчитан минимум на десятилетнее применение, при этом разработчики предусматривают и дальнейшее развитие в виде модификаций 2Х и 4Х, как это произошло с шиной AGP.