Основы AS/400 - Фрэнк Солтис
Шрифт:
Интервал:
Закладка:
Новейшая тенденция состоит в установке на ПК отдельной шины, изолированной от процессора, но по-прежнему имеющей доступ к основной памяти. Для подключения этой отдельной шины к локальной шине и к памяти используется контроллер шины памяти. В этом случае контроллер также конкурирует за циклы локальной шины, но теперь множество устройств может быть подключено к отдельной шине. Преимущество отдельной шины в том, что у нее свой тактовый генератор, который работает с фиксированной скоростью и независим от процессора. Это удешевляет подключение устройств, работающих с процессорами любой частоты.
Вероятно, самая популярная из таких отдельных шин — шина PCI (Peripheral Component Interconnect). Частота шины PCI равна 33 МГц, и в будущем планируется ее повышение. Некоторые компоненты ЛВС и интерфейсы жестких дисков, такие как SCSI (Small Computer System Interface), иногда по-прежнему подключаются к локальной шине напрямую.
К шине PCI можно подключить до 16 плат адаптеров, обеспечивающих интерфейс устройства ввода-вывода к шине. Стандарт PCI определяет тип используемого разъема, а также размер и форму плат. Обычно, эти параметры называют фактором формы PCI (PCI form factor).
Только что описанная структура ввода-вывода ПК чаще всего неприемлема для более мощного компьютера, выполняющего много операций ввода-вывода. Большим системам требуется несколько шин, а также желателен некоторый способ разгрузки основного процессора. Один из таких способов — использование канала, иначе говоря, специализированного компьютера, устанавливаемого рядом с основным процессором. Шины ввода-вывода подключаются непосредственно к каналу, а не к основному процессору.
У канала собственный набор команд, предназначенный специально для взаимодействия с присоединенными к шине адаптерами и обмена данных между устройством ввода-вывода и памятью. Канал получает программы (так называемые канальные) от основного процессора. Такие программы могут выполняться каналом параллельно с выполнением других программ основным процессором. Таким образом, эти два процессорных устройства мало влияют друг на друга. Когда канал завершает обработку своей программы, он прерывает основной процессор для получения нового задания.
Есть два основных типа каналов — селекторные и мультиплексные. Селекторный канал предназначен для поддержки скоростных устройств, таких как диски, и может в каждый момент времени обмениваться данными только с одним устройством. Мультиплексный канал обменивается данными со многими медленными устройствами, такими как терминалы, поочередно передавая по шине данные для каждого из них. За один прием может передаваться один байт или блок байтов. В зависимости от этого мультиплексные каналы подразделяются на байт-мультиплексные и блок-мультиплексные. Оба типа каналов поддерживаются в System/370.
Многие характеристики канала в System/38 заставляли вспомнить System/370. Возврат к старому дизайну объяснялся иллюзией проектировщиков, думавших, что они делают System/370. Но в отличие от System/370, поддерживавшей несколько селекторных и мультиплексных каналов, на System/38 был только один канал. Для читателей, любящих точность, канал System/38 может быть описан как блок-мультиплексный канал, работающий в режиме фиксированной передачи (fixed-burst mode).
Адаптеры ввода-вывода, использовавшиеся в System/38 для фактического управления устройствами, были довольно примитивны, то есть большая часть логики выполнения операции ввода-вывода была возложена на канал. System/34 и System/36, не имевшие каналов, использовали для управления устройствами ввода-вывода интеллектуальные процессоры, причем System/34 — разные процессоры для разных устройств. Что касается System/36, то применявшийся в ней CSP (Control Storage Processor), о котором я говорил в главе 3, был принят в качестве стандарта для большинства процессоров ввода-вывода. Поэтому к System/36 могли быть подключены адаптер диска, адаптер рабочей станции и адаптер линий связи — каждый со своим отдельным CSP. В больших System/36 для ввода-вывода использовались несколько CSP. Может быть, читатели помнят, что такие адаптеры назывались в терминологии System/36 контроллерами. Но так как они располагались на платах внутри корпусов, современная терминология велит называть их адаптерами.
В AS/400 нет такого канала, как в System/38, а вместо него используются одна или несколько шин ввода-вывода, к которым подключены интеллектуальные процессоры. Большая часть обработки ввода-вывода выполняется этими IOP. Такая структура гораздо ближе к System/36, нежели к System/38. Впрочем, она отличается них обеих.
Шине SPD и архитектуре IOP также присущи определенные способности к изоляции ошибок, что позволяет AS/400 ограничить последствия сбоев устройств, IOP и шин ввода-вывода. В результате AS/400 может «пережить» такие сбои ввода-вывода, которые на других системах, — например, на ПК или рабочей станции Unix — приводят к краху.
Промышленные стандарты ввода-вывода
Стратегия развития AS/400 состоит в заимствовании новых структур ввода-вывода, соответствующих основным промышленным стандартам шин ввода-вывода и подключения устройств. Такой структурой быстро становится шина PCI, которую сегодня AS/ 400 непосредственно поддерживает наряду с SPD. Как мы увидим далее, в серии AS/ 400е сочетается надежность структуры шины SPD с легкодоступными компонентами PCI. С течением времени в AS/400 могут быть также включены новые стандартные шины, такие как ANSI Fiber Channel Standard.
Одна из причин перехода на PCI — ее цена. Платы адаптеров PCI дешевле, так как не требуют отдельного IOP для каждого адаптера, как SPD. Один из способов уменьшения стоимости адаптеров SPD — использование MFIOP (Multifunction IOP). MFIOP содержит один IOP и допускает подключение к этой многофункциональной плате различных «дочерних» плат, у которых нет своих IOP. Дочерние платы обычно называются адаптерами ввода-вывода или IOA (I/O Adapter). При такой схеме соединения несколько IOA могут использовать общий IOP, что сокращает общую стоимость системы.
Даже при использовании MFIOP платы адаптеров стандарта PCI, применяемые в обычном ПК, дешевле, чем SPD. Причина здесь — в конструктивных особенностях последней. Каждая плата адаптера SPD содержится в алюминиевом корпусе-книжке, а книжки — в специальной обойме. Такой способ размещения надежен, но дорог.
Переход на PCI происходит постепенно, начиная с младших моделей серии AS/ 400е. Все эти модели поддерживают только шину и адаптеры PCI, что дает им возможность очень агрессивно конкурировать с ПК-серверами. Средние модели используют адаптеры как PCI, так и SPD. Что касается старших моделей серии, то в них предусмотрена поддержка только шины и адаптеров SPD, PCI же отложена до следующих версий.
Давайте теперь подробней рассмотрим использование PCI в различных моделях.
Сервер начального уровня AS/400е (известный также как Eiger), впервые объявленный в V3R7 как Advanced Entry, имеет только шину PCI. Такие серверы используют новый вид IOP. Если обычный IOP поддерживает интерфейс к конкретному типу устройств, то новый IOP — интерфейс шины PCI (до 16 адаптеров), что сравнимо с SPD MFIOP, использующим один IOP и несколько IOA. Сам новый IOP интегрирован как компонент на планарной плате Eiger. Эта плата очень напоминает материнскую плату обычного ПК, и к ней могут подключаться непосредственно платы адаптеров PCI.
Новый IOP в качестве интерфейса между AS/400 и шиной PCI позволяет нам обеспечить тот же уровень надежности, что и шина SPD. IOP изолирует шину PCI от основного процессора. По сравнению с серверами ПК, которые вынуждены использовать для обработки ошибок и вспомогательных операций основной процессор, — это шаг вперед. Хочу обратить внимание на то, что для новых IOP используется процессор PowerPC. Прежние IOP, используемые адаптерами ввода-вывода SPD, были продукцией различных производителей, в основном, Motorola. Новая стратегия IBM заключается в использовании PowerPC для всех будущих IOP.
В моделях среднего уровня, выпускающихся в корпусах Millenium, применяется тот же IOP, что и в Eiger. Базовые устройства ввода-вывода (такие как внутренние диски, компакт-диск и лента) используют PCI. На младших моделях среднего класса, как и на Eiger, поддерживаются только такие адаптеры. Старшие модели среднего уровня имеют возможность установки отдельной обоймы плат SPD или отдельной платы адаптеров PCI внутри корпуса Millenium по выбору. Эти корпуса в зависимости от комплектации могут поддерживать или только адаптеры PCI, или сочетания базовых адаптеров PCI и адаптеров SPD.
Старшие модели серии AS/400е, устанавливаемые в высокие корпуса Mako, пока поддерживают только шину и адаптеры SPD. Поскольку большие системы, в основном, — модернизация существующих AS/400, то такое положение приемлемо. С течением времени потребность в адаптерах PCI для больших систем будет расти, и мы добавим соответствующую поддержку.
Рисунок 10.1. Аппаратная структура ввода-вывода
Для иллюстрации структуры ввода-вывода в новых корпусах Mako я использую 12-канальную конфигурацию SMP, описанную в главе 2. По сути, рисунок 10.1 — это рисунок 2.6 с 12-канальной конфигурацией SMP, добавлена лишь структура ввода-вывода. Для подключения всей системы ввода-вывода в корпусах Mako используется SAN (System Area Network)[ 78 ]. На рисунке показаны локальные шины 6хх адреса и данных, связанные интерфейсами шины ввода-вывода и распределенные с помощью