реклама на сайте
подробности

 
 
> Основы PowerVr SGX 530, Hello world! для сопроцессора
LWW
сообщение Jan 16 2012, 21:10
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 177
Регистрация: 24-03-07
Пользователь №: 26 471



Возьмём за основу AM3358. Пишу на ассемблере. С кортексом всё ясно, натравил его на ассемблерный код, он и работает. Точно так же два параллельных ядра PRU. Тривиально.

Но с графическим ускорителем столкнулся впервые. Ни ассемблера, ни описания команд..

Думал может под NDA? Что в переводе на русский язык означает - Nикому не DAвать. Тогда я прямо и без запинки совести написал в imgtec с просьбой выдать мне пакет документов: PowerVR SGX Series5 Instruction Set и Technical Reference Manual. И что вы думаете? Они, видимо посчитав меня придурком, и решив что я издеваюсь, не ответили! smile3046.gif

И тогда я понял, что всё гораздо проще. Нет там никакого ассемблера и референсного мануала. А есть интерфейс, который принимает стандартные машинные коды ОpenGL. Быстренько обрабатывает их и выкидывает в буфер. И всё. Что делать дальше, пока не знаю laughing.gif

Подскажите, как нарисовать на экране свой первый треугольник? Что является Hello world! для графического сопроцессора. Скачал POWERVR SDK, там есть демки, содержат кучу файлов. Сишные коды, картинки.. Назначения не понял..

Графический ускоритель держу в руках впервые! Сильно не ругайте.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
simne
сообщение May 16 2012, 01:18
Сообщение #2





Группа: Новичок
Сообщений: 2
Регистрация: 16-05-12
Пользователь №: 71 858



Цитата(LWW @ Jan 16 2012, 23:10) *
И тогда я понял, что всё гораздо проще. Нет там никакого ассемблера и референсного мануала. А есть интерфейс, который принимает стандартные машинные коды ОpenGL. Быстренько обрабатывает их и выкидывает в буфер. И всё.

Ну вобщем вы описали похоже на правду, только там не коды OpenGL, а специальный процессор, который как процессор примитивизированный - у него нет многих команд типичных для CPU, а вместо этого у него свои команды, по сути таки ассемблерные но специализированные - типа скопировать из памяти строку на видеовыход (по сути там у процессора акселератора встроенный DMA и часть команд как раз этим DMA управляет); плюс в акселераторе часто есть регистры откуда начинается видеопамять, то есть если вам нужно скроллить экран, то не копируется информация а просто меняется адрес и акселератор показывает картинку с другого места.
Называется набор команд графакселератора обычно displaylist или как-то похоже.
Если вы ассемблерщик, то лучше всего почитайте про работу графического акселератора древних atary вроде 65XE, а поэкспериментировать можно на эмуляторах.
http://en.wikipedia.org/wiki/ANTIC

В современных 3D акселераторах добавились новые модули и новые ступени обработки, но идеологически современные акселераторы являются развитием тех самых atary и именно управление акселератором из ассемблера работает практически также - пишется displaylist в определенную область памяти и дальше происходит магия.
SDK нужен потому что displaylist работает с специальными форматами картинок и прочих данных, и нужно их вначале в этот формат преобразовать а потом уже копировать в память акселератора. А если работа идет под какой-то ОС, то соответственно приложение должно эти все копирования делать не просто так а взаимодействуя с ОС.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- LWW   Основы PowerVr SGX 530   Jan 16 2012, 21:10
- - LWW   Читаю доки по OpenGL. Но меня терзает главный вопр...   Aug 28 2012, 20:36
- - LWW   Если OpenGL независим от языка, значит он и незави...   Aug 29 2012, 14:51
- - Konst_777   Цитата(LWW @ Jan 17 2012, 00:10) Возьмём ...   Aug 29 2012, 16:34
- - LWW   Там ни слова о железе. Только это страшное слово S...   Aug 29 2012, 16:51
- - SII   Документация на графический процессор полностью за...   Aug 29 2012, 18:08
- - LWW   В новом SAMA5D34 полностью документированный хорош...   Feb 22 2013, 21:58
|- - sasamy   Цитата(LWW @ Feb 23 2013, 01:58) В новом ...   Feb 23 2013, 09:15
- - LWW   Я просто и не знал, что бывают графические сопроце...   Feb 23 2013, 10:17
|- - sasamy   Цитата(LWW @ Feb 23 2013, 14:17) Мне понр...   Feb 23 2013, 10:28
- - LWW   Ну понятно, чё. Ассемблер. Многие сразу падают со ...   Feb 23 2013, 10:34
- - SII   Я весь "низкоуровневый" код тоже на ассе...   Feb 23 2013, 14:37
- - silentjet   > Если интересует, как работают графические про...   Feb 26 2013, 08:03
- - LWW   Но вот именно рендеринг и не нужен. Зачем он вообщ...   Feb 26 2013, 08:12
|- - silentjet   Цитата(LWW @ Feb 26 2013, 10:12) Но вот и...   Mar 4 2013, 20:37
- - LWW   sasamy Пытаюсь найти нечто вроде GPU2D Reference ...   Mar 4 2013, 16:28
- - LWW   silentjet Ку-ку Я ищу дырку в камне, через котор...   Mar 5 2013, 08:50


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 14th August 2025 - 08:21
Рейтинг@Mail.ru


Страница сгенерированна за 0.01372 секунд с 7
ELECTRONIX ©2004-2016