Описание и характеристики современных и уже уходящих в прошлое видеоинтерфейсов, а также анализ эволюционного потенциала PCI-Express. Эволюция интерфейсов, внедрение новых спецификаций и соответствующей им аппаратной поддержки – в компьютерном мире обычное дело. Вот и видеоадаптер, начав своё восхождение как карта расширения, в который уже раз примеряется к новому интерфейсу. Старожилы ещё помнят старые графические платы с интерфейсом ISA, объём памяти которых редко превышал 512 Кбайт. Позже, с появлением специально расширенной шины VESA, видеоадаптеры попытались пристроиться и к ней. Это были настоящие монстры – карты, которые устанавливались сразу в два слота, размером на всю ширину материнской платы, а объ м памяти в 2 Мбайт считался на начало 90-х годов огромным достижением. Наиболее же сильный толчок в развитии видеоадаптеры получили на старой доброй шине PCI. Именно тогда, в середине 90-х, были созданы первые достойные 3D-акселераторы, и ставки в игровой индустрии резко пошли в гору. Слоты шины PCI пока всё ещё неизменно присутствуют на каждом современном ПК и сегодня, хотя видеокартами они давно уже не используются. Динозавры типа VESA и сменившие их мастодонты давно вымерли и ушли с пути эволюции. Очень хищным оказался специально разработанный на основе PCI интерфейс для видеоадаптеров – AGP, или Accelerated Graphic Port. Он удерживает позиции уже почти десять лет. Никогда конкурентная борьба между производителями, внедрение новых технологий на графических акселераторах не достигали такого накала, как в эпоху AGP. Но ничто не вечно, и вот уже устаревшая AGP-шина сдаёт свои позиции, уступая принципиально новой агрессивной ветви эволюции – интерфейсу PCI-Express. На сегодняшний день львиная доля видеокарт всё ещё держится на интерфейсе AGP, но самые современные и высокопроизводительные из них перешли на PCI-Express. Вот о проблемах, возможностях и достижениях этих двух интерфейсов мы и поведём речь сейчас. Соблюдая историческую хронологию, начнём рассмотрение с шины AGP, получившей немало заслуг и порицаний в прошлом.Проблема совместимости AGP 1X…8X За время своего существования шина AGP неоднократно модернизировалась, наращивая свою пропускную способность, и сейчас уже существует в своей третьей и, судя по всему, последней спецификации. Эволюция AGP проходила не совсем гладко, проблемы совместимости разных версий не обошли её стороной. Собирая систему, особенно из комплектующих разных поколений, следует крепко подумать, прежде чем устанавливать на материнскую плату непроверенную AGP-видеокарту… Появившаяся в 1997 году первая и самая медленная спецификация AGP 1.0 могла работать в двух режимах передачи данных 1Х/2Х (266/533 Мбайт/с), используя напряжение 3,3 В. Здесь под напряжением подразумевается уровень логической "1" сигналов, которыми видеокарта и системная плата обмениваются между собой, а не напряжение питания видеоадаптера со слота на материнскую плату, как многие ошибочно считают. Идем дальше. С 1998 года массово внедряется следующая спецификация, AGP 2.0, со скоростью передачи данных в режиме 4Х (1066 Мбайт/с) и пониженным напряжением сигнальных уровней 1,5 В. Последняя спецификация, AGP 3.0, использует восьмикратный режим передачи данных 8Х (2133 Мбайт/с) и ещё более низкое напряжение сигнала – 0,8 В. Соответствующие скоростные режимы AGP и, главное, уровни напряжений для них должны поддерживаться как со стороны видеокарты, так и со стороны материнской платы компьютера. Вот тут-то и начинаются проблемы. Ведь если, скажем, видеокарта выдаст сигнал с напряжением 3,3 В, в то время как материнская плата рассчитана на 1,5 В или 0,8 В – результат окажется непредсказуем… Поэтому, прежде чем ставить неизвестную видеокарту, следует разобраться, как правильно совмещать между собой AGP-видеокарту и материнскую плату во избежание проблем. Понятно, производители должны были предусмотреть защиту, исключающую возможность установки видеокарт на материнские платы, рассчитанные, прежде всего, на несовместимые сигнальные напряжения. Такая защита была предусмотрена, хотя её и нельзя назвать полностью эффективной. Первоначально защита была реализована с помощью ключей AGP-разъёмов. На данный момент существует три основных типа разъёмов для AGP видеокарт.Теперь разберемся, что куда устанавливается. С устаревшим AGP 1.0 (рис.1) проще всего: если это материнская плата, то сюда ставятся видеокарты, рассчитанные на 3,3 В, либо универсальные (рис.4), которые могут работать на разных напряжениях и в разных режимах, вплоть до 8Х. В последнем случае производитель должен гарантировать, что его видеокарта совместима, по крайней мере, с напряжением 3,3 В. Понятное дело, что гарантии неких безымянных производителей не слишком надежны. С видеокартами AGP 2.0 и AGP 3.0 (рис.2) уже не всё столь прозрачно. Напряжения сигнала у них разные (1,5 и 0,8 В), а вот разъём один и тот же – туда можно вставить любую из них. Пока что неизвестны видеокарты или материнские платы в которых была бы реализована поддержка только AGP 3.0 (8Х) с напряжением 0,8 В. Современные платы работают в обоих режимах (4Х/8Х), с соответствующими напряжениями. Требуемый уровень напряжения определяется и устанавливается автоматически. Ситуация с разъёмами AGP Universal (рис.3), которыми оснащалось огромное количество видеокарт и устаревших материнских плат, наиболее запутана. Здесь нужно соблюдать особую осторожность. AGP Universal появился вместе с AGP 2.0 (4Х). Тогда это обозначало, что видеокарта может работать в режимах 1Х/2Х/4Х, выбор напряжения сигнала 3,3 или 1,5 В на ней происходит автоматически, в зависимости от того, на какую материнскую плату та устанавливается. Но уже в то время в продаже появились видеокарты на чипах nVidia TNT-2 Vanta, у которых не было реализовано поддержки 4Х, но, тем не менее, на их разъёмах красовались обе прорези AGP Universal. Последние модели видеокарт с разъёмом AGP Universal, по идее, должны поддерживать все значения напряжений, вплоть до 3,3 В. Но это далеко не всегда означает, что такую видеокарту возможно использовать на старой материнской плате с поддержкой только AGP 1.0 (2Х). Этой проблемы мы коснемся несколько ниже, на примерах. Теперь о материнских платах с разъёмом AGP Universal на борту. Появились тогда же, что и видеокарты с AGP 2.0 (4X). Если на материнской плате установлен разъём AGP Universal, то это означает, что она поддерживает, по крайней мере, спецификации AGP 1.0 и 2.0, со стороны платы происходит автоматический выбор напряжения 1,5 или 3,3 В. Всё было хорошо до тех пор, пока Intel не начала выпускать чипсет 845-й серии, у которого поддержка напряжения 3,3 В отсутствует. При этом многие производители продолжали оснащать материнские платы на основе нового на то время 845ХX чипсета разъёмами AGP Universal, в которые могли устанавливаться видеокарты с напряжением сигнала 3,3 В. Почему так произошло, достоверно неизвестно – возможно, производители материнских плат понадеялись на защиту в чипсете, которой на самом деле не оказалось. Таким образом, если на материнскую плату с чипсетом Intel 845XX, оснащенную AGP Universal устанавливалась видеокарта стандарта 1Х/2Х, то материнская плата попросту сгорала. Ведь видеокарта подавала на чипсет напряжение 3,3 В, на которое тот не рассчитан и не выдерживал его. Потом, конечно, спохватились. На материнских платах начали ставить соответствующие им разъёмы AGP 2.0, а некоторые даже стали оснащать защитой, автоматически отключающей напряжение при неправильном совмещении комплектующих. Но всё же некоторая часть материнских плат на базе чипсетов Intel 845ХХ с AGP Universal уже была продана и сейчас находится на руках у пользователей. Такие платы представляют собой потенциальную опасность. Чего следует опасаться… Если на материнской плате установлен разъем AGP Universal, то все же стоит с осторожностью ставить на нее старые 3,3-вольтовые видеокарты. Обязательно проверяйте, не собрана ли эта материнская плата на базе пресловутого чипсета Intel 845XX, на которых второпях наставили много разъёмов без защиты от 3,3 В, без соответствующей поддержки по напряжению со стороны чипсета. Да и на других платах стоит проверять, поддерживает ли чипсет AGP 2X напряжение сигнала 3,3 В. Нельзя полностью исключать ситуацию, когда некий безымянный (а то даже и именитый) сборщик ставил на плату те разъёмы, которые в тот момент оказались на складе… Большинство современных материнских плат не поддерживает AGP видеокарты с напряжением 3,3 В. На таких материнских платах стоит разъём AGP с соответствующим ключом (AGP 2.0/3.0), препятствующим установке видеокарт, легально отвечающим только спецификации AGP 1.0 (2Х). Однако, стоит учитывать, что попадаются старые видеокарты спецификации AGP 1.0, но их разъём почему-то выполнен с двумя прорезями, то есть универсален. Наверное, издержки "левого" производства. Такую видеокарту можно вставить в любую плату, в том числе с защитным ключом для AGP 4Х/8Х; последствия, естественно, непредсказуемы. Отсюда вывод – не всякая видеокарта с разъёмом AGP Universal действительно является универсальной. Здесь попадаются как 1,5 В, так и 3,3-вольтовые карты. Если 1,5-вольтовую видеокарту вставить в старую материнскую плату с AGP 2X (3,3 В), то, по всем законам физики, это также должно закончится плачевно. Правда, самому мне таких видеокарт никогда видеть не доводилось. Ну и последнее. Если новая видеокарта оснащена разъёмом AGP Universal, то теоретически это означает, что эта карта поддерживает режимы 2X/4X, а то даже 1Х и 8Х. Она может работать при разных уровнях напряжений, оснащена системой автоматического выбора нужного напряжения. Если производитель надежен и в описании видеокарты заявлена поддержка всего вышеозначенного, то это очень хорошо. Но всё же последнее не означает, что такую видеокарту можно безбоязненно устанавливать на старые материнские платы с AGP 2X. Дело в том, что современные игровые видеоадаптеры потребляют большую электрическую мощность. Старые системные платы попросту не рассчитывались на большую мощность в AGP слоте. Да и с другой стороны: ставить высокопроизводительную видеокарту в материнскую плату класса AGP 2X нет особого смысла, ибо видеоадаптер всё равно не сможет развить свою скорость из-за ограничения старой AGP-шины. Король умер, да здравствует король – PCI-Express Уже всем ясно, что появившаяся в 1997 году AGP к сегодняшнему дню – уже седая старость, как бы её не омолаживали. В этой области давно назревали перемены. Современному компьютеру нужна была замена, и прежде всего, устаревшей шине PCI и её производной, которой является AGP. При внедрении новой универсальной высокопроизводительной шины как единой архитектуры ввода/вывода внутри компьютера нет никакого смысла разрабатывать интерфейс исключительно для видеокарт, как были вынуждены поступать раньше на примере AGP. И вот в конце 2004 года на материнских платах начала появляться новая шина PCI-Express, удовлетворяющая самым высоким требованиям по пропускной способности. Естественно, видеоакселераторы никак не могли остаться в стороне и примерили обновку на себя первыми. Но разберемся со всем по порядку. Базовая спецификация PCI-Express была утверждена в 2002 году. Ее разработка проводится организацией PCI-SIG при активной поддержке Intel и ряда других ведущих компаний компьютерной отрасли. Сейчас именно Intel довольно агрессивно продвигает этот стандарт. В отличие от старых параллельных шин PCI, AGP, ISA, принцип передачи данных PCI-Express является последовательным. PCI-Express работает по принципу "точка-точка", то есть одна шина в чистом виде может объединять только два устройства. Поэтому в её архитектуре предусматривается свитч, распределяющий сигналы между всеми устройствами PCI-Express. Это принципиальное отличие от PCI, где на общую шину включаются все устройства. За счёт последовательной передачи данных удается достичь огромных тактовых частот, на два порядка превышающих рабочие частоты старых параллельных шин. Сейчас PCI-Express работает на частоте 2,5 ГГц, хотя в перспективе она может быть легко масштабирована, лимитом здесь считается 10 ГГц. Уже при частоте 2,5 ГГц достигается скорость передачи данных 250 Мбайт/с независимо в каждую сторону (полный дуплекс). Из этого потока нужно вычесть потери на избыточное кодирование по схеме "8/10", применяемое в PCI-Express, и мы получим эффективную скорость передачи данных на уровне 200 Мбайт/с на одну линию передачи.Разработчики уделили внимание проблеме масштабируемости производительности. Они отошли от принципа единого разъёма – в шине PCI-Express изначально предусмотрена возможность наращивания независимых линий передачи данных. Линия передачи PCI-Express х1 (одна линия) имеет весьма скромные показатели – эффективная пропускная способность до 200 Мбайт/с. Но за счет добавления стандартных секций в разъёме, пропускная способность может быть легко наращена до 6400 Мбайт/с – PCI-Express x32 (32 линии). Предаваемые данные поровну распределяются между линиями по принципу: n-й байт на n-ю линию. При всём этом, линии передачи данных в разъёме PCI-Express остаются независимыми, работают в асинхронном режиме. Ко всему достигается обратная совместимость: в многоканальные разъёмы PCI-Express можно вставлять платы расширения, рассчитанные на меньшее число каналов. Но PCI-SIG не сидит сложа руки. Эта организация приняла решение вдвое увеличить пропускную способность нового поколения PCI-Express. Максимальная скорость передачи данных вскоре достигнет 5 Гбайт/с. Ожидается, что спецификация на новое поколение PCI-Express будет принята уже в этом году, а первая продукция на основе новой шины появится на рынке начиная с 2007 года. Предполагается, что в новом поколении PCI-Express будет реализована возможность автоматического снижения скорости с 5 Мбайт/с до стандартных сейчас 2,5 Мбайт/с, в тех случаях, когда это необходимо. Таким образом, можно надеяться на простую обратную совместимость следующего поколения шины PCI-Express. Следует также отметить – помимо скорости 5 Мбайт/с рассматривались варианты 6 Мбайт/с и 6,25 Мбайт/с. Вот так стремительно развивается новая технология. В наше время немаловажен и экономический эффект. Последовательная шина требует меньше проводников на печатной плате, таким образом, высвобождается место, упрощается дизайн, уменьшаются электрические наводки. Каждая линия передачи данных состоит из двух дифференциальных контактных пар, для чего необходимо только четыре контакта. Уровню логической "1" сигнала PCI-Express соответствует напряжение 0,8 В. Для PCI-Express предусмотрена автономная система энергосбережения: питание от разъёма должно отключаться при отсутствии активности в промежутке определённого времен. Кроме того, при условии поддержки со стороны карты расширения, PCI-Express позволяет производить горячую замену устройств. Разъём PCI-Express делится ключом на две части. Первая часть (та, что ближе к задней стенке корпуса) одинакова для всех разъёмов и предназначена для питания карты. Сюда подводятся напряжения 3,3 В и 12 В. Спецификацией предусматривается подводка мощности 60 Вт. По другую сторону от ключа расположены контакты секций линий передачи данных: от одной до тридцати двух. Соответственно количеству линий передачи меняется длина разъёма. Самые короткие разъёмы PCI-Express x1, длина PCI-Express x16 примерно равняется размеру обычного PCI слота.PCI-Express поддерживает совместимость с PCI на программном уровне, то есть существующие операционные системы должны загружаться без каких-либо изменений. Помимо того, конфигурация и драйверы устройств PCI-Express будут совместимы с существующими PCI-вариантами. Вначале на материнских платах разъёмы PCI-Express будут соседствовать с традиционными PCI-слотами. Одними из первых устройств, которые стали массово выпускаться для шины PCI-Express, конечно же, стали видеоадаптеры. Посчитали, что для видеоадаптера в самый раз, да ещё с запасом на будущее, подойдет 164-контактный разъём PCI-Express x16. Эффективная пропускная способность PCI-Express x16 заметно выше таковой у AGP 8X: 3200 Мбайт/с против примерно 2000 Мбайт/с у AGP 8X. Другое дело, что даже самые современные видеоакселераторы пока не могут загрузить шину PCI-Express x16 работой полностью. По правде говоря, даже возможности AGP 8X пока что не исчерпаны полностью. Нагрузка на шину сглаживается также и за счет того, что для современных видеокарт с 256 Мбайт памяти на борту из-за большого буфера не требуется частая подкачка данных в память. Да и разработчики приложений, прежде всего игр, видимо, стараются писать программы так, чтобы не нагружать видеокарту потоком информации более, чем доступно AGP 8X. Надо полагать, что ситуация коренным образом изменится лишь в перспективе, с появлением более мощных видеоакселераторов и новых приложений. На сегодняшний день видеокарта – не единственное устройство, нацелившееся на перспективную шину PCI-Express. В эту когорту следует добавить всех тех, кому уже не хватает возможностей морально устаревшей шины PCI. Это прежде всего: сетевые контроллеры Gigabit Ethernet, RAID-контроллеры массивов жёстких дисков, карты для кодирования HDTV-потока в реальном времени. Ходит слух, что с помощью PCI-Express шины можно будет установить связь между южным и северным мостами чипсета. Тайваньская компания Prolink объявила о выпуске популярного бытового устройства – "первого в мире" ТВ-тюнера PixelView® PlayTV PCX600 для шины PCI-Express, поддерживающего одновременный показ двух каналов, с поддержкой NTSC, PAL, SECAM вместе со всеми субформатами, а также видео и стерео-аудиовходами в композитном и S-Video форматах плюс оптический вход S/PDIF. Не приходится сомневаться, что количество устройств с поддержкой шины PCI-Express со временем будет только расти, хотя это и не случится слишком быстро. Что день грядущий нам готовит… Какое заключение можно сделать, сравнивая всё ещё отвечающую требованиям сегодняшнего дня, уходящую AGP 8X, с новой архитектурой PCI-Express? Что касается видеоадаптеров, то здесь пока что сохраняется паритет сил. Даже для топовых моделей видеоакселераторов простая замена интерфейса из AGP 8X на PCI-Express x16 не даёт прироста в производительности. Да и о каком приросте может быть речь, если современные видеоакселераторы попросту ещё не переросли и тех 2133 Мбайт/с, которые обеспечивает AGP 8X. Тем не менее, Intel отказалась от поддержки шины AGP на своих новых чипсетах в пользу PCI-Express, что, конечно же, здорово подстегнёт вытеснение с рынка AGP-видеокарт. Другие чипмейкеры также довольно тепло приняли PCI-Express, и производители материнских плат всё чаще делают выбор в пользу PCI-Express x16 в качестве интерфейса видеоадаптера. Предполагается типичный набор слотов: один PCI-Express x16, несколько PCI-Express x1 и два-три обычных PCI. Но могут быть и исключения…Курьёзом 2004 года можно считать материнские платы, на которых помимо интерфейса для видео PCI-Express x16 устанавливается также разъём AGP-шины …без аппаратной поддержки последней со стороны чипсета. Как такое могло случиться? Да очень просто. Преследуя маркетинговые цели, полагая, что небольшое число пользователей никак не пожелает отказываться от шины AGP на новых платах, даже в счёт её ущербности, некоторые производители материнских плат сумели прилепить AGP разъём на платы на базе чипсета Intel 915, в котором нет поддержки этой шины. Примером может служить ECS 915P-A. Что из этого получилось? – падение производительности AGP видеокарт до 30% и ниже. А как могло быть иначе при попытке имитировать AGP посредством PCI шины. Однако эта бутафория, названная ECS "AGP Express" смогла просуществовать недолго, ибо осторожная VIA в своих новых чипсетах PT890 и K8T890 заложила аппаратную поддержку как PCI-Express, так и AGP. Так появились материнские платы с двумя полноценными видеоинтерфейсами на борту: AGP и PCI-Express. Хотя кое-кто посчитал, что один PCI-Express x16 – хорошо, но два – еще лучше. В результате компания NVIDIA представила весьма неоднозначный, а главное – быстрый чипсет nForce4 SLI, поддерживающий две видеокарты PCI-Express. Дабы не ударить в грязь лицом, VIA тоже заявила, что её чипсет K8T890 Pro сможет поддерживать два графических адаптера PCI-Express x16. Но самый интересный номер, наверное, отмочили инженеры Gigabyte Technology. Материнская плата GA-8I915P Dual Graphic основана на самом обычном чипсете Intel 915P, но, тем не менее, она может одновременно управляться с двумя графическими платами PCI-Express x16, располагая двумя соответствующими разъёмами на борту. Таким образом, в подобные платы, даже те, что имеют один PCI-Express x16 и один AGP 8X, можно устанавливать две видеокарты, подключая к каждой по два монитора. Возможно, для кого-то это покажется очень важным приобретением.Если взглянуть на рынок графических адаптеров, то мы увидим, что сейчас рядом графических чипов комплектуются как AGP 8X, так и PCI-Express x16 видеокарты. После насыщения рынка перед пользователями будет стоять проблема – что выбрать? Однозначно можно утверждать, что если речь идет только об апгрейде видеосистемы на уже имеющемся ПК, то нет никакого смысла останавливаться на более дорогом видеоадаптере с PCI-Express x16, ведь это повлечет за собой необходимость замены материнской платы. Другое дело, если собирается новая, перспективная на будущее система. Самые новые материнские платы с системной логикой от Intel предполагают использование для видеоадаптера только шины PCI-Express x16. Здесь уже никуда не денешься, придется подбирать PCI-Express x16 видеокарту. Компромиссом могут служить материнские платы на базе чипсетов VIA PT890, K8T890, на которых может быть реализована поддержка как нового графического интерфейса PCI-Express x16, так и сходящей на обочину истории шины AGP. Поживём – увидим.