LINUX.ORG.RU

Открытый графический ускоритель ORSoC Graphics Accelerator

 , , , open vga


3

4

На сайте OpenCores обновилась информация о графическом ускорителе, который уже успешно работает в OpenRISC System-on-Chip. Пока в FPGA. Демо на YouTube:

По данным Phoronix, проект разработан шведскими студентами Антоном Фосселиусом (Fosselius, Anton) и Пером Ленандером (Lenander, Per) в рамках магистерской диссертации.

Ускоритель уже умеет:

  • Рисовать отрезки.
  • Рисовать прямоугольники с заливкой и текстурами.
  • Рисовать треугольники с заливкой, текстурами и интерполяцией.
  • Рисовать квадратичные кривые Безье.
  • Печатать текст растровыми и векторными шрифтами.
  • Использовать при рисовании альфа-сопряжение.
  • Использовать при рисовании цветовые ключи.
  • Рисовать 3-мерные сетки с поддержкой буфера глубины (Z-буфера).
  • Масштабировать и вращать треугольники и векторные шрифты.

Пока поддерживаются следующие графические форматы:

  • Шрифты .TTF.
  • 3-мерные сетки .OBJ.
  • Все растровые изображения, поддерживаемые SDL_image: .BMP, .PNG, .JPG...

Непосредственно для работы с дисплеем CRT или LCD необходим контроллер VGA. Авторы рекомендуют Enhanced LCD/VGA Driver core с того же OpenCores.

OpenGL не поддерживается. В данный момент авторы заняты написанием полноценного драйвера DirectFB под Линукс. И будут признательны, если им помогут сделать DRM/KMS драйвер.

>>> Страница проекта на OpenCores

★★★★★

Проверено: tazhate ()
Последнее исправление: Silent (всего исправлений: 2)

Это устройство уже готово для изготовления в аппаратном варианте? Нужно ли её дорабатывать для выпуска микросхемы?

ZenitharChampion ★★★★★
()
Ответ на: комментарий от ZenitharChampion

Это устройство уже готово для изготовления в аппаратном варианте? Нужно ли её дорабатывать для выпуска микросхемы?

написано же что «FPGA proven», что еще интересует? :)

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

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от frd

еще бы он ускорял чего-нибудь, а то видео не сильно впечатляет :-)

Их в комментариях спрашивают, предельная ли это скорость. Пока не ответили.

question4 ★★★★★
() автор топика
Ответ на: комментарий от I-Love-Microsoft

> написано же что «FPGA proven», что еще интересует? :)

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

> им бы современную универсальную архитектуру пилить, чтобы и OpenGL и OpenCL в дальнейшем был возможен, а такая разработка она едва ли имеет смысл и интерес

Если бы кто-нибудь сделал видеокарты с OpenGL2, которые за $100 выдают плавную картинку нового уровня, то OpenGL там был бы не нужен. Но потом пришлось бы добавить OpenGL и Direct3D, потому что AMD и NVIDIA вскоре тоже реализуют у себя OpenGL2.

ZenitharChampion ★★★★★
()
Ответ на: комментарий от ZenitharChampion

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

Вы вообще представляете процесс производства микросхем?

Сделано так называемое «IP core», описание схемы на переносимом HDL-языке. Оно успешно скомпилировано в прошивку для FPGA. С тем же успехом его можно скомпилировать в маски для изготовления микросхемы. Если при этом возникнут какие-то проблемы, это вина корявого компилятора производителя чипов, а не HDL-описания.

Если бы кто-нибудь сделал видеокарты с OpenGL2, которые за $100 выдают плавную картинку нового уровня, то OpenGL там был бы не нужен. Но потом пришлось бы добавить OpenGL и Direct3D, потому что AMD и NVIDIA вскоре тоже реализуют у себя OpenGL2.

Это вопрос драйвера. Современные видеокарты получают поток ассемблерных инструкций, который с OpenGL связан довольно слабо. Если набор инструкций достаточно полон, на нем можно реализовать OGL/D3D/OpenCL/что_угодно.

Yampp
()

Все, можно уже крузис запускать.

tekk ★★★★★
()
Ответ на: комментарий от frd

еще бы он ускорял чего-нибудь, а то видео не сильно впечатляет :-)

Частота чипа - 50mhz. Чтобы было быстрее - нужно реализовать «в железа», а не на FPGA.

Deleted
()
Ответ на: комментарий от Deleted

Частота чипа - 50mhz. Чтобы было быстрее - нужно реализовать «в железа», а не на FPGA.

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

question4 ★★★★★
() автор топика
Ответ на: комментарий от ZenitharChampion

Не представляю, спасибо за разъяснение. Я думал, что для FPGA нужно писать специфичный код.

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

кроме того они (подобные компании) наверняка и сами тестят свои будущие микросхемы на FPGA, про одну фирму знаю точно

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

первые еще можно обернуть во что-то универсальное-прослойку, но тем не менее...

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от frd

Я так и не понял, это они на модели пускали, или на плисе? для плиски тормознуто. А если на модели, то в самый раз.

AiFiLTr0 ★★★★★
()

Фигня какая-то. Проект сгниёт недоразвитым. Но во что он может вылиться теоретически?

fero ★★★★
()

не понятно зачем клонировать овцу

Жаль, что ребята тратятся на все эти ТТФ, которые они там делают, гораздо интереснее сделать примитивы для отрисовки кастомных форматов экспериментальных данных типа netcdf. Там, где люди готовы платить за Дело, это оценят по достоинству.

sanaris
()
Ответ на: комментарий от AiFiLTr0

Я так и не понял, это они на модели пускали, или на плисе? для плиски тормознуто. А если на модели, то в самый раз.

На плисе. У них драйвер недоделанный, и программа, которая это видео рисует, тормозная.

question4 ★★★★★
() автор топика
Ответ на: комментарий от question4

Тогда для плиса тормознуто... Даже для 50Mhz. У меня и и то быстрее. Правда, я так VGA и не доделал, и судить могу по дампам видеопамяти.

AiFiLTr0 ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

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

Если ты в этом разбираешься, не мог бы пояснить про WishBone? Я понял, что это — стандарт на интерфейс, обеспечивающий совместимость составных частей того же ORSoC. Не расскажешь ли подробнее?

question4 ★★★★★
() автор топика
Ответ на: комментарий от DinoAsm

Обьясните тупому, что значит open source cores and platforms ?

Просто кто-то грезит свободным(не как пиво, а как свобода слова) железом и стандартами для этого железа(что уже довольно забавно, ведь пилит-то его сообщество).

Lighting ★★★★★
()
Ответ на: комментарий от question4

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

О сайте там ни слова, только о разработке SoC. Потрудился бы прочитать сначала.

Lighting ★★★★★
()
Ответ на: комментарий от DinoAsm

Обьясните тупому, что значит open source cores and platforms ?

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

question4 ★★★★★
() автор топика
Ответ на: комментарий от DinoAsm

Обьясните тупому, что значит open source cores and platforms ?

Современные цифровые схемы пишутся точно так же, как программы - на языках Verilog, VHDL, SystemC. Описывать можно довольно высокоуровневое поведение. Потом все это компилируется («синтезируется») либо в электронную схему, либо в прошивку для ПЛИС. Сборка сложной схемы из компонентов делается так же, как линковка программы с библиотеками.

Например, я хочу сделать специализированный процессор. Я беру Verilog-код ядра ARM, добавляю к нему Verilog-код контроллера DDR2-памяти, периферию (UART там всякие), код видеоускорителя (например, PowerVR), собираю все вместе. Дописываю свои куски кода - например, аппаратный GSM или ускоритель криптографии. Остается все это скомпилировать - и процессор готов.

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

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

Yampp
()
Ответ на: комментарий от I-Love-Microsoft

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

Фигня и проблемы компилятора. У всех современных FPGA сильно разная архитектура внутри, но 99% ее разруливают map и par, если не синтез. Специфичные блоки видны как «черные ящики» с документированным и достаточно удобным интерфейсом.

Гораздо хуже отсутствие нормальных опенсорсных инструментов и стандартов. RapidSmith, VTR и Torc - лучшее, что вообще существует, а это очень мало. И все время натыкается на патентный троллинг, потому и развивается херово. При этом фирменные, закрытые компиляторы - отстой, в их развитие мало вкладываются.

Yampp
()

OpenCores, это клёво, но напрягает пейпал. Скорее бы все ещё и гугловский гейт начали подключать, можно было бы нормально донейтить.

ForwardToMars
()
Ответ на: комментарий от question4

Если ты в этом разбираешься, не мог бы пояснить про WishBone? Я понял, что это — стандарт на интерфейс, обеспечивающий совместимость составных частей того же ORSoC. Не расскажешь ли подробнее?

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

я же про другое писал...

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от Yampp

И все время натыкается на патентный троллинг, потому и развивается херово.

А насколько реально подобные «тёмные» дела вести в том же i2p?

O02eg ★★★★★
()
Ответ на: комментарий от question4

и если честно, я не сильно разбираюсь в проектах на OpenCores, ну юзал я altera nios и xilinx microblaze, собирал сам, запускал и т.п.

это крайне просто, ничего особенного, поэтому призываю изучать FPGA - очень пригодится, помимо навыков писать программы

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от O02eg

Я описывал не только это,но не здесь а в соответствующем месте.

НО это таки информационный ресурс о более «значимых» событиях мира опенсурс.

Т.е. банальная аналогия-в международном журнале о международных соревнований начнут освещать ВСЕ «международные» соревнования(по чемуугодно) со всего мира,т.е. вместо освещения международных событий(крупных грубо говоря) будут освещаться-международное соревнование по перетягиванию каната в селе гадюкина,или-международное соревнование по поеданию макарон во флоренции...

Количество таких событий в день тебе сказать?

anonymous
()
Ответ на: комментарий от anonymous

НО это таки информационный ресурс о более «значимых» событиях мира опенсурс.

Количество таких событий в день тебе сказать?

Скажи. Сколько существует живых и активных проектов по созданию открыто-свободного 3D-ускорителя?

Project VGA бесследно исчез. Open Graphics не обновлялось полтора года. Ещё есть?

ORSoC Graphics Accelerator — студенческая разработка. Но она уже работает, и ею заинтересовалась шведская фирма, которая продаёт устройства для промышленной автоматизации. То есть после 3 месяцев работы они ближе к внедрению, чем их предшественники.

question4 ★★★★★
() автор топика
Ответ на: комментарий от Yampp

Фигня и проблемы компилятора. У всех современных FPGA сильно разная архитектура внутри, но 99% ее разруливают map и par, если не синтез. Специфичные блоки видны как «черные ящики» с документированным и достаточно удобным интерфейсом.

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

ifred
()
Ответ на: комментарий от frd

еще бы он ускорял чего-нибудь, а то видео не сильно впечатляет :-)

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

atrus ★★★★★
()
Ответ на: комментарий от question4

Зачем производство? Никто не купит. Как развлечение слишком заумно, для практической работы не годитсяю

anonymous
()
Ответ на: комментарий от anonymous

Зачем производство? Никто не купит. Как развлечение слишком заумно, для практической работы не годится

Значит фирма считает, что годится :)

question4 ★★★★★
() автор топика
Ответ на: комментарий от af5

Требую видео-тест работы кипятильника в морозильнике

Утюг пойдёт? http://www.youtube.com/watch?v=hsz-gY29Z_s (Предупреждаю: реклама.) Начиная с 1:40. Утюг выиграл, разогрев до +32C.

question4 ★★★★★
() автор топика
Ответ на: комментарий от I-Love-Microsoft

это гениально - демонстрация ускорителя с задержками :)

Имеет смысл, если цель — показать качество изображения.

question4 ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.