Появившееся прошлой весной семейство графических процессоров с кодовым названием R600 положило начало серии HD 2xxx. Важнейшими функциональными отличиями этой серии стали поддержка нового программного интерфейса (API) Microsoft DirectX 10, реализованного в операционной системе Windows Vista, а также встроенный унифицированный аппаратный декодер видео высокого разрешения UVD (кроме HD 2900), работающий с форматами H.264 и VC-1 и использующийся для кодирования записей на дисках Bluray и HD DVD. Как ни странно, в топовой серии HD 2900 XT модуль UVD отсутствует.
Объяснение может быть только одно: мощное графическое ядро и без сторонней помощи справится с декодированием видео, тем более что при воспроизведении фильмов видеокарта вряд ли будет занята чемто другим.
Архитектура R600 стала для AMD (ATI) значительным шагом вперед. Впервые в графических ускорителях этой компании стала использоваться унифицированная архитектура, прошедшая обкатку в специализированном процессоре для игровой приставки Microsoft Xbox 360. В ее основу положены унифицированные суперскалярные потоковые процессоры, которых в R600 целых 320 штук. Эти процессоры не имеют четкой специализации и могут при необходимости выполнять расчет любых данных (пиксельных, вершинных, гео метрических и др.). Распределением потоков данных и "раздачей заданий" вычислительным модулям занимается диспетчер потоков (Ultra-Threaded Dispatch Processor).
Упомянутые 320 потоковых процессоров не следует сравнивать, например, со 128 скалярными процессорами в графическом ядре nVidia G80. Дело в том, что 320 заявленных AMD/ATI потоковых процессоров - это 64 суперскалярных процессора, состоящие из пяти шейдерных блоков (арифметико-логических устройств, ALU) в каждом. При этом только один блок является универсальным, способным выполнять сложные вычисления (синусы, косинусы, логарифмы, экспоненты и пр.); остальные четыре рассчитаны лишь на арифметические операции сложения и умножения.
В ядре же nVidia G80 все 128 скалярных процессора являются универсальными.
Каждый ALU в R600 выполняет одну инструкцию, а число потоков равно 64, то есть числу суперскалярных процессоров. И хотя в G80 вдвое больше потоков, в R600 количество операций за такт может достигать 320, что означает гораздо более высокую скорость обработки шейдеров. Но только теоретически: все зависит от "оптимальности" кода и от эффективности работы диспетчера, ведь в худшем случае производительность может упасть до 64 операций за такт.
Иными словами, в определенном смысле архитектура R600 уступает архитектуре G80, где производительность практически не зависит от эффективности кода. К тому же у R600 всего 16 текстурных блоков, а у G80 - вдвое больше, что дает процессору nVidia неоспоримое преимущество в играх с относительно простой графикой, не перегруженной шейдерами.
Унифицированная архитектура отлично масштабируется, то есть добавляя процессоры или урезая их количество, можно конструировать более мощные или менее мощные видеоускорители. Так, в чипе среднего уровня RV630 мы видим 120 потоковых процессоров, а в бюджетном RV610 - всего лишь 40. Разумеется, этим отличия не исчерпываются, и в младших модификациях отсутствуют некоторые блоки, которые бесполезны в процессоре, не обладающем достаточной производительностью.
Необычным нововведением для компьютерных видеоускорителей стал программируемый блок тесселяции, то есть разбиения поверхностей на полигоны.
Этот модуль, который инженеры AMD позаимствовали из процессора ATI Xenos для игровой приставки Microsoft Xbox, позволяет аппаратно повышать детализацию изображения без дополнительной нагрузки на центральный процессор. Единственное "но" - для его использования разработчики игр должны заложить в шейдеры соответствующие алгоритмы.
Еще одна конструктивная особенность R600, отсутствующая в RV610/630, - кольцевая шина памяти, которая существенно доработана по сравнению с вариантом предыдущего поколения, реализованным в процессорах серии R520 (семейство X1xxx).
Создавая кольцевую шину, инженеры AMD/ATI стремились минимизировать задержки и повысить надежность доступа к видеопамяти. Главное отличие новой кольцевой шины от старой - двунаправленность (раньше запросы графического ядра шли непосредственно к памяти, а по кольцевой шине отправлялись только ответы).
В процессоре R600 кольцевая шина с фактической шириной 1024 бита (512 бит в двух направлениях) соединяет восемь 64-битных каналов памяти и при использовании памяти типа GDDR3 обеспечивает пропускную способность более 100 Гбайт/с.
Одним из важнейших нововведений в R600 стал специальный алгоритм сглаживания CFAA, позволяющий добиться качества 16x MSAA с гораздо меньшими затратами вычислительных ресурсов. Идея заключается в расчете картинки с учетом информации в 4–8 соседних сэмплах, что ведет к некоторому размытию изображения, но улучшает его визуальное восприятие. В сущности, это ответ AMD/ATI на аналогичный алгоритм сглаживания CSAA, предложенный чуть раньше компанией nVidia.