Контакти;

Все для мобілки: Мобільні новини; Каталог WAP-ресурсів; Розповіді про мобілки; Різне.

 
Все для компьютера: Жосткі диски; Процесори; Графіка; Принтери; Системні плати; Інтернет; Різне.
 
Україна: Нам пора для України жити! Вірші Констянтина Гайя; Ностальгія за минулим; Політика;

Основні розділи:

Конгрес Українських Націоналістів Rambler's Top100
Рейтинг@Mail.ru Украина онлайн

© Лихач М.В. sem@shynok.com.ua 2004рік

PCI Express - последовательная шина.

    Если кто не знает, шина (bus) - это некая магистраль, связывающая отдельные компоненты компьютера между собой. Пропускная способность шины зависит от ее разрядности (скажем, 16-битная шина за один раз может передать только 16 бит данных), а также от тактовой частоты, определяющей, как часто этот "раз", собственно, случается. Шин в теперешних компьютерах несколько, но нас в данном случае интересует шина ввода / вывода, которая служит для связи с периферией (ее также называют периферийной шиной). В начале 90-х остро встал вопрос о замене широко распространенной, но медленной шины ISA (Industry Standard Architecture). В 1992 году появилась шина PCI (Peripheral Component Interconnect), работающая на частоте до 33 МГц. Уже через два года при совместном внедрении с процессором Pentium (тем, что ошибался поначалу) она стала доминирующим стандартом. По сравнению с VL Bus - своим прямым конкурентом, - PCI обладала неоспоримыми преимуществами, и большая часть периферии стала выпускаться именно для нее. Когда появились графические ускорители (хвала 3Dfx) и, соответственно, трехмерные игрушки, пропускной способности PCI в 133 Мб/с как-то сразу стало не хватать. Чтобы исправить сложившуюся ситуацию, специалисты разработали порт AGP (Accelerated Graphics Port), работающий на частоте 66 МГц. AGP, во-первых, увеличил производительность графической подсистемы, а во-вторых, убрал графические данные с PCI. Назвать его шиной язык не поворачивается, поскольку служит он для подключения только одного девайса. Позднее появились AGP 2x, 4x и, в конце концов, 8х, а пропускная способность перевалила за 2 Гб/с. Сегодняшнее положение вполне сравнимо с кризисом начала 90-х: PCI морально устарела, да и AGP работает на пределе своих возможностей. Однако, на наше с вами счастье, разработчики это предвидели и времени зря не теряли. Разработкой шины ввода / вывода третьего поколения, ныне именуемой PCI Express, а также известной под названиями Arapahoe и 3GI0 (3rd generation I/O), занимался консорциум Arapahoe Working Group, в который наряду с другими входят компании Intel, Compag, Dell, HP, IBM и, естественно, Microsoft. В начале 2002 года разработка была закончена, а версия 1.0 передана на рассмотрение отраслевой группе PCI-SIG (PCI Special Interest Group), занимающейся утверждением спецификаций шины PCI и всего, что с ней связано. Позднее шина PCI Express была утверждена в качестве открытого стандарта. Давайте разберемся, что же представляет собой PCI Express.  В топологию шины добавлен новый элемент - коммутатор (swich), который может находиться на материнской плате как отдельное устройство, а может быть интегрирован в чипсет. Коммутатор призван заменить традиционную шину с множеством подключений коммутируемой технологией и обеспечить одноранговую связь с девайсами. Это помимо всего прочего позволит избавиться от некоторого бесполезного трафика, поступающего на мост ввода / вывода, ведь даные не будут отправляться чипсету, если они затрагивают только конечные устройства и не нуждаются в дополнительной обработке или доступе к памяти. PCI Express - шина не параллельная, как ее предшественница, а последовательная, что в нынешних условиях предполагает более высокую производительность. Последовательная шина использует прямые соединения между устройствами с малым количеством служебного трафика и низкими задержками, а также обеспечивает гибкую маштабируемость производительности при помощи изменения тактовой частоты и добавления линий (lane). Каждая линия может передавать 250 Мб/с в каждую сторону, что почти вдвое больше пропускной способности обычной способности обычной PCI. Всего же линий может быть до 32, то есть суммарная пропускная способность PCI Express может составлять 16 Гб/с, и это без учета увеличения тактовой частоты. Если же верить обещаниям, то в недалеком будущем пропускная способность будет составлять более гигабайта в секунду в каждом направлении на каждую линию. Понятно, что не вся периферия требует такой огромной пропускной способности, поэтому на матплатах будут присутствовать разные PCI Express - слоты - Х1 и Х2 для более медленных устройств (GbE, RAID и т.п.) и Х16 для видеокарт. Учитывая темпы развития трехмерной графики, через некоторое время можно также ожидать появление Х32-слотов. Архитектура PCI Express состоит из нескольких уровней. Самый нижний, физический уровень (Physical Layer), состоящий, собственно, из проводников, передает пакеты между канальными уровнями двух подключенных устройств. Физический уровень поддерживает ширину шины Х1, Х2, Х4, Х8, Х16 и Х32 линий, а сами линии могут состоять из металлических или оптических проводников. Канальный уровень (Data Link Layer) отвечает за целостность пакетов,  добавляя уникальный идентификатор и контрольную сумму к каждому пакету. В соответствии с применяемым протоколом управления потоком разрешение на передачу пакета дается только в случае готовности буфера на принимающей стороне, что позволяет избежать повторных передач и использовать канал более эффективно. Уровень транзакций (Trasaction Layer), получающий запросы на чтение / запись от программного уровня, создает пакеты для передачи канальному уровню. Формат пакетов поддерживает 32-битную и расширенную 64-битную адресацию памяти. Каждый пакет также может иметь атрибуты, такие, как no-snoop, relaxed-ordering и priority, позволяющие  оптимизировать маршрутизацию. Программный уровень (Soft-ware Layer), отвечающий за программную совместимость, включает в себя два подуровня - загрузку и выполнение, которые, по сравнению с PCI, остались неизменными. При загрузке операционная система находит подключенные устройства и распределяет ресурсы между ними. Выполнение же производится по модели PCI "загрузка-сохранение", что также поддерживается архитектурой PCI Express. Таким образом, существующие операционные системы, драйверы и приложения, способные работать с PCI, будут работать и с PCI Express, без каких-либо изменений, а новые версии ПО смогут использовать новые функции шины. (Любопытный факт: Microsoft заявила, что поддержка PCI Express является одной из возможностей будущей OC Longhorn. Интересно, это своеобразный PR или тонкий намек на то, что существующие "форточки" могут и не поддерживать новую шину?) К преимуществам последовательного соединения можно добавить возможность управления питанием, горячего подключения и горячей замены устройств - для этого будут использоваться специальные горячие отсеки. Одним из условий при разработке PCI Express было соответствие ее стоимости уровню PCI. Последовательное соединение предусматривает меньшее число проводников и позволяет более эффективно использовать освободившееся на печатной плате место для размещения других компонентов. Это в некоторой степени сократит расходы производителей на разработку и дизайн самой платы, которые, естественно, включены в стоимость конечного продукта. В отличие от PCI, которая разрабатывалась только для домашних ПК, PCI Express позиционируется как универсальная шина для разных сегментов рынка, включающих помимо десктопов серверы, мобильные платформы, устройства связи и межкомпонентные соединения. Однако пока не ясно, будет ли Intel использовать шину для связи мостом. Дело в том, что PCI Express является открытым стандартом, а значит, собирать деньги с раздачи лицензий компания не сможет. Разумеется, за одну ночь переход на PCI Express не произойдет. Вспомним, что после появления PCI слоты ISA жили на материнских платах почти десять лет. С большой долей вероятности можно предположить, что слоты PCI и PCI Express будут мирно сосуществовать на протяжении как минимум нескольких лет, однако постепенное вытеснение PCI теперь неизбежно. А вот с AGP дела обстоят несколько сложнее. Принимая во внимание тот факт, что PCI Express была призвана заменить собой AGP-порт, рассчитывать на присутствие обоих  на одной матплате не стоит, хотя и исключать возможность появления "переходных" мамок тоже нельзя.

Графика