Графический процессорСтр 1 из 12Следующая ⇒
ВИДЕОКАРТЫ 2.1 Видеокарты Видеокарты Современные видеокарты — это одна из самых сложных и дорогих составляющих ПК. Фактически видеокарта представляет собой своеобразный компьютер в компьютере. Плата видеокарты превосходит по сложности разводки и количеству слоев материнскую плату. На самой видеокарте имеется свой процессор и своя оперативная память. Прежде чем переходить к классификации и описанию современных видеокарт, необходимо познакомиться с рядом специфических терминов и понятий, которые традиционно приводятся в качестве характеристик видеокарт. Однако такие характеристики, как текселы, вершинные и пиксельные шейдеры, скорость заполнения и т. д., неразрывно связаны с пониманием принципов формирования трехмерных объектов и принципов работы современных графических ускорителей. Поэтому прежде мы постараемся в самом общем виде дать представление о том, как устроена видеокарта и как формируется трехмерное изображение. Устройство современной видеокарты Любая видеокарта включает в себя следующие обязательные компоненты: · графический процессор; · микросхему BIOS; · видеопамять; · цифроаналоговый преобразователь (RAMDAC); · контроллер интерфейса. Графический процессор На заре развития персональных компьютеров видеокарты выполняли функцию кадрового буфера. Изображение формировалось центральным процессором компьютера и программным обеспечением, а карта отвечала лишь за хранение (в буфере памяти) и вывод с определенной частотой отдельных кадров на монитор. По мере возрастания требований к качеству и реалистичности формируемого изображения, а также к скорости рендеринга отдельных кадров, пришло понимание того факта, что центральный процессор ПК, то есть процессор общего назначения, не в состоянии эффективно решать специфические задачи формирования трехмерного изображения и для этих целей требуется специализированный графический процессор (GPU), который занимался бы исключительно расчетом трехмерного изображения.Собственно, современные графические процессоры по сложности не уступают центральным процессорам (процессорам общего назначения), и разница заключается лишь в их «специализации», благодаря чему они могут более эффективно справляться с задачей формирования изображения, выводимого на экран монитора. Как и центральные процессоры, графические характеризуются такими параметрами, как микроархитектура, тактовая частота работы графического ядра и технологический процесс производства. Графические процессоры обладают и специфическими характеристиками. К примеру, одна из важнейших характеристик графического процессора — это число пиксельных конвейеров (Pixel Pipelines), которое определяет количество обрабатываемых пикселов за один такт. К примеру, количество пиксельных конвейеров может составлять 12 или даже 16. Забегая вперед, отметим, что для построения трехмерного изображения необходимо выполнить целый ряд операций: принять решение, какие объекты вообще должны присутствовать в сцене (видимые и невидимые), определить местоположение вершины, которое задает каждый из этих объектов, построить по этим вершинам грани, заполнить получившиеся полигоны текстурами в соответствии с освещением, степенью детализации и с учетом перспективных искажений. Чем тщательнее делаются все эти расчеты, тем реалистичнее получится трехмерное изображение. Повысить производительность этих рутинных операций можно, разбив их по стадиям и распараллелив. Именно эти функции и решают пиксельные конвейеры. На каждой стадии каждый пиксельный конвейер занимается тем, что просчитывает очередной пиксел конечного изображения с учетом многих факторов, включая освещение сцены. А для ускорения процесса расчета используют сразу несколько конвейеров. К примеру, если используется 16 пиксельных конвейеров, то первый конвейер обрабатывает 1-й, затем 17-й, затем 33-й пиксел и т. д.; второй конвейер — 2-й, 18-й и 34-й соответственно. Количество конвейеров позволяет определить пиковую скорость заполнения видеокарты, которая рассчитывается как произведение частоты ядра на количество конвейеров. Если, к примеру, частота ядра составляет 400 МГц, а количество пиксельных конвейеров равно 12, то скорость заполнения будет 4,8 Гпиксела/с. Помимо пиксельных конвейеров, различают также количество текстурных блоков в каждом конвейере. Число текстурных блоков определяет количество накладываемых текстур за один проход. К примеру, два текстурных блока могут накладывать от двух до четырех текстур за проход. Количество текстурных блоков позволяет определить скорость заполнения в мегатекселах (пикселах текстур). Также в графических процессорах присутствуют вершинные конвейеры (Vertex Pipelines), которые отвечают за расчет геометрии трехмерного изображения. Для того чтобы лучше представить себе структуру современного графического процессора, рассмотрим более детально процесс конвейерного расчета трехмерного изображения. На первом этапе данные о вершинах поступают в вершинные конвейеры, которые занимаются расчетом геометрии сцены. Здесь начинает свою работу так называемый блок T&L (Transform & Lighting), который отвечает за некоторые аспекты работы с геометрией и за освещение и работает в паре с конвейерами. Блок T&L имеет две определяющие характеристики: максимальное количество источников света и количество обрабатываемых полигонов. Обработка данных в вершинном конвейере происходит под управлением специализированной программы, называемой вершинным шейдером (Vertex Shader). На следующем этапе формирования изображения задействуется Z-буфер для отсечения невидимых полигонов и граней каркасной модели трехмерного объекта. Далее происходит текстурирование объектов с фильтрацией самих текстур, для чего задействуются пиксельные конвейеры, работающие под управлением специализированной программы, называемой пиксельным шейдером (Pixel Shader). Необходимо вспомнить о таких программных интерфейсах (Application Programming Interface, API), как OpenGL и Direct3D. В них описаны стандарты для работы с трехмерными изображениями. Приложение вызывает определенную стандартную функцию OpenGL или Direct3D, а шейдеры эту функцию выполняют. Вершинные и пиксельные шейдеры имеют свою версию. На сегодняшний день последней является версия 3.0. И для реализации всех возможностей программ по обработке пикселов и вершин необходимо, чтобы данную версию шейдера поддерживала и видеокарта, и само приложение. На последнем этапе конвейерной обработки данные передаются в буфер кадров. Рассмотренный нами алгоритм формирования изображения является весьма упрощенным. В реальных графических процессорах все обстоит несколько сложнее. К примеру, для повышения качества изображения используется технология сглаживания, фильтрации текстур и т. д. О некоторых из этих технологий будет рассказано далее. Видеопамять Для графического процессора требуется видеопамять, играющая роль кадрового буфера, в который центральный процессор направляет видеоданные, а затем графический процессор считывает оттуда полученную информацию.Кроме того, в видеопамяти располагается Z-буфер и хранятся текстуры. Естественно, для обеспечения эффективной передачи данных важна пропускная способность видеопамяти. Видеопамять графической карты характеризуется теми же параметрами, что и оперативная память ПК, и в этом смысле наиболее важными характеристиками являются пропускная способность шины памяти, по которой данные из видеопамяти передаются к графическому процессору, а также латентность памяти. Пропускная способность шины памяти определяется разрядностью шины памяти и ее эффективной тактовой частотой. К примеру, разрядность шины памяти может составлять 256,128 или 64 бита, а эффективная тактовая частота может достигать 1 ГГц. Ширина шины памяти определяет количество бит, передаваемых между GPU и памятью за один такт. Собственно, пропускную способность шины памяти можно найти, если умножить ширину шины на тактовую частоту. К примеру, если ширина шины составляет 128 бит (16 байт), а тактовая частота памяти равна 250 МГц, то пропускная способность шины будет 4 Гбайт/с. Латентность видеопамяти, то есть время выборки данных из памяти, определяется используемыми чипами памяти, Латентность современных микросхем видеопамяти составляет порядка 2 не и менее. Кроме технических характеристик используемой видеопамяти, не менее важен и ее объем. При недостаточном объеме видеопамяти графический процессор фактически будет простаивать, пока нужные данные подгружаются из оперативной памяти компьютера. Минимальный объем видеопамяти современных видеокарт составляет 128 Мбайт, а максимальный — 512 Мбайт. RAMDАС После обработки графическим процессором и формирования им изображения данные передаются в цифро-аналоговый преобразователь RAMDAC, который непосредственно отвечает за преобразование цифрового сигнала в аналоговый. Дело в том, что все мониторы способны понимать сигнал именно в аналоговом, а не в цифровом виде. Правда, большинство современных ЖК-мониторов, для которых цифровой сигнал является естественным, имеет цифровой видеовход DVI и способно работать именно с цифровым сигналом. Однако для совместимости со всеми типами мониторов видеокарты наделяются аналоговым выходом (нередко в паре с цифровым). Главные характеристики RAMDAC — это тактовая частота и разрядность. Многие современные видеокарты поддерживают одновременную работу с двумя мониторами, поэтому в такие карты устанавливаются по два RAMDAC и, соответственно, по два разъема для подключения монитора. ©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.
|