Russian Chinese (Simplified) English French German Ukrainian

Вулкан

GeForce 6800 Ultra особенности архитектуры

В апреле 2004 года nVidia представила новый графический процессор NV40. Новый графический процессор NV30, который должен был помочь компании сокрушить доминирующую в секторе DirectX 9-совместимых решений ATI Technologies, не смог вывести NVIDIA в лидеры. Взлелеянная в лабораториях NVIDIA архитектура, превосходящая по возможностям требования стандарта DirectX 9, оказалась весьма громоздкой с точки зрения количества транзисторов и весьма уязвимой в том виде, в каком она впервые увидела свет в лице GeForce FX 5800 Ultra. Недостатки архитектуры графического процессора, а также ставка на высокочастотную память GDDR2 и 128-битную шину доступа к видеопамяти, привели к тому, что новинка от NVIDIA во многих задачах показывала гораздо более низкие результаты, нежели RADEON 9700 PRO от ATI.
 
geforce_go_6_series_031 

NVIDIA быстро исправила свою ошибку, выпустив улучшенную версию NV30 – графический процессор NV35, который оказался гораздо более жизнеспособным. Тем не менее, горечь поражения с NV30 оказалась велика – компания прекратила выпуск NV30, произведя всего лишь несколько десятков тысяч этих процессоров, а затем вообще убрала все упоминания о NV30 с корпоративного сайта.

Минул год. За это время компания выпустила ряд новых довольно удачных решений, на смену NV35 пришел NV38. Драйверный ряд Detonator был предан забвению, а его место заняли драйверы ForceWare, с которыми, благодаря применению специального компилятора шейдерного кода, была значительно повышена производительность видеоадаптеров NVIDIA в играх, использующих пиксельные шейдеры DirectX 9. Тем не менее, наилучшим выбором для энтузиастов по-прежнему оставались видеоадаптеры на базе графических процессоров от ATI Technologies – RADEON 9800 PRO, а затем и RADEON 9800 XT.

Конечно, все это время команда инженеров-разработчиков NVIDIA не сидела сложа руки - компания стемилась взять реванш у конкурента. Слухи о графическом процессоре-монстре NV40 стали появляться задолго того, как он был впервые воплощен в кремнии. Говорилось о шестнадцати конвейерах рендеринга, поддержке пиксельных и вершинных шейдеров версии 3.0 и о других нововведениях. Циркулировавшие слухи были самыми разнообразными, вплоть до «достоверных сведений» о том, что новинка будет использовать память GDDR3, работающую на частоте 1600 МГц, при этом частота ядра будет составлять до 600 МГц

На этот раз компания действовала более осторожно и основательно, стараясь всеми силами не допустить повторения ситуации с NV30. Любопытно, что в названиях будущих видеоадаптеров на базе NV40 было принято решение вовсе отказаться от букв "FX" – они были переименованы в GeForce 6800 Ultra и GeForce 6800.

nv_031

При разработке графического процессора следующего поколения компания NVIDIA не могла не учесть предыдущий опыт - ситуация, когда практически во всех ценовых категориях производительность графических процессоров от конкурента оказывается выше, несмотря на формальное технологическое превосходство NVIDIA, компанию никак не устраивала. Поэтому, помимо дальнейшего расширения функциональности и введения поддержки шейдеров модели 3.0, самое пристальное внимание при создании NV40 было уделено повышению производительности и, особенно, усилению изначально слабых мест архитектуры CineFX.

Пиксельные конвейеры NVIDIA GeForce 6800/6800 Ultra Применительно к NV40 и архитектуре CineFX 3.0 нельзя было говорить о пиксельных конвейерах в традиционном смысле. Начиная с NV30 и архитектуры CineFX, графические процессоры от NVIDIA вместо нескольких «независимых» пиксельных конвейеров имели один «широкий» пиксельный конвейер, в котором в обработке находятся одновременно сразу несколько пикселов. NV40 наследует архитектуру NV3x, но при этом, разумеется, имела значительные усовершенствования и дополнения.

Пиксельный конвейер NV40 значительно, в 4 раза , был «расширен» по сравнению с конвейером NV35 - теперь в обработке моггли находиться 16 пикселов одновременно, и максимальная скорость вывода составляет 16 пикселов за такт. При наложении более чем одной текстуры скорость вывода пикселов снижается - например, при наложении двух текстур обработка тех же 16 пикселов займет два такта, то есть, скорость вывода снизится до 8 пикселов за такт. При работе с Z-буфером или буфером шаблонов пиксельный конвейер NV40 так же, как и NV35, «ускоряется». Общее четырехкратное увеличение производительности коснулось и работы в таких условиях: теперь графический процессор был способен выводить максимум 32 значения Z за такт. Итак, «грубой силы» у NV40 было предостаточно: можно смело говорить о четырехкратном увеличении скорости заполнения по сравнению с NV35.

Вместе с «расширением» пиксельного конвейера компания NVIDIA нарастила и вычислительную мощность пиксельного процессора. Во-первых, число доступных временных регистров - самое слабое место пиксельных процессоров чипов серии GeForce FX, связанное с особенностями строения пиксельного конвейера NV3x и NV40 - было увеличено, и теперь сложные пиксельные шейдеры при вычислениях с полной 32-битной точностью не должны были ставить пиксельный процессор «на колени».
Во-вторых, по всей видимости, число полноценных ALU (арифметико-логических устройств), выполняющих операции над компонентами пикселов, в NV40 удвоено. Точнее, два типа FP ALU NV35, «полноценные» и «упрощенные», пришедшие на замену целочисленным ALU NV30, превратились в «полноценные» ALU, выполняющие операции любой сложности с одинаковой скоростью. Вот как NVIDIA показывала преимущество CineFX 3.0 с удвоенным числом ALU над «традиционными» архитектурами:

419151

Итак, арифметико-логические устройства NV40 могли выполнить до 8 операций над компонентами одного пиксела за один такт, а если учесть, что конвейер NV40 обрабатывал 16 пикселов одновременно, то в сумме получается, что NV40 имел 32 полноценных ALU, работающих с плавающей точкой, и они могут произвести до 128 операций над компонентами пиксела за такт.

Пиксельные шейдеры 3.0
Появившаяся в NV40 поддержка пиксельных шейдеров модели 3.0 подразумевала, в первую очередь, поддержку динамических циклов и ветвлений в пиксельных шейдерах. Теперь решение о том, какая ветвь шейдера будет исполняться для того или иного пиксела, принимались прямо по ходу исполнения шейдера - переменные, значения которых определяют ход исполнения шейдера, могут изменяться, не являясь заранее определенными константами, как в случае со статическими ветвлениями и циклами.
Очевидно, при исполнении шейдеров 2.0 новая функциональность NV40 никак себя не проявила, здесь были важны лишь скоростные характеристики пиксельного процессора.

NVIDIA HPDR – изображения становятся реалистичнее
Графические процессоры от NVIDIA предыдущего поколения не имели поддержки вывода информации из пиксельного шейдера в несколько буферов одновременно (Multiple Render Targets) и рендеринга в буфер с представлением данных в формате с плавающей точкой (FP Render Target). Семейство чипов от ATI изначально поддерживало эти функции, выгодно отличаясь от графических процессоров NVIDIA.

В NV40, наконец, появилась полная поддержка как Multiple Render Targets, так и FP Render Target, что позволило маркетологам компании ввести в обиход новый термин: NVIDIA HPDR. За этой аббревиатурой, расшифровывающейся как High-Precision Dynamic-Range, скрывается возможность построения сцен с высоким динамическим диапазоном освещенности (HDRI, High Dynamic Range Images).

Компания NVIDIA использовала 16-битный формат OpenEXR, разработанный студией Industrial Light and Magic (ILM). В 16-битном описании OpenEXR один бит отводился под знак показателя экспоненты, пять битов для значения показателя экспоненты и десять бит для представления мантисс хроматических координат цвета (u, v), по пять бит на координату. Динамический диапазон представления составляет девять порядков величины – от 6.14*10^-5 до 6.41*10^4.

Serios Sam 2 HDR

4838627771 


Процесс построения и вывода HDR изображения силами графического процессора NV40 разбиваелся на 3 фазы:
Light Transport – расчет сцены с высоким динамическим диапазоном освещенности и сохранение информации о световых характеристиках для каждого пиксела в буфере, использующем формат представления данных с плавающей точкой – OpenEXR.
NVIDIA подчеркивала, что NV40 поддерживал работу с данными, представленными в формате с плавающей точкой, на всех этапах построения HDR-сцены, чем гарантировал минимальные потери точности:
- вычисления в шейдерах с плавающей точкой,
- фильтрация текстур с плавающей точкой,
- операции с буферами, использующими представление данных в формате с плавающей точкой.
Tone Mapping – перевод изображения с высоким динамическим диапазоном в LDRI-формат RGBA или sRGB.
Color and Gamma Correction – перевод изображения в цветовое пространство устройства отображения – CRT или LCD монитора и т.д..

Итак, с появлением NV40 и технологии HPDR, изображения с высоким динамическим диапазоном, еще на один шаг приближающие приход фотореалистичной графики в игровые миры, стали доступны не только владельцам видеокарт от ATI, но и поклонникам NVIDIA.

Вершинные конвейеры, вершинные шейдеры 3.0
Усилив пиксельный процессор NV40, компания NVIDIA не забыла и о «геометрической силе» новых GeForce. Новые графические чипы имели вдвое больше вершинных конвейеров – шесть против трех у NVIDIA GeForce FX 5950 Ultra. Новые игры имели всё более и более сложные модели, количество полигонов в сценах расло, поэтому удвоенная вершинная производительность новых графических процессоров от NVIDIA не оказалась невостребованной.
Вместе с увеличением производительности возросла и функциональность вершинных процессорв NV40 – в новом графическом процессоре NVIDIA заявила полную поддержку вершинных шейдеров модели 3.0. Как и в случае с пиксельными шейдерами, длина вершинных шейдеров была теперь практически не ограничена (на деле она ограничена спецификациями шейдеров модели 3.0 в DirectX), при этом шейдеры могут иметь истинно динамические ветвления и циклы – решение о том, какой код будет исполняться для той или иной вершины, принимается прямо по ходу исполнения шейдера, а не на этапе компиляции.

Vertex Frequency Stream Divider Еще одна интересная возможность, которой были наделены вершинные процессоры NV40. Используя этот “делитель частоты”, вершинные процессоры NV40 могли считывать данные из потоков и обновлять входные параметры вершинного шейдера не для каждой обрабатываемой вершины, как ранее, а реже, с частотой, которую можно изменять.

NVIDIA приводит такой пример применения этой возможности: считывая из потока с определенной частотой данные, определяющие например, анимацию, можно на основе одного и того же набора данных, определяющих геометрию модели, например, солдата, создать целую армию из солдат, которые не будут абсолютно одинаковыми «клонами» - каждый будет отличаться от других, имея уникальный внешний вид и уникальную анимацию.

UltraShadow II
Впервые заявленная в графическом процессоре NV35, технология UltraShadow, получив индекс «2» в названии, перешла и в NV40. Суть технологии не изменилась: при расчетах динамических теней с помощью буфера шаблонов можно было указать граничные величины Z (depth bounds), за пределами которых обсчет теней от световых источников производиться не будет. Тем самым можно было сэкономить на вычислениях и повысить производительность в сценах, использующих расчет теней в реальном времени.
Действие UltraShadow II компания NVIDIA иллюстрировала схемой: на ней отмечены граничные значения (zmin и zmax), за пределами которых расчет буфера шаблонов не производится:

419161

Возможность задания граничных условий для расчета теней вкупе с известной способностью NV40 «ускоряться» при расчете буфера шаблонов и Z-буфера, то есть, выводить уже не 16, а 32 значения за такт, позволяло рассчитывать на появление серьезного преимущества NV40 перед конкурентами в играх, широко использующих расчет динамических теней с помощью буфера шаблонов. 
Пример игры, использующей динамический расчет теней, или, более того, чей игровой процесс буквально «построен» на тенях – Doom3.

Программируемый видеопроцессор
Домашний компьютер уже давно позиционировался в качестве универсальной платформы для развлечений, а значит, разработчикам небыло особого смысла разделять графические процессоры, предназначенные для использования в персональных компьютерах, по классам типичных задач - как можно более полным функциональным набором наделяется вся линейка чипов.
NV40 имел программируемый видеопроцессор, предназначенный для кодирования/декодирования видеопотоков и выполнения различных операций над ними. Ранее о таком заявляла компания S3 с ее VPU DeltaChrome. Кроме того, видеоадаптеры ATI RADEON 9500/9600/9700/9800 также могли декодировать видео, используя мощности пиксельных процессоров. Видеопроцессор NV40, NVIDIA VP, обладал следующими возможностями:
Поддержка адаптивного деинтерлейсинга
Высококачественное масштабирование и фильтрация
Удаление блочных артефактов
Встроенный ТВ-кодер
Конверсия цветовых пространств
Конверсия частоты кадров
Гамма-коррекция
Шумоподавление
Поддержка HDTV (режимы 720p, 1080i, 480p, CGMS)
Аппаратная синхронизация аудио- и видеопотоков
Поддержка кодирования и декодирования MPEG-1/2/4
Поддержка декодирования WMV9/H.264

Полноэкранное сглаживание: новый уровень качества
Одним из существенных различий между графическими процессорами семейства R3х0 от ATI и чипами серии GeForce FX от NVIDIA являлся разный подход к реализации полноэкранного сглаживания. GeForce FX от NVIDIA поддерживали мультисэмплинг, суперсэмплинг и их комбинации, используя традиционное расположение субпикселов на упорядоченной ортогональной решетке (Ordered Grid), в то время как графические процессоры от ATI используют мультисэмплинг с расположением субпикселов на повернутой решетке.

419181

Метод полноэкранного сглаживания, использующий расположение субпикселов на повернутой решетке, при тех же затратах обеспечивал гораздо более высокое качество сглаживания границ полигонов по сравнению с методом, использующим традиционное расположение субпикселов.

После провала NV30 nVidia приложила все усилия для возвращения утраченных позиций. И это компании удалось сделать с выпуском видеокарты NV40, также известной как GeForce 6800. Карта была очень эффективной и намного более производительной, чем FX 5900, в том числе и из-за немалого числа транзисторов (222 млн.). NV45, которая тоже называлась GeForce 6800, представляла собой ни что иное, как NV40 с мостом AGP-to-PCI Express, что позволяло карте поддерживать новый стандарт интерфейса и, кроме того, SLI. Технология SLI позволяла сочетать две видеокарты PCI Express GeForce 6 для повышения производительности.Чип содержал 222 миллиона транзисторов и выполнен с учетом норм 0,13 микронного технологического процесса. Требования к питанию для того времени были просто колоссальны – был необходим блок питания мощность 480W или выше, и две свободные линии питания.

Характеристики NVIDIA GeForce 6800 Ultra

 

Наименование GeForce 6800 Ultra
Ядро NV40/NV45
Техпроцесс (мкм) 0.13
Транзисторов (млн) 222
Частота работы ядра 400
Частота работы памяти (DDR) 550 (1100)
Шина и тип памяти GDDR3 256 Bit
ПСП (Гб/с) 35,2
Пиксельных конвейеров 16
TMU на конвейер 1
Текстур за такт 16
Текстур за проход 16
Вершинных конвейеров 6
Pixel Shaders 3.0
Vertex Shaders 3.0
Fill Rate (Mpix/s) 6400
Fill Rate (Mtex/s) 6400
DirectX 9.0c
Anti-Aliasing (Max) SS & MS - 8x
Анизотропная фильтрация (Max) 16x
Объем памяти 256
Интерфейс AGP/PCI-E
RAMDAC 2x400

С выходом компания nVidia, наконец-то, смогла выйти из тягостного болота линейки NV30 и выпустить действительно передовой графический ускоритель, который заставит учащённо биться сердце любого геймера NVIDIA – NV40 это чип, который, уже по традиции, стал родоначальником нового семейства графических чипов от NVIDIA. Установив прочные отношения с разработчиками игр и программного обеспечения в процессе адаптации архитектуры NV30, следующий графический процессор, NV40 компания разрабатывала уже не "наобум", а с оглядкой на требования и пожелания разработчиков.И его представитель GeForce 6800 Ultra – самый быстрый на тот день игровой ускоритель,был способен буквально взорвать игры того времени и игр вышедших в более поздний период.

Far Cry

water_fix1

 

Для того чтобы оставлять комментарии Вам нужно пройти авторизацию

Google