автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.05, диссертация на тему:Высокопроизводительные графические ускорители для систем индустриального назначения

кандидата технических наук
Корниленко, Александр Владимирович
город
Москва
год
2008
специальность ВАК РФ
05.13.05
Диссертация по информатике, вычислительной технике и управлению на тему «Высокопроизводительные графические ускорители для систем индустриального назначения»

Автореферат диссертации по теме "Высокопроизводительные графические ускорители для систем индустриального назначения"

□□3448267

На правах рукописи

Корниленко Александр Владимирович

ВЫСОКОПРОИЗВОДИТЕЛЬНЫЕ ГРАФИЧЕСКИЕ УСКОРИТЕЛИ ДЛЯ СИСТЕМ ИНДУСТРИАЛЬНОГО НАЗНАЧЕНИЯ

05 13 05 - «Элементы и устройства вычислительной техники и систем

управления»

Автореферат диссертации на соискание ученой степени кандидата технических наук

Автор:

О 2 опт 2008

Москва-2008 г.

003448267

Диссертация выполнена в Научно-исследовательском институте системных исследований Российской Академии Наук.

Научный руководитель:

кандидат технических наук, старший научный сотрудник Бобков Сергей Геннадьевич.

Официальные оппоненты.

доктор технических наук, профессор Адамов Юрий Федорович, ООО «Юник Ай Сиз»

кандидат технических наук,

Черников Владимир Михайлович, НТЦ «Модуль»

Ведущая организация.

ФГУП ЦНИИ автоматики и гидравлики

Защита диссертации состоится 20 октября 2008 года в 15 часов 00 минут на заседании диссертационного совета Д212.130.02 в Московском инженерно-физическом институте (государственном университете) по адресу 115409, г. Москва, Каширское шоссе, 31. тел. 32391-67

С диссертацией можно ознакомиться в библиотеке МИФИ.

Автореферат разослан "19" сентября 2008 г.

Ученый секретарь диссертационного совета д.т.н , профессор

П.К. Скоробогатов

о>/

ОБЩАЯ ХАРАКТЕРИСТИКА ДИССЕРТАЦИИ

Актуальность проблемы

Развитие индустриальных компьютерных систем требует отображения графической информации на экран для оперативной оценки хода технологического процесса и принятия решений Требования, выдвигаемые к индустриальным системам - сохранять функционирование в заданных техническим заданием параметрах при работе в условиях повышенных или пониженных температур (от -85 "С до +125 °С), электромагнитных помех и изменения напряжения питания в диапазоне ±10% Этн требования приводят к задачам построения высокопроизводительных графических подсистем, способных функционировать в данных условиях При этом современные условия требуют вывода информации с высокими разрешениями экрана до 1600 на 1200 точек и отображения до 16 млн цветов

Графические контроллеры являются неотъемлемой частью современных ЭВМ, обеспечивая взаимодействие оператора и вычислительной системы На дисплее отображается не только текстовая, но и графическая информация, делая ЭВМ мощным средством управления и контроля По сложности некоторые современные графические контроллеры уже превосходят центральный процессор Первые ЭВМ, использующие в качестве устройства ввода-вывода терминал, отображали только текстовую информацию, при этом вывод на экран информации осуществлял центральный процессор Появление графического интерфейса способствовало как популяризации первых персональных ЭВМ, так и развитию различных САПР, позволяющих увидеть на экране результат, максимально приближенный к конечному разрабатываемому с помощью САПР продукту Для обеспечения разгрузки центрального процессора от рутинных задач работы с графическими примитивами в современные микросхемы графических контроллеров встраивают графические ускорители

Многие зарубежные фирмы выпускают микросхемы именно для применения в индустриальных компьютерных системах При этом, как правило, характеристики таких видеоконтроллеров отличаются от характеристик микросхем, используемых в персональных ЭВМ, например, отсутствием ускорителя трехмерной графики, но при этом наличием функции вывода на ЭЛТ-дисплей, ЖК-дисплей и ТВ Следует отметить, что универсальность ЗО-адаптеров и сложность выполняемых ими задач приводят к тому, что для их нормального функционирования требуется мощная система охлаждения, в ряде современных моделей даже используется водяное охлаждение В индустриальных видеоадаптерах охлаждение должно обеспечиваться пассивными радиаторами Выпускаемые микросхемы графических контроллеров для персональных ЭВМ, обеспечивающие поддержку эффектов трехмерной графики, не удовлетворяют требованиям функционирования в жестких индустриальных условиях

Для большинства индустриальных применений достаточно реализовать быстродействующую видеосистему с выводом информации на различные типы мониторов Весьма важной для этих видеосистем является реализация аппаратной поддержки выполнения системы графических команд X Window Эта система команд является общепринятой для вывода графической информации в операционных Unix-системах, таких, как Linux, Solaris, HPUX При этом именно Unix-системы в большинстве своём применяются для управления и контроля технологических процессов, а также в бортовых ЭВМ Таким образом, создание графического ускорителя, ориентированного на графическую систему команд X Window, позволит впоследствии применять его в широком спектре индустриальных систем управления и контроля

В СССР и России работы по созданию графических ускорителей велись в конце 80-х - начале 90-х годов, когда ещё не существовало единых стандартов графических контроллеров, например, была создана БИС графического сопроцессора К1809ВГ4 В настоящее время эти разработки морально устарели, а новые не ведутся Для создания отечественных встроенных систем разработчики вынуждены закупать зарубежные графические микросхемы (Cirrus Logic, Chips, Fujitsu), ассортимент которых довольно велик Однако эти микросхемы не удовлетворяют требованиям специального и индустриального применения по диапазону температур, влагостойкости, не поддерживают систему команд X Window Кроме того, применение в отечественной аппаратуре зарубежных микросхем может вызвать значительные трудности при дальнейшем производстве этой аппаратуры в случае прекращения выпуска используемых импортных комплектующих, что уже неоднократно имело место

Цель диссертации заключается в создании и развитии алгоритмов работы с графическими примитивами, разработке на основе полученных алгоритмов методик проектирования, структурных и схемотехнических решений для реализации высокопроизводительных 2D графических ускорителей, ориентированных на использование в системах индустриального и специального применения

Для достижения данной цели необходимо выполнение следующих исследований и разработок

1. рассмотреть операции X Window, графические стандарты и методы их реализации,

2. провести анализ требований к графическим ускорителям, обусловленных индустриальной областью их применения,

3. провести анализ команд X Window для определения набора команд, эффективного для аппаратной реализации,

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

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

В соответствии с этим были определены следующие основные задачи диссертации.

1. Определить набор графических команд X Window, аппаратная реализация которых позволит существенно ускорить их выполнение

2. Предложить методику оценки эффективности аппаратной реализации графических команд

3. Разработать алгоритмы или структурные решения для аппаратной реализации выбранного набора графических команд

4. Предложить возможные методы дальнейшего увеличения быстродействия блоков, реализованных на основании разработанных алгоритмов и структурных решений

5. Предложить схемотехнические методы организации арбитрирования доступа к видеопамяти для оптимального распределения времени доступа к ней

6. С применением разработанных средств и методов разработать и реализовать высокопроизводительный графический ускоритель для видеоконтроллеров, предназначенных для использования в системах индустриального и специального назначения

Методы исследования

Для описания предлагаемых алгоритмов реализации основных графических процедур используется язык псевдокода При описании предложенных структурных решений использованы графы состояний управляющих конечных автоматов для каждого из разработанных функциональных блоков Программные модели алгоритмов разрабатывались на языках высокого уровня C/C++ и на поведенческом уровне языка Verilog HDL После объединения получавшиеся архитектуры разрабатывались и тестировались на языке описания аппаратуры Verilog Для программно-

го моделирования архитектуры устройств использовалась система Verilog-XL фирмы Cadence

Для создания макетных образцов с реальными задержками и аппаратного моделирования использовались программируемые логические микросхемы типа FPGA фирмы Altera и системы автоматизированного проектирования Max+PlusII и QuartusII фирмы Altera Эти пакеты имеют возможность получения на выходе величин реальных временных задержек в микросхеме, что позволяет промоделировать приближенное к реальности поведение разработанного средствами САПР и сконфигурированного в ПЛИС устройства, а также удешевить и ускорить процесс проектирования в целом

Научная новизна диссертации

1. Обоснованы принципы выбора наиболее часто употребляемых графических операций графических систем X Window для аппаратной их реализации Основными критериями выбора таких операций являются частота вызова операции и степень получаемого аппаратного ускорения Ограничивающим критерием являлась сложность аппаратной реализации данной функции На основе этих принципов предложена общая методика проектирования графических ускорителей

2. Предложены алгоритмы для аппаратной реализации выбранного набора графических операций X Window Данные алгоритмы представляют собой описания работы на псевдокоде блока аппаратного ускорения той или иной функции и обеспечили при практическом применении значительное ускорение аппаратного выполнения основных графических процедур до 37,6 раз при допустимых затратах ресурсов на их реализацию (увеличении площади кристалла за счёт ускорителя на 54 % , повышении потребления мощности на 41 %)

3. На базе предложенных алгоритмов разработаны структурные решения и получены графы машин состояний для реализации основных блоков графических ускорителей Полученные структурные решения и графы состояний позволяют выполнить дальнейшую схемотехническую и топологическую разработку графических ускорителей средствами САПР

4. Предложены методы повышения производительности алгоритмов работы блоков аппаратного выполнения графических операций по сравнению с их прямой реализацией

а) ускорение рисования отрезка линии по алгоритму Брезенхема методом введения промежуточных буферов данных (достигается увеличение быстродействия в 2,1 раза по сравнению с прямой реализацией),

б) ускорение заливки прямоугольной области с помощью увеличения разрядности шины данных (увеличение быстродействия работы блока до 16 раз),

в) ускорение копирования прямоугольной области методом введения буферов данных на чтение и запись (увеличение быстродействия работы блока до 5 раз)

К другим существенным результатам диссертации, имеющим практическое значение, могут быть отнесены следующие

1. Предложена реализация канала очереди графических команд, позволившая снизить затраты времени на опрос окончания аппаратного выполнения графической операции При этом минимальный выигрыш по времени за счет отсутствия по локальной шине PCI циклов ожидания окончания операции составит при глубине очереди графических команд М = 8 до 168 тактов частоты шины PCI Выигрыш времени зависит от суммарного времени выполнения графических операций, помещенных в очередь команд

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

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

Результаты диссертации, выносимые на защиту

1 Методика выделения графических функций X Window, предназначенных для аппаратной реализации

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

ЭВМ Методика позволяет реализовать аппаратное выполнение основных графических операций X Window, ускоряя функцию рисования отрезка линии в 4 раза по сравнению с программным выполнением, и до 30 раз для копирования в 8-разрядном режиме, наращивать функциональные возможности таких микросхем, например, добавляя еще одну очередь команд вывода на экран Предложены методы и способы повышения быстродействия прямой реализации алгоритмов аппаратного выполнения графических операций

3 Структура блоков графического ускорителя, реализующего аппаратное выполнение основных графических операций X Window, в составе графического контроллера, предназначенного для вывода графической информации на экран в системах на базе высокопроизводительных индустриальных ЭВМ Диаграммы работы машин состояний блоков аппаратного ускорения графических операций

Практическая ценность

Разработанные в диссертации методики проектирования графических ускорителей и алгоритмы реализации графических операций, предложенные структурные и схемотехнические решения для реализации основных блоков и субблоков были использованы при разработке двух типов отечественных микросхем графических контроллеров индустриального назначения 1890ВГ10Т и 1890ВГ14Т, выпускаемых серийно

Графические контроллеры 1890ВГ10Т и 1890ВГ14Т позволяют выводить на экран изображение с высоким разрешением и кадровой частотой с глубиной цвета 8, 16 и 32 разряда на точку, при этом находящийся в их составе графический ускоритель способен осуществлять следующие графические операции

• копирование прямоугольных областей в видеопамяти,

• копирование прямоугольных областей в видеопамяти с графической операцией,

• заливка прямоугольной области в видеопамяти фиксированным цветом,

• заливка прямоугольной области в видеопамяти фиксированным цветом с графической операцией,

• постановка точек по координатам;

• заливка прямоугольной области по маске, расположенной в памяти (копирование с расширением цвета),

• заливка прямоугольной области с отсечением по маске расположенной в памяти (копирование с расширением цвета с отсечением),

• заливка произвольной прямоугольной области с использованием расположенного в регистре шаблона 8x8 (как двухцветной, так и с отсечением),

• рисование линии нулевой толщины с использованием графической операции по начальной и конечной точкам (в том числе и пунктирной линии) с поддержкой отрицательных экранных координат,

• рисование линии нулевой толщины (в том числе и пунктирной) с использованием графической операции по начальной точке, длине и характеризующей наклон величине ошибки,

• обработка очереди графических команд

Проведенные экспериментальные исследования и испытания микросхем 1890ВГ10Т и 1890ВГ14Т позволили оценить эффективность введения разработанного графического ускорителя для повышения производительности систем при выполнении графических процедур Возможности функционирования в расширенном диапазоне температур обеспечиваются особенностями технологического процесса и применением металлокерамического или стеклокерамического корпуса, обладающих способностью повышенного отвода тепла от кристалла

Данные микросхемы используются в ряде ОКР по созданию автоматизированных систем управления индустриального и специального применения С использованием данных микросхем создано новое поколение компьютеров серии «Багет», что подтверждается приложенными актами о внедрении Апробация диссертации

Основные положения диссертации докладывались и обсуждались на научно-технических конференциях и семинарах

• Научно-техническая конференция «Электроника, микро- и наноэлектрони-ка», 2001 г (г Пушкинские горы), 2002 г (г Пушкин), 2003 г (г Кострома)

• Научные сессии МИФИ-2001 и МИФИ-2002

• На семинарах НИИСИ РАН, межведомственных совещаниях и семинарах Публикации

По теме диссертации опубликовано 10 работ Структура и объем диссертации

Диссертация состоит из введения, трех глав, заключения и списка литературы Диссертация содержит 145 страниц, 43 рисунка, 16 таблиц Список литературы насчитывает 91 наименование

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

Во второй главе описывается предлагаемая методика выделений графических операций из системы графических команд, которые следует выполнять аппа-

ратно, приводится теоретический расчёт быстродействия программного и аппаратного выполнения графических операций Выбирается тип локальной памяти и видеопамяти, с которыми будет работать графический ускоритель

В третьей главе приводятся разработанные алгоритмы работы и структурные схемы блоков графического ускорителя, диаграммы работы машин состояний блоков Приводятся способы и методы повышения быстродействия выбранных для аппаратной реализации алгоритмов

В заключении формулируются основные результаты диссертации, полученные автором на основе исследований, проведенных в диссертации Содержание диссертации Введение.

Во введении обоснована актуальность темы, определена цель диссертации Сформулирована постановка задачи и основные положения, выносимые на защиту Изложены научная новизна и практическая ценность диссертации

1. Направления развития современных микросхем, содержащих 20-ускорители

При решении задач проектирования современных графических ускорителей существует два основных подхода

1 Разработка универсального высокопроизводительного графического ускорителя, выполняющего широкий набор графических операций При этом аппаратное ускорение графических операций происходит с помощью выполнения графическим ускорителем инструкций микрокода, которые соответствуют выполняемой операции Сменой микропрограмм, хранящихся в ПЗУ начальной загрузки графического ускорителя, обеспечивается возможность смены и расширения набора выполняемых графических операций

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

Второй вариант построения графических ускорителей наиболее подходит для создания микросхем, которые будут применяться в системах индустриального и специального назначения Применение такого аппаратного ускорителя графических операций позволяет разгрузить центральный процессор, повысить производительность системы и, как следствие, улучшить параметры выводимого изображения, частоту смены изображения

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

ниматься во внимание при проектировании микросхем для индустриальных вычислительных систем Наиболее приемлемыми технологическими нормами для индустриальных систем в настоящее время являются нормы не лучше 0,25 мкм

2. Выбор состава аппаратных средств графического ускорителя

Чтобы реализовать аппаратную поддержку системы графических команд X Window, необходимо проанализировать принципы обработки графического приложения средствами пакета X Window При выполнении данной процедуры реализуются два варианта интерфейса

- между клиентским приложением и Х-сервером с использованием библиотеки Xlib,

- между Х-сервером и драйвером графического контроллера с помощью архитектуры ХАА (XFree86 Acceleiation Architecture)

В процессе обработки Х-сервер производит разложение функций и операций, поддерживаемых библиотекой Xlib, на более примитивные и передает их драйверу с помощью аппаратно-программных средств, реализующих архитектуру ХАА

Основные графические функции, поддерживаемые ХАА

1. Функция копирования экран-в-экран

2. Функция сплошной заливки

3. Функция рисования сплошного отрезка

4. Функция рисования штрихпунктирного отрезка

5. Функция копирования с расширением цвета

6. Функция копирования с расширением цвета из видеопамяти в экранную

область

7. Функция копирования с расширением цвета из ЦПУ в экранную область

8. Функция заливки прямоугольной области узором 8x8

9. Функция заливки прямоугольной области полноцветным узором 8x8

10. Функция записи изображений в видеопамять

11. Окно отсечения

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

Кэф(|) ~ (1 - Qoth) P\Wm К>ск>

где

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

Рх w.n- частота вызова X Window той или иной функции,

Куск - коэффициент ускорения, показывающий отношение между временами программного и аппаратного выполнения функции

Чем больше величина КЭфф, тем целесообразнее функцию, которую она характеризует, выполнить аппаратно

Коэффициент эффективности позволяет оценить целесообразность аппаратной реализации тех или иных графических функций С его помощью можно ранжировать функции по приоритету их аппаратной реализации Значение коэффициента эффективности ниже 1 показывает, что хотя скорость аппаратного выполнения графической функции выше программной, это преимущество нивелируется сложностью аппаратной реализации или малой частотой ее использования Также можно выявить «узкие места» реализации аппаратного ускорения, в частности, в таблице 1 показано, что скорость аппаратного рисования линии необходимо повысить минимум в 3 раза

Функция Коэффициент эффективности, Кэфф

Поддержка аппаратного эллипса 0,07

Поддержка пунктира при аппаратном рисовании линии 0,11

Заливка полноцветным узором 0,28

Аппаратное рисование линии 0,43

Поддержка заливки узором 8x8 1,26

Аппаратная заливка 1,52

Аппаратное копирование 4,13

Поддержка заливки по маске рисования 6,54

Поддержка заливки по маске отсечения 6,54

Использование окна отсечения 7,87

Графический ускоритель не все операции выполняет аппаратно Например, стандартом ХАА не предусмотрено рисование линии толщиной более, чем 1 точка Программно рисуются сложные фигуры, состоящие из набора кривых Для того, чтобы в этом случае производительность подсистемы памяти была максимальной, требуется переключать приоритеты запросов доступа к памяти со стороны блока интерфейса PCI и графического ускорителя

В случае арбитрирования с фиксированными или циклически меняющимися приоритетами соотношение времен работы блока интерфейса PCI и блока ускорителя одинаковое Отсюда можно сделать вывод, что при максимальной нагрузке шины памяти со стороны как блока PCI, так и блока памяти, быстродействие работы графической подсистемы за счет снижения простоя графического ускорителя в ожидании данных может быть поднята до 8 раз В реальной системе сначала происходит подготовка данных, затем запускается графический ускоритель Поэтому выигрыш при подобном арбитрировании наблюдается при совместном обращении PCI

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

Высший приоритет доступа к памяти обеспечивается либо для локальной шины PCI, либо для графического ускорителя. При этом приоритет меняется в зависимости от того, какое время работы с памятью было предоставлено графическому ускорителю и блоку интерфейса PCI при выполнении данной графической операции Таким образом, применение разделения приоритета доступа к памяти со стороны РС1 и графического ускорителя позволяет увеличить общее быстродействие графической подсистемы за счёт эффективного распределения времени работы графического ускорителя и блока интерфейса PCI

В данной диссертации предлагается следующая методика проектирования графического ускорителя с использованием разработанных средств и устройств 1 Составляются требования к графическому ускорителю 1а Определяется набор возможных графических операций Для этого анализируется система команд, передаваемых от графической системы драйверу Каждая команда несет с собой набор разрешающих или запрещающих флагов и параметров, указывающих, как надо выполнять данную графическую операцию Используя эти данные, разработчик графического ускорителя получает следующую информацию

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

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

16 Определяются наиболее часто используемые графические операции из списка, полученного в п 1а Для этого средствами операционной системы набирается статистика, основанная на анализе вызовов графических команд при работе с приложениями, характерными для того сегмента промышленных систем, в котором будет использоваться проектируемый ускоритель В случае, например, картографического устройства основное внимание уделяется реализации функции копирования участков изображения, а также работы с «прозрачным» цветом Если сегмент не определен, анализируется работа с наиболее часто встречающимися элементами графического интерфейса, например, формирование окошка графического меню

1в Анализируется сложность аппаратной реализации каждой из выбранных в пункте 16 операций Для этого осуществляется выбор алгоритмов реализации графических операций, или разрабатываются оригинальные варианты алгоритмов При необходимости производится моделирование алгоритма на программном языке высокого уровня - например, получение координат точек при рисовании линии методом Брезенхема Созданные или выбранные алгоритмы аппаратно реализуются на ПЛИС, после чего оценивается доля ресурсов, требуемых для реализации данных алгоритмов в графическом ускорителе Вычисляется коэффициент ускорения аппаратного решения по сравнению с программным, затем определяется коэффициент эффективности аппаратной реализации данной функции Выполнение этих процедур подробно описано в разделе диссертации 2 1 2

1г В случае неудовлетворительного значения коэффициента эффективности (меньше 1) рассматриваются возможности модификации и оптимизации алгоритма выполнения соответствующей операции Так, для алгоритма рисования линии производится конвейеризация вычислений и применение накопительного буфера для хранения рассчитанных координат точек линии На основе итогового значения коэффициента эффективности принимается окончательное решение о целесообразности аппаратной реализации данной графической функции

2 Выбираются внешние интерфейсы графического ускорителя 2а Исходя из требуемых разрешений экрана и выбранных операций оценивается необходимая пропускная способность локальной шины По результатам оценки выбирается локальная шина и тип поддерживаемых передач одиночный или пакетный Также оценивается необходимость использования ведущего устройства (master) на шине Анализируется спектр промышленных систем, в которых предполагается применять графический контроллер с проектируемым графическим ускорителем Если в данных системах предъявляются повышенные требования к характеристикам шины PCI (тактовая частота 66 МГц или разрядность 64 бит), то необходимо использовать схемотехнические и конструкторско-технологические средства, чтобы обеспечить эффективную работу графического ускорителя с такой шиной Схемотехнические способы используются для поддержки 64-разрядного обмена по локальной шине, а также для сокращения задержек комбинационных блоков, расположенных между регистрами (триггерами), с целью повышения тактовой частоты Конструктивно-технологические методы обеспечивают повышение соответствующих характеристик проектируемого ускорителя благодаря использованию более совершенной технологии изготовления и применения при проектировании специальных библиотек элементов

26 Исходя из требуемых разрешений экрана, количества поддерживаемых одновременно устройств вывода и потока данных через локальную шину, выбирается тип видеопамяти, ее тактовая частота и разрядность шины данных При этом также следует оценить значение потребляемого тока (см раздел 2 3 1) и, в случае необходимости, ограничить разрядность шины

3 Производится отладка модели и прототипа будущей микросхемы За Отлаживается на регистровом уровне ранее написанная в предварительном варианте (п 1в) модель графического ускорителя Моделирование выполняется при помощи соответствующих САПР (ModelSim фирмы Mentor Graphics, NCVerilog фирмы Cadence и подобных) с использованием высокоуровневых языков описания аппаратуры (например, Venlog HDL, VHDL, AHDL и тд) При моделировании отлаживается взаимодействие между блоками, вносятся изменения как в алгоритм работы, так и в интерфейс между создаваемыми блоками для повышения эффективности функционирования Для блоков, выполняющих похожие операции, производится оптимизация по количеству транзисторов за счет выделения общих субблоков и организации разделенного доступа к ним со стороны выполняющих графические операции блоков

36 Разработанная модель реализуется на базе программируемых логических интегральных схем (ПЛИС), после чего полученный прототип тестируется и отлаживается в реальной системе На данном этапе написанная модель будет верифицирована с учетом некоторых сопутствующих реальной микросхеме условий, таких как задержки логических вентилей, тепловыделение Кроме того, тестирование на ПЛИС позволяет реализовать более длительные и разнообразные механизмы верификации за счет того, что аппаратно алгоритмы выполняются во много раз быстрее, чем на модели Данный этап позволяет выявить основные ошибки, могущие проявиться в реальной микросхеме, с поправкой на более низкую частоту работы ПЛИС-прототипа

Зв По разработанной и протестированной модели средствами САПР проектируется заказная СБИС, содержащая необходимый графический ускоритель

На основе данной методики были разработаны алгоритмы работы и структурные схемы блоков графического ускорителя

3. Реализация блоков графического ускорителя Для реализации алгоритма рисования линии был взят за основу целочисленный алгоритм Брезенхема Выбор был обусловлен в первую очередь тем, что этот алгоритм прост в реализации, не требует вычисления сложных функций, обработки чисел с плавающей запятой При его реализации используется только целочисленное сложение, что снижает требования к количеству ресурсов, необходимых для аппаратной реализации данного алгоритма

Второй вариант алгоритма Брезенхема требует предварительного проведения процессором вычислений ошибки и наклона линии, но требует еще меньше ресурсов, чем первый Этот алгоритм преимущественно используется в X Window еще с тех пор, когда простота вычисления - ввиду необходимости экономии ресурсов - была важнее удобства Ввиду того, что Х-сервер может задавать параметры линии двумя способами - через задание начальной и конечной точки и через задание начальной точки, длины рисуемой линии и радиус-вектора - были реализованы оба алгоритма рисования линии

Скорость работы прямой реализации алгоритма рисования отрезка прямой линии недостаточна Для получения приемлемого коэффициента эффективности работы аппаратной реализации алгоритма его производительность необходимо увеличить минимум в 2 раза Повышение быстродействия предлагается достичь методом введения буфера на некоторое количество значений координаты и цвета точек, который будет наполняться блоком рисования отрезка, а затем подряд записывается в память в одном цикле разрешения работы от арбитра памяти Увеличение скорости работы блока рисования отрезка с помощью введения буфера теоретически может достигнуть 2,5 раз по сравнению с прямой реализацией алгоритма рисования отрезка Однако при величине буфера, например, равной 8, полученное увеличения быстродействия также позволяет достигнуть необходимого коэффициента эффективности

Функция рисования эллипса не поддерживается напрямую интерфейсом драйвера X Window Включение этого блока позволяет расширить функциональные возможности графического ускорителя, поскольку при выполнении ряда задач может возникнуть необходимость отобразить эллипс Ввиду несложности алгоритма он не требует много ресурсов, но является при этом самым быстрым из существующих Наличие блока рисования эллипса повышает универсальность микросхемы, увеличивая возможности пиксельного процессора Блок занимает на кристалле примерно такую же площадь, как и блок рисования линии При этом субблок пересчета координат в адреса в памяти используется им совместно с блоками рисования отрезка линии

Заливка прямоугольной области является широко распространенной графической операцией, используемой X Window Заливка прямоугольной области может быть сплошной, то ее гь фактически производится рисование обычного прямоугольника того или иного цвета, и по шаблону или маске - одноцветной и двуцветной Заливка по маске - это термин, удобный для понимания происходящего процесса, в терминах команд X Window это произносится как «копирование с расширением цвета (Color expand)» Одна точка представлена одним разрядом, байт маски содержит информацию о восьми точках Маску можно представить как изображение глубиной цвета 1 бит на точку Маска может быть двухцветной, в этом случае ставится точка как основного, так и фонового цвета, в случае равенства соответствующего разряда маски единице или нулю соответственно, и одноцветной, при которой подавляется запись в точку, если маска равна нулю, и заносится фоновый цвет, если маска равна единице Выбор типа маски производится драйвером графического ускорителя и заносится в соответствующий регистр в блоке заливки по маске перед запуском процедуры аппаратной заливки

Узор 8 на 8 точек является очень распространенным для заливки фона, в частности, фоновая сетка представляет собой вариант заливки этим способом Для реализации этого механизма значения узора записываются не в память, как при работе с масками, а в два 32-разрядных регистра

Прямым методом повышения быстродействия блока заливки по маске является увеличение разрядности шины данных В этом случае чем выше разрядность, тем большее количество точек будет поставлено за один цикл работы механизма заливки Количество точек зависит также от глубины цвета, так как при той же разрядности шины увеличение глубины цвета до 32-х бит на точку приводит к уменьшению быстродействия механизма в 4 раза по сравнению с 8-битным режимом

Одна из наиболее часто используемых операций графического ускорителя -это копирование больших прямоугольных (то есть в виде окна в пространстве памяти) массивов данных - такова особенность оконного интерфейса Поэтому необходимо для ускорения рисования перемещения области по экрану реализовать аппаратную поддержку этой операции

Аппаратная реализация блока прямого алгоритма копирования позволяет достичь приемлемого коэффициента ускорения Однако дальнейшее повышение быстродействия позволяет увеличить скорость работы графической системы в целом и снизить простои центрального процессора в ожидании завершения ускорителем графической операции

Предлагаются следующие методы повышения быстродействия копирования прямоугольной области

• повышение разрядности графической шины данных,

• конвейеризация процесса,

• увеличение скорости работы алгоритма с помощью буфера

Результат увеличения разрядности графической шины данных такой же, как у блока заливки прямоугольной области и не отличается в применении к блоку копирования прямоугольной области

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

При размере буфера М = 16 увеличение быстродействия блока копирования прямоугольной об1астп будет пятикратным

Использование разработанны\ методов н средств nocí роения графических ускорителей

Создание графических систем для индустриальных ЭВМ требует решения следующих задач

1. Реализация интерфейса локальной шины, контроллера видеопамяти, интерфейса видеомониторов (как на ЭЛТ, так и на ЖК)

2. Реализация алгоритмов аппаратного ускорения графических функций

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

В диссертации предлагаются варианты решения перечисленных задач при построении графического ускорителя в составе графического контроллера для ускорения наиболее используемых графических функций В качестве локальной шины используется шина PCI (Peripheral Connection Interface), для видеопамяти выбрано динамическое ОЗУ, работающее по двум фронтам - DDR SDRAM, интерфейс видеомонитора - либо RGB, либо параллельный для работы с ЖКИ Для ускорения выполнения графических операций предложены модифицированные варианты стандартных алгоритмов (Брезенхема для отрезка и эллипса) или оригинальные алгоритмы

Предложенные алгоритмы, разработанные методики и структурно-схемотехнические решения были использованы при разработке двух типов отечественных микросхем графических контроллеров индустриального назначения 1890ВГ10Т и 1890ВГ14Т, выпускаемых серийно На базе этих микросхем реализованы образцы графических модупсй, которые были протестированы и показали свою работоспособность как в составе персональной ЭВМ типа PC, так и в индустриальной ЭВМ типа «Багет» Количество транзисторов и занимаемая отдельными блоками площадь в графическом ускорителе показана в таблицах 2 и 3 Краткая характеристика микросхем приведена в таблице 4

Таблица 2 Количество транзисторов в разработанных микросхемах и их распределение между блоками памяти и блоками логики.__

Параметр 1890ВГ10Т, млн тр-ров 1890ВГ14Т, млн тр-ров

Вся микросхема Общее 1,64 2,72

Блоки памяти 0,49 0,64

Блоки логики 1,15 2,08

Из них графический ускоритель 0,75 1,44

Таблица 3. Площади кристаллов разработанных микросхем и их распределение между блоками памяти и блоками логики.

Параметр 1890ВГ10Т, мм2 1890ВГ14Т, мм2

Вся микросхема Общая 68,89 90,25

Блоки памяти 5,96 8,47

Блоки логики 62,93 81,78

Из них графический ускоритель 41,04 56,43

Таблица 4. Характеристик» микросхем 1890ВГ10Т » 1890ВГ14Т

Параметр 11890ВГ10Т

Технология изготовления ' 0,35 мкм

Тактовая частота шины , 33 МГц РС1

Тактовая частота памяти 1166 МГц

. I

Тактовая частота графиче- , 83 МГц ского ядра

Напряжение питания 3,3 В

12,5 В для DDR SDRAM

, 1890ВГ14Т 0,35 мкм 66 МГц

120 МГц 120 МГц

3,3 В

j 2,5 В для DDR SDRAM J

Потребляемая суммарная до 3 Вт до 3 Вт

мощность I

Диапазон рабочих темпе- от-65 °С до +125 °С от-85 °С до+125 °С

ратур ^ Тип корпуса

пластмассовый или метал-локерамический на 240 планарьых выводов по четырем сторонам

металлокерамический или ; стеклокерамический на 240 планарных выводов j по четырем сторонам |

На рисунке 1 показана топология кристалла графического контроллера 1890ВГ10Т Цифрами на рисунке обозначены

1. Блок памяти 16x32 Используется для очереди команд ускорителя

2. Блок памяти 260 х 24 Используется как память палитры в контроллерах ЭЛТ-монитора и ЖК-панели

3. Блок памяти 1024 х 4 Используется как память курсора в контроллерах ЭЛТ-монитора и ЖК-панели

4. Блок памяти 64 х 128 Используется как FIFO в контроллерах ЭЛТ-монитора

5. Блок памяти 16 х 128. Используется как FIFO в контроллерах ЖК-панели.

6. ЦАП.

7. Синтезатор частот.

8. ФАПЧ.

9. Контроллер ЭЛТ-монитора.

10. Контроллер ЖК-панели.

11. Контроллер PCI.

12. Графический ускоритель.

Рис. 1 Топология микросхемы 1890ВГ10Т

Кристалл 1890ВГ14Т топологически подобен кристаллу 1890ВГ10Т.

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

Микросхема графического контроллера разрабатывалась в рамках ОКР I «Разработка образцов элементной базы основной номенклатуры для применения при создании ЭВМ серии «Багет», а также периферийных устройств и дополнительных модулей», шифр «Схематизатор». Целью ОКР является разработка микро-| схем для создаваемых в рамках программы «Интеграция СВТ» периферийных устройств и дополнительных модулей для ЭВМ серии «Багет». Целью программы является разработка средств вычислительной техники. Разработанный графический контроллер используется в ОКР «Разработка однокристального графического контролера (ОГК)», в рамках данной ОКР создана 240-выводная микросхема ОГК по технологии 0,35 мкм. Фрагмент печатной платы серийного модуля ЭВМ серии «Багет» с использованием микросхемы 1890ВГ1 ОТ показан на рис. 2.

Рис. 2 Микросхема 1890ВГ10Т в составе серийного модуля ЭВМ

Заключение

Основным научным результатом диссертации является развитие методов проектирования высокопроизводительных графических контроллеров для систем индустриального назначения

Основные теоретические результаты данной диссертации заключаются в следующем

1 Обоснованы принципы выбора наиболее часто употребляемых графических операций графических систем X Window для их аппаратной реализации На основе этих принципов предложена общая методика проектирования графических ускорителей

2 Предложены алгоритмы для аппаратной реализации выбранного набора графических операций X Window Данные алгоритмы обеспечивают значительное ускорение аппаратного выполнения основных графических процедур (до 37,6 раз) при допустимых затратах ресурсов на их реализацию (увеличении площади кристалла за счёт ускорителя на 54 %, повышении потребления мощности на 41 %)

3 На базе предложенных алгоритмов разработаны структурные решения и получены графы машин состояний для реализации основных блоков графических ускорителей Полученные структурные решения и графы состояний позволяют выполнить дальнейшую схемотехническую и топологическую разработку графических ускорителей средствами САПР

4 Предложены методы повышения производительности алгоритмов работы блоков аппаратного выполнения графических операций по сравнению с их прямой реализацией

а) ускорение рисования отрезка линии по алгоритму Брезенхема методом введения промежуточных буферов данных (достигается увеличение быстродействия в 2,1 раза по сравнению с прямой реализацией),

б) ускорение заливки прямоугольной области с помощью увеличения разрядности шины данных (увеличение быстродействия работы блока до 16 раз),

в) ускорение копирования прямоугольной области методом введения буферов данных на чтение и запись (увеличение быстродействия работы блока до 5 раз)

Основные практические результаты диссертации следующие

1 Предложены и реализованы в микросхеме алгоритмы очереди графических команд, позволившие снизить затраты времени на опрос окончания аппаратного выполнения графической операции При этом минимальный выигрыш по времени за счет отсутствия по локальной шине PCI циклов ожидания окончания операции составит при глубине очереди графических команд М = 8 до 168 тактов частоты шины PCI Выигрыш во времени зависит от суммарного времени выполнения графических операций, помещенных в очередь команд

2 Предложена и реализована в микросхеме принципиальная схема арбитра доступа к видеопамяти с переключаемыми приоритетами для оптимизации времени работы с видеопамятью блока интерфейса локальной шины и графического ускори-

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

3 Предложена методика оптимизации схемотехнической реализации графических ускорителей по количеству транзисторов путем выделения функционально идентичных блоков и их использования для выполнения различных функций Для разделения доступа к этим общим блокам разработан алгоритм арбитрирования запросов Для созданного ]рафического ускорителя 1890ВГ10Т данная методика обеспечила снижение количества требуемых логических эчементов на 7,5 %, и, соответственно, уменьшение на такую же величину потребляемой графическим ускорителем мощности

Разработанные в диссертации методики проектирования графических ускорителей и алгоритмы реализации графических операций, предложенные структурные и схемотехнические решения для реализации основных блоков и субблоков были использованы при разработке двух типов отечественных микросхем графических контроллеров индустриального назначения 1890ВГ10Т и 1890ВГ14Т, выпускаемых серийно

Проведенные экспериментальные исследования и испытания микросхем 1890ВГ10Т и 1890ВГ14Т позволили оценить эффективность введения разработанного графического ускорителя для повышения производительности систем при выполнении графических процедур Возможности функционирования в расширенном диапазоне температур обеспечиваются особенностями технологического процесса и применением металлокерамического или стеклокерамического корпуса, обладающих способностью повышенного отвода тепла от кристалла

Сравнение результатов тестирования графических модулей, реализованных на базе разработанных микросхем графических контроллеров 1890ВГ10Т, 1890ВГ14Т и зарубежных образцов, показывает, что предложенные в диссертационной работе методы проектирования и структурно-схемотехнические решения ускорителей плоской графики обеспечивают существенное повышение производительности при выполнении основных графических операций до 32 раз по сравнению с программным выполнением

Данные микросхемы используются в ряде ОКР по созданию автоматизированных систем управления индустриального и специального применения С использованием данных микросхем создано новое поколение компьютеров серии «Багет», что подтверждается приложенными актами о внедрении

Список работ, опубликованных по теме диссертации

1 Аряшев С И , Евлампиев Б Е , Корниленко А В Графический контроллер для ускорения операций X Window // Научная сессия МИФИ-2001 Т1 Сб научн трудов -М МИФИ, 2001 -С 86-87

2 Аряшев С И , Евлампиев Б Е , Корниленко А В Микросхема ускорителя в составе графического контроллера//Научная сессия МИФИ-2001 Т1 Сб научн трудов -М МИФИ, 2001 - С 88-89

3 Аряшев С И , Бобков С Г , Грузинова Е В , Евлампиев Б Е, Корниленко А В Сивакова Т В Разработка микросхемы графического ускорителяс использованием ПЛИС Altera // Электроника, микро- и наноэлектроника Сб научн трудов -М МИФИ, 2001 -С 28-33

4 Аряшев С И , Евлампиев Б Е , Корниленко А В Оптимизация работы с памятью в микросхеме графического укорителя // Электроника, микро- и наноэлектроника Сб научн трудов -М МИФИ, 2002 - С 111-117

5 Аряшев С И , Евлампиев Б Е , Корниленко А В Аппаратная реализация алгоритмов 3D графики на базе FPGA Altera// Электроника, микро- и наноэлектроника Сб научн трудов -М МИФИ, 2002 - С 118-124

6 Аряшев С И , Евлампиев Б Е , Корниленко А В Разработка контроллеров на основе базовых блоков // Электроника, микро- и наноэлектроника Сб научн трудов -М МИФИ, 2003 - С 170-173

7 Бычков К С , Корниленко А В Реализация блока генерации основных графических примитивов в составе графического ускорителя // Электроника, микро- и наноэлектроника Сб научн трудов -М МИФИ,2003 -С 182-186

8 С Г Бобков, А В Корниленко Высокопроизводительные графические контроллеры индустриального назначения // Информационные технологии и вычислительные системы -2005, №1 -С 105-116

9 Корнитенко А В Выбор архитектуры ядра графического ускорителя // Электроника, микро- и наноэлектроника Сб научн трудов - М МИФИ, 2008 - С 125-128

10 Корниленко А В Метод повышения быстродействия аппратного рисования отрезка // Электроника, микро- и наноэлектроника Сб научн трудов - М МИФИ, 2008 - С 129-133

Подписано в печать 17 09 2008 г

Печать трафаретная

Заказ № 752 Тираж 75 экз

Типография «11-й ФОРМАТ» ИНН 7726330900 115230, Москва, Варшавское ш, 36 (499) 788-78-56 www autoreferat ru

Оглавление автор диссертации — кандидата технических наук Корниленко, Александр Владимирович

Введение.

Методы исследования.

Результаты диссертации, выносимые на защиту.

Апробация диссертации.

Публикации.

Структура и объем диссертации.

Глава 1. Направления развития современных микросхем, содержащих 2Р-ускорители.

1.1 Основные варианты реализации графических ускорителей и современная технология их изготовления.

1.2 Особенности архитектуры микросхемы Chips 69000.

1.3 Особенности архитектуры микросхемы Fujitsu Semiconductor MB87J2120.

1.4 Особенности архитектуры Silicon Motion SM712.

1.5 Сравнительная характеристика и особенности развития.

Выводы и постановка задачи.

Глава 2. Выбор состава аппаратных средств графического ускорителя.

2.1 Определение состава графических операций, реализуемых ускорителем.

2.1.1 Обзор существующих графических функций X Window.

2.1.2 Критерии выбора реализуемых аппаратно функций X Window.

2.2 Выбор локальной шины.

2.3.1 Выбор типа видеопамяти.

2.3.3 Реализация арбитра видеопамяти.

Выводы.

Глава 3. Реализация блоков графического ускорителя.

3.1 Методика проектирования графического укорителя.

3.2 Реализация блока рисования отрезка.

3.2.1 Реализация алгоритма рисования отрезка по двум координатам.

3.2.2 Реализация параметрического блока рисования отрезка.

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

3.3 Реализация блока рисования эллипса.

3.4 Реализация блока рисования прямоугольной области.

3.4.1 Реализация блока заливки прямоугольной области одним цветом.

3.4.2 Реализация блока заливки прямоугольной области по маскам.

3.4.3 Реализация блока заливки прямоугольной области узором 8x8.

3.4.4 Оценка повышения быстродействия алгоритма заливки прямоугольной области с при увеличении разрядности шины данных.

3.5 Реализация блока копирования прямоугольной области.

3.5.1 Алгоритм и особенности работы блока копирования прямоугольной области

3.5.2 Повышение быстродействия блока копирования прямоугольной области с помощью буфера данных.

3.6 Сокращение используемых микросхемой ресурсов с помощью использования блоками общих субблоков.

3.7 Реализация блока очереди команд.

3.8 Реализация блока порта данных.

3.9 Реализация блока вывода текстовой информации.

3.10 Реализация интерфейса локальной шины.

3.10.1 Реализация работы локальной шины в режиме Target.

3.10.2 Рекомендации по выбору режима работы с локальной шиной.

3.11 Практические результаты, полученные по применению методик проектирования графических ускорителей.

Таблица 3.7.

Выводы.

Введение 2008 год, диссертация по информатике, вычислительной технике и управлению, Корниленко, Александр Владимирович

Развитие индустриальных компьютерных систем [1,2] требует отображения графической информации на экран для оперативной оценки хода технологического процесса и принятия решений. Требования, выдвигаемые к индустриальным системам — сохранять функционирование в заданных техническим заданием параметрах при работе в условиях повышенных или пониженных температур (от -85 °С до +125 °С), электромагнитных помех и изменения напряжения питания в диапазоне ±10%. Эти требования приводят к задачам построения высокопроизводительных графических подсистем[3], способных функционировать в данных условиях. При этом современные условия требуют вывода информации с высокими разрешениями экрана до 1600 на 1200 точек и отображения до 16 млн. цветов.

Графические контроллеры являются неотъемлемой частью современных ЭВМ, обеспечивая взаимодействие оператора и вычислительной системы. На дисплее отображается не только текстовая, но и графическая информация, делая ЭВМ мощным средством управления и контроля. По сложности некоторые современные графические контроллеры уже превосходят центральный процессор. Первые ЭВМ, использующие в качестве устройства ввода-вывода терминал, отображали только текстовую информацию, при этом вывод па экран информации осуществлял центральный процессор. Появление графического интерфейса способствовало как популяризации первых персональных ЭВМ, так и развитию различных САПР, позволяющих увидеть на экране результат, максимально приближенный к конечному разрабатываемому с помощью САПР продукту. Для обеспечения разгрузки центрального процессора от рутинных задач работы с графическими примитивами в современные микросхемы графических контроллеров встраивают графические ускорители.

Многие зарубежные фирмы [4, 5] выпускают микросхемы именно для применения в индустриальных компьютерных системах. При этом, как правило, характеристики таких видеоконтроллеров отличаются от характеристик микросхем, используемых в персональных ЭВМ, например, отсутствием ускорителя трёхмерной графики, но при этом наличием функции вывода на ЭЛТ-дисплей, ЖК-дисплей и ТВ [6, 7, 8]. Следует отметить, что универсальность ЗБ-адапте-ров и сложность выполняемых ими задач приводят к тому, что для их нормального функционирования требуется мощная система охлаждения, в ряде современных моделей даже используется водяное охлаждение. В индустриальных видеоадаптерах охлаждение должно обеспечиваться пассивными радиаторами. Выпускаемые микросхемы графических контроллеров для персональных ЭВМ, обеспечивающие поддержку эффектов трёхмерной графики, не удовлетворяют требованиям функционирования в жестких индустриальных условиях.

Для большинства индустриальных применений достаточно реализовать быстродействующую видеосистему с выводом информации на различные типы мониторов. Весьма важной для этих видеосистем является реализация аппаратной поддержки выполнения системы графических команд X Window [9]. Эта система команд является общепринятой для вывода графической информации в операционных Unix-системах, таких, как Linux, Solaris, HPUX. При этом именно Unix-системы в большинстве своём применяются для управления и контроля технологических процессов, а также в бортовых ЭВМ. Таким образом, создание графического ускорителя, ориентированного на графическую систему команд X Window, позволит впоследствии применять его в широком спектре индустриальных систем управления и контроля.

В СССР и России работы по созданию графических ускорителей велись в конце 80х - начале 90х годов, когда ещё не существовало единых стандартов графических контроллеров, например, была создана БИС графического сопроцессора К1809ВГ4. В настоящее время эти разработки морально устарели, а новые не ведутся [10]. Для создания отечественных встроенных систем разработчики вынуждены закупать зарубежные графические микросхемы (Cirrus Logic, Chips, Fujitsu), ассортимент которых довольно велик. Однако эти микросхемы не удовлетворяют требованиям специального и индустриального применения по диапазону температур, влагостойкости, не поддерживают систему команд X Window. Кроме того, применение в отечественной аппаратуре зарубежных микросхем может вызвать значительные трудности при дальнейшем производстве этой аппаратуры в случае прекращения выпуска используемых импортных комплектующих, что уже неоднократно имело место.

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

Представленная работа связана с научными планами отделения разработки высокопроизводительных систем НИИ Системных Исследований РАН по созданию современных высокопроизводительных ЭВМ специального назначения. Результаты данной работы предназначены для применения при проектировании систем контроля на базе индустриальных компьютеров, при построении средств сбора и отображения информации, при разработке аппаратуры управления сложными объектами.

Цель диссертации заключается в создании и развитии алгоритмов работы с графическими примитивами, разработке на основе полученных алгоритмов методик проектирования, структурных и схемотехнических решений для реализации высокопроизводительных 2D графических ускорителей, ориентированных на использование в системах индустриального и специального применения.

Для достижения данной цели необходимо выполнение следующих исследований и разработок:

1. рассмотреть операции X Window, графические стандарты и методы их реализации;

2. провести анализ требований к графическим ускорителям, обусловленных индустриальной областью их применения;

3. провести анализ команд X Window для определения набора команд, эффективного для аппаратной реализации;

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

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

В соответствии с этим были определены следующие основные задачи диссертации:

1. Определить набор графических команд X Window, аппаратная реализация которых позволит существенно ускорить их выполнение.

2. Предложить методику оценки эффективности аппаратной реализации графических команд.

3. Разработать алгоритмы или структурные решения для аппаратной реализации выбранного набора графических команд.

4. Предложить возможные методы дальнейшего увеличения быстродействия блоков, реализованных на основании разработанных алгоритмов и структурных решений.

5. Предложить схемотехнические методы организации арбитрирования доступа к видеопамяти для оптимального распределения времени доступа к ней.

6. С применением разработанных средств и методов разработать и реализовать высокопроизводительный графический ускоритель для графических контроллеров, предназначенных для использования в системах индустриального и специального назначения.

Методы исследования

Для описания предлагаемых алгоритмов реализации основных графических процедур используется язык псевдокода. При описании предложенных структурных решений использованы графы состояний управляющих конечных автоматов для каждого из разработанных функциональных блоков. Программные модели алгоритмов разрабатывались на языках высокого уровня C/C++ и на поведенческом уровне языка Verilog HDL. После объединения получавшиеся архитектуры разрабатывались и тестировались на языке описания аппаратуры Verilog. Для программного моделирования архитектуры устройств использовалась система Verilog-XL фирмы Cadence.

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

FPGA фирмы Altera и системы автоматизированного проектирования Max+PlusII и QuartusII фирмы Altera. Эти пакеты имеют возможность получения на выходе величин реальных временных задержек в микросхеме, что позволяет промоделировать приближенное к реальности поведение разработанного средствами САПР и сконфигурированного в ПЛИС устройства, а также удешевить и ускорить процесс проектирования в целом.

Научная новизна диссертации

1. Обоснованы принципы выбора наиболее часто употребляемых графических операций графических систем X Window для аппаратной их реализации. Основными критериями выбора таких операций являются частота вызова операции и степень получаемого аппаратного ускорения. Ограничивающим критерием являлась сложность аппаратной реализации данной функции. На основе этих припципов предложена общая методика проектирования графических ускорителей.

2. Предложены алгоритмы для аппаратной реализации выбранного набора графических операций X Window. Данные алгоритмы представляют собой описания работы на псевдокоде блока аппаратного ускорения той или иной функции и обеспечили при практическом применении значительное ускорение аппаратного выполнения основных графических процедур до 37,6 раз при допустимых затратах ресурсов на их реализацию (увеличении площади кристалла за счёт ускорителя на 54 % , повышении потребления мощности на 41 %).

3. На базе предложенных алгоритмов разработаны структурные решения и получены графы машин состояний для реализации основных блоков графических ускорителей. Полученные структурные решения и графы состояний позволяют выполнить дальнейшую схемотехническую и топологическую разработку графических ускорителей средствами САПР.

Предложены методы повышения производительности алгоритмов работы блоков аппаратного выполнения графических операций по сравнению с их прямой реализацией: а) ускорение рисования отрезка линии по алгоритму Брезенхема методом введения промежуточных буферов данных (достигается увеличение быстродействия в 2,1 раза по сравнению с прямой реализацией), б) ускорение заливки прямоугольной области с помощью увеличения разрядности шины данных (увеличение быстродействия работы блока до 16 раз), в) ускорение копирования прямоугольной области методом введения буферов данных на чтение и запись (увеличение быстродействия работы блока до 5 раз).

К другим существенным результатам диссертации, имеющим практическое значение, могут быть отнесены следующие:

1. Предложена реализация канала очереди графических команд, позволившая снизить затраты времени на опрос окончания аппаратного выполнения графической операции. При этом минимальный выигрыш по времени за счёт отсутствия по локальной шине PCI циклов ожидания окончания операции составит при глубине очереди графических команд М = 8 до 168 тактов частоты шины PCI. Выигрыш времени зависит от суммарного времени выполнения графических операций, помещенных в очередь команд.

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

3. Предложена методика оптимизации схемотехнической реализации графических ускорителей по количеству транзисторов путем выделения функционально идентичных блоков и их использования для выполнения различных функций. Для разделения доступа к этим общим блокам разработан алгоритм ар-битрирования запросов. Для созданного графического ускорителя данная методика обеспечила снижение количества требуемых логических элементов на 7,5%, и, соответственно, уменьшение на такую же величину потребляемой графическим ускорителем мощности.

Результаты диссертации, выносимые на защиту

1. Методика выделения графических функций X Window, предназначенных для аппаратной реализации.

2. Методика построения аппаратных средств графического ускорителя, предназначенного для отображения графической информации в индустриальных ЭВМ. Методика позволяет реализовать аппаратное выполнение основных графических операций X Window, ускоряя функцию рисования отрезка линии в 4 раза по сравнению с программным выполнением, и до 30 раз для копирования в 8-разрядном режиме, наращивать функциональные возможности таких микросхем, например, добавляя ещё одну очередь команд вывода на экран. Предложены методы и способы повышения быстродействия прямой реализации алгоритмов аппаратного выполнения графических операций.

3. Структура блоков графического ускорителя, реализующего аппаратное выполнение основных графических операций X Window, в составе графического контроллера, предназначенного для вывода графической информации на экран в системах на базе высокопроизводительных индустриальных ЭВМ. Диаграммы работы машин состояний блоков аппаратного ускорения графических операций.

Практическая ценность

Разработанные в диссертации методики проектирования графических ускорителей и алгоритмы реализации графических операций, предложенные структурные и схемотехнические решения для реализации основных блоков и субблоков были использованы при разработке двух типов отечественных микросхем графических контроллеров индустриального назначения 1890ВГ10Т и 1890ВГ14Т, выпускаемых серийно.

Графические контроллеры 1890ВГ10Т и 1890ВГ14Т позволяют выводить на экран изображение с высоким разрешением и кадровой частотой с глубиной цвета 8, 16 и 32 разряда на точку; при этом находящийся в их составе графический ускоритель способен осуществлять следующие графические операции:

• копирование прямоугольных областей в видеопамяти;

• копирование прямоугольных областей в видеопамяти с графической операцией;

• заливка прямоугольной области в видеопамяти фиксированным цветом;

• заливка прямоугольной области в видеопамяти фиксированным цветом с графической операцией;

• постановка точек по координатам;

• заливка прямоугольной области по маске, расположенной в памяти (копирование с расширением цвета);

• заливка прямоугольной области с отсечением по маске расположенной в памяти (копирование с расширением цвета с отсечением);

• заливка произвольной прямоугольной области с использованием расположенного в регистре шаблона 8x8 (как двухцветной, так и с отсечением);

• рисование линии нулевой толщины с использованием графической операции по начальной и конечной точкам (в том числе и пунктирной линии) с поддержкой отрицательных экранных координат;

• рисование линии нулевой толщины (в том числе и пунктирной) с использованием графической операции по начальной точке, длине и характеризующей наклон величине ошибки;

• обработка очереди графических команд.

Проведенные экспериментальные исследования и испытания микросхем 1890ВГ10Т и 1890ВГ14Т позволили оценить эффективность введения разработанного графического ускорителя для повышения производительности систем при выполнении графических процедур. Возможности функционирования в расширенном диапазоне температур обеспечиваются особенностями технологического процесса и применением металлокерамического или стеклокерамическо-го корпуса, обладающих способностью повышенного отвода тепла от кристалла.

Данные микросхемы используются в ряде ОКР по созданию автоматизированных систем управления индустриального и специального применения. С использованием данных микросхем создано новое поколение компьютеров серии «Багет», что подтверждается приложенными актами о внедрении.

Апробация диссертации

Основные положения диссертации докладывались и обсуждались на научно-технических конференциях и семинарах:

• Научно-техническая конференция «Электроника, микро- и наноэлектроника», 2001 г. (г. Пушкинские горы), 2002 г. (г. Пушкин), 2003 г. г. Кострома).

• Научные сессии МИФИ-2001 и МИФИ-2002.

• На семинарах НИИСИ РАН, межведомственных совещаниях и семинарах.

Публикации

По теме диссертации опубликовано 10 работ.

Структура и объем диссертации

Диссертация состоит из введения, трех глав, заключения и списка литературы. Диссертация содержит 145 страниц, 43 рисунка, 16 таблиц. Список литературы насчитывает 91 наименование.

Заключение диссертация на тему "Высокопроизводительные графические ускорители для систем индустриального назначения"

Выводы

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

Предложены алгоритмы аппаратной реализации основных графических операций Х-Windows:

• копирование прямоугольной области;

• заливка прямоугольной области;

• заливка прямоугольной области по одноцветной и двуцветной маскам;

• заливка прямоугольной области по одноцветной и двуцветной маскам узором 8x8 точек;

• формирование отрезка прямой линии по двум точкам либо по двум точкам и наклону;

• формирование отрезка прямой линии по двум точкам либо по двум точкам и наклону с поддержкой пунктира.

Данные алгоритмы позволяют произвести на их основе разработку структуры и схемотехнической реализации основных блоков графического ускорителя. На базе данных алгоритмов разработаны структурные решения для следующих блоков ускорителя:

1. Блок рисования отрезка прямой линии (раздел 3.2.1, 3.2.2). Блок реализует целочисленный алгоритм Брезенхема, при котором итеративно ставятся точки, принадлежащие рисуемой линии. Для ускорения работы в структуру блока введены буферы данных (раздел 3.2.3). В результате работы блока достигается ускорение выполнения этой графической операции в 2,5 раза по сравнению с программной реализацией.

2. Блок заливки прямоугольной области одним цветом (раздел 3.4.1). Блок работает с шиной данных шириной 128 разрядов, позволяющей за один цикл работы блока рисовать до 16 точек (раздел 3.4.4). В результате работы блока обеспечивается аппаратное выполнение данной операции, которое в 22,8 раз быстрее, чем программное.

3. Блок заливки прямоугольной области по маске (раздел 3.4.2). Данный блок также работает с шиной данных шириной в 128 разрядов, которая позволяет за один цикл ставить до 16 точек. Достигается ускорение операции при аппаратном выполнении в 22,8 раз по сравнению с программным выполнением.

4. Блок заливки прямоугольной области по маске узором 8x8 точек (раздел 3.4.3). Блок также работает с шириной шины данных 128 разрядов, но считывает маску из регистров, не обращаясь к памяти. Его быстродействие равно быстродействию блока заливки прямоугольной области одним цветом.

5. Блок копирования прямоугольной области (раздел 3.5.1). Блок работает с шиной данных шириной в 128 бит, что позволяет копировать до 16 точек за цикл работы блока. Для ускорения работы блока в его структуру введены буферы чтения данных (раздел 3.5.2). Ускорение аппаратного выполнения по сравнению с программным составило 37,6 раз.

Получены временные диаграммы работы машин состояния, управляющих функционированием данных блоков. Полученные структурные схемы и временные диаграммы позволяют произвести автоматизированный схемотехнический синтез и разработку топологии блоков ускорителя стандартными средствами САПР.

Предложена реализация очереди графических команд (раздел 3.7), позволяющая разгрузить центральный процессор и локальную шину, исключив N-1 циклов ожидания выполнения операции, где N-глубина очереди команд. Проведенная оценка показывает, что для реализации выбранного набора операций X-Windows целесообразно использовать глубину очереди М = 8, при этом достигается сокращение времени выполнения графических операций на величину от 168 тактов по шине PCI.

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

С использованием разработанных методик проектирования графических ускорителей и алгоритмов реализации графических операций, предложенных структурных и схемотехнических решений проведена разработка графических ускорителей для двух типов микросхем графических контроллеров 1890ВГ10Т, 1890ВГ14Т, выпускаемых серийно. На базе этих микросхем разработаны и изготовлены индустриальные графические модули в формате PCI Mezzanine Card [25]. Было произведено тестирование данных модулей и их сравнение с графическим ускорителем S3 Virge МХ+, установленным в персональном компьютере, по скорости выполнения типовых графических процедур. Полученные результаты показывают, что использование разработанных ускорителей обеспечивает ускорение выполнения типовых графических процедур до 37,6 раз. При выполнении большинства процедур (8 тестовых процедур из 10) графический ускоритель, реализованный в составе микросхемы 1890ВГ14Т, обеспечивает на отдельных задачах в 2,5 раза более высокое быстродействие, чем лучшие зарубежные образцы графических 2D ускорителей.

Заключение

Основным научным результатом диссертации является развитие методов проектирования высокопроизводительных графических контроллеров для систем индустриального назначения.

Основные теоретические результаты данной диссертации заключаются в следующем:

1. Обоснованы принципы выбора наиболее часто употребляемых графических операций графических систем X Window для их аппаратной реализации. На основе этих принципов предложена общая методика проектирования графических ускорителей.

2. Предложены алгоритмы для аппаратной реализации выбранного набора графических операций X Window. Данные алгоритмы обеспечивают значительное ускорение аппаратного выполнения основных графических процедур (до 37,6 раз) при допустимых затратах ресурсов на их реализацию (увеличении площади кристалла за счёт ускорителя на 54 % (из табл.3.5), повышении потребления мощности па 41% (из табл.3.6)).

3. На базе предложенных алгоритмов разработаны структурные решения и получены графы машин состояний для реализации основных блоков графических ускорителей. Полученные структурные решения и графы состояний позволяют выполнить дальнейшую схемотехническую и топологическую разработку графических ускорителей средствами САПР.

4. Предложены методы повышения производительности алгоритмов работы блоков аппаратного выполнения графических операций по сравнению с их прямой реализацией: а) ускорение рисования отрезка линии по алгоритму Брезенхема методом введения промежуточных буферов данных (достигается увеличение быстродействия в 2,1 раза по сравнению с прямой реализацией), б) ускорение заливки прямоугольной области с помощью увеличения разрядности шины данных (увеличение быстродействия работы блока до 16 раз), в) ускорение копирования прямоугольной области методом введения буферов данных на чтение и запись (увеличение быстродействия работы блока до 5 раз).

Основные практические результаты диссертации следующие:

1. Предложены и реализованы в микросхеме алгоритмы очереди графических команд, позволившие снизить затраты времени на опрос окончания аппаратного выполнения графической операции. При этом минимальный выигрыш по времени за счёт отсутствия по локальной шине PCI циклов ожидания окончания операции составит при глубине очереди графических команд М = 8 до 168 тактов частоты шины PCI. Выигрыш во времени зависит от суммарного времени выполнения графических операций, помещенных в очередь команд.

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

3. Предложена методика оптимизации схемотехнической реализации графических ускорителей по количеству транзисторов путем выделения функционально идентичных блоков и их использования для выполнения различных функций. Для разделения доступа к этим общим блокам разработан алгоритм ар-битрирования запросов. Для созданного графического ускорителя 1890ВГ10Т данная методика обеспечила снижение количества требуемых логических элементов на 7,5 %, и, соответственно, уменьшение на такую же величину потребляемой графическим ускорителем мощности.

Разработанные в диссертации методики проектирования графических ускорителей и алгоритмы реализации графических операций, предложенные структурные и схемотехнические решения для реализации основных блоков и субблоков были использованы при разработке двух типов отечественных микросхем графических контроллеров индустриального назначения 1890ВГ10Т и 1890ВГ14Т, выпускаемых серийно.

Проведенные экспериментальные исследования и испытания микросхем 1890ВГ10Т и 1890ВГ14Т позволили оценить эффективность введения разработанного графического ускорителя для повышения производительности систем при выполнении графических процедур. Возможности функционирования в расширенном диапазоне температур обеспечиваются особенностями технологического процесса и применением металлокерамического или стеклокерамическо-го корпуса, обладающих способностью повышенного отвода тепла от кристалла.

Сравнение результатов тестирования графических модулей, реализованных на базе разработанных микросхем графических контроллеров 1890ВГ10Т, 1890ВГ14Т и зарубежных образцов, показывает, что предложенные в диссертационной работе методы проектирования и структурно-схемотехнические решения ускорителей плоской графики обеспечивают существенное повышение производительности при выполнении основных графических операций до 32 раз по сравнению с программным выполнением.

Данные микросхемы используются в ряде ОКР по созданию автоматизированных систем управления индустриального и специального применения. С использованием данных микросхем создано новое поколение компьютеров серии «Багет», что подтверждается приложенными актами о внедрении.

Библиография Корниленко, Александр Владимирович, диссертация по теме Элементы и устройства вычислительной техники и систем управления

1. Рэй Алдерман. Путешествие по рыночной матрице, часть 3. Сегмент военных, научных и телекоммуникационных приложений. // V1.A Journal - December 1995

2. Вольфганг Эйзенбарт. Автоматизация опасных промышленных объектов. // "Средства и системы компьютерной автоматизации". http://www.asutp.ru/? р=600605

3. Николаев A. GUI во встраиваемых системах. // PCWeek/RE 2006, № 19.

4. Крылов Е. И . Графические контроллеры для гибких мультимедийных решений фирмы Fujitsu // http://www.cec-mc.ru/read/art20.shtml

5. В.Беляев. Мировой рынок средств отображения информации. В цифрах и таблицах. // Электроника: наука, технология, бизнес. 2005, №8.6. 69000 HiQVideo Accelerator with Integrated Memory. Data Sheet Revision13. // Chips and Technologies, Inc. August 1998

6. MB87J2120 & MB87P2020 -A. Lavender & Jasmine, Colour LCD/CRT/TV Controller Specification. // Fujitsu Microelectronics Europe GmbH.

7. Mobile Computer Display Controller, Preliminary Version 1.3. // Silicon Motion , Inc.

8. Scheifler R.W., Gettys J. X Window System: the complete reference to Xlib, X Protocol ICCCM, XLFD.// 3-rd edition.

9. Ю.Шишарин С. Российские производители микросхем. Пути выхода из кризиса // PCWeek/RE. 2003, № 111.. Кузнецов С.Н. Встраиваемые системы для военных и космических применений.// PCWeek/RE. 2000, №18.

10. Krinitsin V. Pentium 4 and Athlon XP: Thermal Conditions//http://www.digit-life.com13. http://ebusiness.artisan.com/index.html

11. QUALIFIED MANUFACTURERS LIST OF PRODUCTS QUALIFIED UNDER PERFORMANCE SPECIFICATION MIL-PRF-38535 INTEGRATED CIRCUITS (MICROCIRCUITS) MANUFACTURING

12. GENERAL REQUIREMENTS FOR. // QML-38535-20. 2-Feb-2007

13. Glasow A., Fischer A.H. A comparison of reliability aspects of a 0.35jam and 0.18|дт process copper metallization // Invited Paper Advanced Metallization Conference-2000. http://www.copper-reliability.com/own-paper/AMC-2000.pdf

14. Black J.R. Electromigration — A brief survey and some recent result// IEEE Trans. On electron devices.- ED-16-1969.- C.338-347

15. A Scaling Scheme for Interconnect in Deep-Submicron Processes/ Rahmat K., Nakagawa O.S., Oh S-Y., Moll J., Lynch W.T.// http://www.hpl.hp.com/techreports/95/HPL-95-123.pdf

16. Cadence CRITICAL NANOMETER DESIGN ISSUES// http://nanometer.cadence.com/criticalissues.html

17. Glasow A.von, Fischer A.H. Electromigration and Stressmigration Failure Mechanism Studies in Copper Interconnects// ПТС 2002 http://www.copper-reliability.com/Myresults.htm

18. Linux Xfree86 // http://emanual.ru/download/www.eManual.ru2979.html

19. Что такое DirectX? // http://emanual.ru/download/wvvw.eManual.ru40.html

20. ГукМ. Аппаратные интерфейсы ПК. // СПб.: Питер, 2003. 528 стр, илл.

21. Andy Cockburn, Bruce McKenzie. Evaluating the Effectiveness of Spatial Memory in 2D and 3D Physical and Virtual Environments. // http://citeseer.ist.psu.edu/479772.html

22. A. H. Рыбаков, Т. И. Зеленова. Локальная шина PCI: обзор. // "Средства и системы компьютерной автоматизации" http://www.asutp.ru/?p=600186

23. Рой Вебстер. РМС-мезонины выходят в лидеры коммуникационной отрасли.// "Средства и системы компьютерной автоматизации" -http://www.asutp.ru/?p=600020

24. А.Лапин. Средства отображения информации. // Электроника: наука, технология, бизнес 2005, №8.

25. Средства отображения информации. Каталог НПО "Интеграл". // Минск. -2005.

26. В.Майская. Возможны перемены. ДОЗУ идут на смену СОЗУ. // Электроника: наука, технология, бизнес. 2003, №8.

27. А.Веселов. Микросхемы памяти фирмы Samsung Electronics. Обзор продукции. // Электроника: наука, технология, бизнес. 2002, №1.

28. М.Валентинова. Экзотическая память. Гонки продолжаются. // Электроника: наука, технология, бизнес. 2001, №6.

29. Пол Марш. Будущее плоскопанельных дисплеев. // CIE 1999, №5.

30. Ю.Адамов, Я.Губин, А.Сибагатуллин. Интегральные схемы для видеоинтерфейса жидкокристаллических панелей. // Электроника: наука, технология, бизнес. 2005, №8.

31. Altera, Processor & Peripheral Megafunction, AMPP, // http://www.altera.com/.

32. В.Майская. ПЛИСы всякие нужны, ПЛИСы всякие важны. // Электроника: наука, технология, бизнес. 2005, №3.

33. А.Лохов, А.Рабоволюк. Средства проектирования FPGA компании MENTOR GRAPHICS. // Электроника: наука, технология, бизнес. 2004, №4.

34. А.Погорилый, А.Соколов. Отладка устройств, реализованных на ПЛИС. Логический анализатор, размещенный внутри ПЛИС. // Электроника: наука, технология, бизнес. 2004, №4.

35. В.Майская. Программируемые логические микросхемы. // Электроника: наука. технология, бизнес. 2004, №4.

36. Эгрон Ж. Синтез изображений. Базовые алгоритмы: Пер. с франц. // М.: Радио и связь. 1993. - 216 е.: ил.

37. Е. Угрюмов Цифровая схемотехника. // СПб.: Санкт-Петербург, 2001. 528 с.

38. Савельев А. Я. Арифметический и логические основы цифровых автоматов: Учебник. // М.: Высшая школа, 1980. 255 е., ил.

39. Баранов В.П. Синтез микропрограммных автоматов. // М.: Нолидж. 1997. -376 с.

40. Е. А. Никулин. Компьютерная геометрия и алгоритмы машинной графики. // СПб: "БХВ-Петербург" 2003 г - 560 стр.43. 20-графика / Многоугольники, отрезки Сборник программ // http://blitzetc.boolean.name/codelib/2d-polygons.htm

41. М.Петров, С.Заболотский. Оптимизированная структура FPGA для продукции массового спроса. Микросхемы Lattice ЕСР/ЕС // Электроника: наука, технология, бизнес. 2005, №3.

42. А.Филатов. Становление нового сегмента рынка FPGA. Экономичные системные решения на FPGA. // Электроника: наука, технология, бизнес. 2005, №3.

43. Вирт Н. Алгоритмы и структуры данных. Пер. с англ. // М.: Мир, 1989.- 360 с.

44. Бобровский С. Алгоритмы, применяемые в играх. // http://maker.dn.farlep.net/? article=4&b=l

45. В.Беляев. Средства отображения информации на старте тысячелетия. // Электроника: наука, технология, бизнес. 2001, №6.

46. Баранов И. Применение графических дисплеев взамен символьных моделей. // Новости электроники. 2006, №2.

47. Graphics Performance Accelerators (GPA) //http://www.intel.com/support/motherboards/desktop/d815eea2/sb/cs-013029.htm

48. Акритас А. Основы компьютерной алгебры с приложениями. Перевод с английского Панкратьева Е.В. // М.:"Мир",1994

49. А.Н. Рыбаков. Военный аспект. // Средства и системы компьютерной автоматизации. http://www.asutp.ru/?p=600206)

50. Ким Рубин. Десять заповедей проектирования устройств ввода/вывода. // Средства и системы компьютерной автоматизации. http://www.asutp.ru/?p= 600238

51. Жданов А.А. Операционные системы реального времени // PCWeek/RE -1999, №8.

52. Жданов А, Латыев А. Замечания о выборе операционных систем при построении систем реального времени. // PCWeek/RE. 2001, № 1.

53. Джон Фогелин, Хан Квинг. Реализация высокой готовности во встраиваемых системах.// Средства и системы компьютерной автоматизации. -http://www.asutp.ru/?p=600410

54. Бевз А, Хохловский В. Компания ШНЕИДЕР: Системы верхнего уровня для отображения технологической информации и управления // http://www.asutp.ru/? р=600380

55. Рыбак О. С. Графический инструментарий в SCADA-системе Citect. // http://www.rtsoft.ru/ru/

56. Jerry Fiddler. Linux In Embedded System: Where Are The Benefits? // http://www.windriver.com/

57. OpenGL ES* 1.0 Framework Software Developer's Guide, White Paper // http://www.intel.com/design/pca/companion/whitepapers/30327202.pdf

58. Разевиг В. ГИС и САПР: что нового. // PCWeek/RE. 2000, № 2

59. Rob Pike, Bart Locanthi, John Reiser. Hardware/Software Tradeoffs for Bitmap Graphics on the Blit //http://citeseer.ist.psu.edU/cache/papers/cs/15744/http:zSzzSzcm.bell-labs.comzSzcmzSzcszSzdoczSz87zSzarchtr.pdf/pike85hardwaresoftware.pdf

60. Jian Huang, Roni Yagel, Vassily Filippov, and Yair Kurzion. An Accurate Method To Voxelize Polygonal Meshes //http://citeseer.ist.psu.edU/cache/papers/cs/12886/http:zSzzSzreality.sgi.comzSzyairen grzSzpaperszSzpolygon.pdfZhuang98accurate.pdf

61. Selection of commonly used terms in embedded graphics. // http://www.fujitsu.com/emea/services/microelectronics/displaycontrollers/glossary/

62. Rob Pike. The Blit: A Multiplexed Graphics Terminal // http://citeseer.ist.psu.edu/ pike84blit.html

63. Rob Pike. Graphics in Overlapping Bitmap Layers // http://citeseer.ist.psu.edu/pike83graphics.html

64. Rob Pike. 8,5, the Plan 9 Window System. // http://citeseer.ist.psu.edu/10933.html

65. NS32FX161-15NS32FX161-20NS32FX164-20

66. NS32FX164-25NS32FV16-20NS32FV16-25 Advanced Imaging Communication Signal Processors //http://citeseer.ist.psu.edu/494819.html

67. Steven Roth. Interactive Graphic Design Using Automatic Presentation Knowledge (1994). // http://citeseer.ist.psu.edu/roth94interactive.html

68. Marc A. Najork, Marc H. Brown. A Library for Visualizing Combinatorial Structures (1994) //http://citeseer.ist.psu.edu/najork941ibrary.html

69. D. Michelucci. Arithmetic Issues in Geometric Computations. // http://citeseer.ist.psu.edu/michelucci96arithmetic.html ,

70. D. F. Wiley, H. R. Childs, B. F. Gregorski, B. Hamann, К. I. Joy. Contouring Curved Quadratic Elements (2003) // http://citeseer.ist.psu.edu/wiley03contouring.html

71. Dieter W. Fellner, Martin Fischer. A 2D Graphics Interface Based on CGI. -http://citeseer.ist.psu.edu/fellner93graphics.html

72. Robert W. Lindeman, John L. Sibert, James K. Hahn. Hand-Held Windows: Towards Effective 2D Interaction in Immersive Virtual Environments -http://citeseer.ist.psu.edu/lindeman99handheld.html

73. Gareth Smith. Cooperative Virtual Environments: lessons from 2D multi user interfaces. http://citeseer.ist.psu.edu/smith96coopcrative.html

74. Ю.Борисов. Отечественная электронная промышленность и компонентная база. Перспективы развития // Электроника: наука, технология, бизнес. 2006, №2.

75. А.Садчихин, С.Созинов, А.Морозов. Программно-аппаратные комплексы на основе отечественных составных экранов // Электроника: наука, технология, бизнес 2005, №8.

76. В.Телец, С.Цыбин, А.Быстрицкий, С.Подъяпольский. ПЛИС для космических применений. Архитектурные и схемотехнические особенности. // Электропика: наука, технология, бизнес. 2005, №6.

77. В.Майская. LVDS-устройства. Гигабиты за милливатты. // Электроника: наука. технология, бизнес. 2005, №7.

78. В.Ломакин. Высокопроизводительные микропроцессоры/микроконтроллеры класса "система на кристалле". // Электроника: наука, технология, бизнес. 2005, №7.

79. Е.Дмитриев. Разработка элементной базы фотоприемных устройств отображения видеоинформации. // Электроника: наука, технология, бизнес. 2005, №2.

80. А.Бухтеев, В.Немудров. Системы на кристалле. Новые тенденции. // Электроника: наука, технология, бизнес. 2004, №3.83. http://www.altera.com/products/devices/dev-index.jsp

81. Бриндли К., Карр Дж. Карманный справочник инженера электронной техни-ки./Пер. с англ. // М.: Издательский дом «Додека XXI», 2002. - 480 стр., ил.85. http://wvvw.s3graphics.com/

82. И. Каршенбойм. Микросхемы FPGA фирмы Actel //Компоненты и технологии 2002, №3

83. Ракович Н.Н. TFT-дисплеи — информативно, функционально, просто // Компоненты и технологии. 2002, №4

84. Александр Самарин. Обзор современных цифровых дисплейных интерфейсов для плоских экранов // Компоненты и технологии. 2006, №1

85. Ракович Н.Н. Одноплатные компьютеры VersaLogic: ни мороз им не страшен, ни жара // Компоненты и технологии. 2004, №9

86. Интервью с начальником 22 ЦНИИС МО РФ контр-адмиралом Ю. И. Степановым «Об особенностях применения импортных компонентов в военной и специальной технике» // Компоненты и технологии. 2007, №1

87. Грег Роуз. Вопросы успешного применения ОС Linux во встраиваемых системах // Мир компьютерной автоматизации. 2002, № 3