Страницы:Кликните, чтобы указать произвольную страницуназад3далее
Vasyavanya: Одноплатные встраиваемые компьютеры: Raspberry Pi, BeagleBone Black
An_private
Member
3358/16138 ответов, #102 в рейтинге
21 год на iXBT, с апреля 2003
Чаще пишет Р Р† "Видеозахват" (33%)
Россия, Санкт-Петербург
Web-страница
Инфо Ответить
An_private Member
11 лет назад / 08 июля 2014 16:51
Джамаль
Хоть на сях, хоть на асме рисуй.
Ну, не так всё просто - там всё-таки ARM11 - его мало кто поддерживает. Просто хотелось бы какие-то примеры работы с видеокартой на голых сях без ос, например. Вот такого что-то вообще не нахожу.
niXto
Best Engineer 2013
4947/5676 ответов
15 лет на iXBT, с июня 2009
Чаще пишет Р Р† "Эл. устройства" (89%)
Беларусь
Инфо Ответить
n
niXto Best Engineer 2013
11 лет назад / 08 июля 2014 16:56
Джамаль
Дык, обыкновенный этот как его ARM.

Только даташиты с полным описанием требухи вроде закрытые... Типа "нафиг вам низкоуровневый доступ, ставьте линух и через АПИ"...
undefined_opcode
Member
395/838 ответов
13 лет на iXBT, с сентября 2011
Чаще пишет Р Р† "Эл. устройства" (49%)
Инфо Ответить
u
undefined_opcode Member
11 лет назад / 10 июля 2014 13:13
An_private
Ну, не так всё просто - там всё-таки ARM11 - его мало кто поддерживает.
Обычный GCC в версии для ARM поддерживает как правило все что угодно. Вот например образчик... .
01Known ARM CPUs (for use with the -mcpu= and -mtune= options):
02   arm1020e arm1020t arm1022e arm1026ej-s arm10e arm10tdmi arm1136j-s
03   arm1136jf-s arm1156t2-s arm1156t2f-s arm1176jz-s arm1176jzf-s arm2 arm250
04   arm3 arm6 arm60 arm600 arm610 arm620 arm7 arm70 arm700 arm700i arm710
05   arm7100 arm710c arm710t arm720 arm720t arm740t arm7500 arm7500fe arm7d
06   arm7di arm7dm arm7dmi arm7m arm7tdmi arm7tdmi-s arm8 arm810 arm9 arm920
07   arm920t arm922t arm926ej-s arm940t arm946e-s arm966e-s arm968e-s arm9e
08   arm9tdmi cortex-a15 cortex-a5 cortex-a7 cortex-a8 cortex-a9 cortex-m0
09   cortex-m0plus cortex-m1 cortex-m3 cortex-m4 cortex-r4 cortex-r4f cortex-r5
10   cortex-r7 ep9312 fa526 fa606te fa626 fa626te fa726te fmp626 generic-armv7-a
11   iwmmxt iwmmxt2 marvell-pj4 mpcore mpcorenovfp native strongarm strongarm110
12   strongarm1100 strongarm1110 xscale
Там же и ассемблер поблизости, но я не думаю что вам понравится раскочегаривать ARM11 на асме.

Просто хотелось бы какие-то примеры работы с видеокартой на голых сях без ос, например. Вот такого что-то вообще не нахожу.
У вас мазохизма много? Вы вообще даташиты на GPU когда-нибудь видели? А у Pi насколько я помню GPU - это такой довольно самодостаточный DSP, с своей операционкой или типа того.

А вот анализировать GPIO с частотой опроса порядка 100 кГц и выдавать результаты на экран - это реально с такими платками?
Это как раз лучше на микроконтроллере, а на пи-образных только получение данных с uC и визуализацию. Не предназначены большие процы для быстрых резких дерганий. И программить их напрямую, без операционки... ээээ... как бы это сказать, они навороченные и это может быть утомительным начинанием. Если вы хотите что-то типа относительно шустрого вывода графики на экран, без всяких особых виджетов, навороченных гуйных тулкитов и прочего - можете посмотреть на нечто типа libsdl, она игроделами и прочими программами активно рисующими всякую графику используется. Что-то типа простой морды с результатом на экран на нем довольно просто сделать будет. В общем люители малины к ней давной уже Arduino цепляют для улучшений свойств по GPIO/датчикам/...
An_private
Member
3359/16139 ответов, #102 в рейтинге
21 год на iXBT, с апреля 2003
Чаще пишет Р Р† "Видеозахват" (33%)
Россия, Санкт-Петербург
Web-страница
Инфо Ответить
An_private Member
11 лет назад / 10 июля 2014 15:17
undefined_opcode
У меня сейчас виден некоторый разрыв в шаблоне возможностях. То есть вот есть ряд - простенькие задачи решаю на AVR. Посложнее - на STM32F1xxx. Сложные - на компе. Вот для меня видна дыра между STM32 и компом.
GUI мне как таковой не нужен - то есть я цепляю при необходимости к STM32 стандартный LCD 320х240 и общаюсь с ним напрямую. Но тут есть проблема - общение STM32 с индикатором идёт через интерфейс 8080, который сильно тормозит (даже при использовании FSMC). Для банальной выдачи пикселя надо сделать немало телодвижений и скорость выдачи весьма низкая.
В идеале хотелось бы что-то типа того же STM32, но у которого бы а) видеопамять была видна напрямую в адресном пространстве М/К б) рабочая частота процессора хотя бы мегагерц 400.
Ну примерно как в незапамятные времена было на IBM PC и VGA/SVGA адаптерах. Так как очень не хочется разделять задачи сбора данных и их отображения. А то сейчас приходится для ускорения выдачи делать зеркало памяти LCD в памяти МК, смотреть в памяти - не изменился ли пиксель и только в случае его изменения затевать последовательность команд для изменения его и на экране.
Tahoe
Advanced Member
7038/14170 ответов
23 года на iXBT, с декабря 2001
9 фото на iXBT.photo
Чаще пишет Р Р† "Эл. устройства" (52%)
Россия, Москва
Инфо Ответить
Tahoe Advanced Member
11 лет назад / 10 июля 2014 15:42
An_private
Вот для меня видна дыра между STM32 и компом.
Помогите начать работать с микроконтроллерами. (часть 2), #4516
niXto
Best Engineer 2013
4952/5685 ответов
15 лет на iXBT, с июня 2009
Чаще пишет Р Р† "Эл. устройства" (89%)
Беларусь
Инфо Ответить
n
niXto Best Engineer 2013
11 лет назад / 10 июля 2014 16:07
У Ф429 есть даже простенький видеоускоритель с аппаратным смешиванием и прозрачностью... И под 200 МГц
alexey_public
Member
10047/10294 ответов, #4 в рейтинге
20 лет на iXBT, с марта 2004
121 фото на iXBT.photo
Чаще пишет Р Р† "Эл. устройства" (98%)
Беларусь, Минский район
Инфо Ответить
alexey_public Member
11 лет назад / 10 июля 2014 16:25
An_private
Вот для меня видна дыра между STM32 и компом.
ПЛИС почти без вариантов, кроме разве что недорогих DSP.
An_private
Member
3360/16140 ответов, #102 в рейтинге
21 год на iXBT, с апреля 2003
Чаще пишет Р Р† "Видеозахват" (33%)
Россия, Санкт-Петербург
Web-страница
Инфо Ответить
An_private Member
11 лет назад / 10 июля 2014 16:30
Tahoe
Помогите начать работать с микроконтроллерами. (часть 2), #4516
An_private
Так как очень не хочется разделять задачи сбора данных и их отображения.


niXto
У Ф429 есть даже простенький видеоускоритель с аппаратным смешиванием и прозрачностью... И под 200 МГц
Да, тоже вариант. Лежит сейчас F4 discovery - руки не доходят поиграться.
Tahoe
Advanced Member
7041/14173 ответов
23 года на iXBT, с декабря 2001
9 фото на iXBT.photo
Чаще пишет Р Р† "Эл. устройства" (52%)
Россия, Москва
Инфо Ответить
Tahoe Advanced Member
11 лет назад / 10 июля 2014 16:39
An_private
очень не хочется
С такими критериями лучше в квартал красных фонарей. Что значит "не хочется"? Либо есть резоны, либо нет. Либо резоны серьезные, либо нет.
An_private
Member
3361/16141 ответов, #102 в рейтинге
21 год на iXBT, с апреля 2003
Чаще пишет Р Р† "Видеозахват" (33%)
Россия, Санкт-Петербург
Web-страница
Инфо Ответить
An_private Member
11 лет назад / 10 июля 2014 19:27
Tahoe
Что значит "не хочется"?
Не, ну можно, конечно, в гамаке и на лыжах, но вот "не хочется" почему-то
То есть я вижу вполне конкретную "дыру" в закрываемых задачах. И закрывать эту дыру разделением задач на куски выглядит сильно странно. Резоны искать именно описываемое - удобное - решение вполне понятны - мимнимизация объема как железа, так и кода.
Tahoe
Advanced Member
7047/14181 ответов
23 года на iXBT, с декабря 2001
9 фото на iXBT.photo
Чаще пишет Р Р† "Эл. устройства" (52%)
Россия, Москва
Инфо Ответить
Tahoe Advanced Member
11 лет назад / 10 июля 2014 19:33
An_private
То есть я вижу вполне конкретную "дыру" в закрываемых задачах.
Ну я просто тоже какое-то время назад так считал. Сейчас уже понимаю, что проблемы практически нет. Потому интересно, приведи пример.
niXto
Best Engineer 2013
4953/5686 ответов
15 лет на iXBT, с июня 2009
Чаще пишет Р Р† "Эл. устройства" (89%)
Беларусь
Инфо Ответить
n
niXto Best Engineer 2013
11 лет назад / 10 июля 2014 21:13
An_private
То есть я вижу вполне конкретную "дыру" в закрываемых задачах.

Присмотрись к атмеловским А5
Заказчики в своём основном проекте "затыкают дыру" именно этим процем
Довольно мощный, недорогой и хорошо документирован

Правда, почти всё, что быстрее 200...300 МГц - БГА...
Leka
unregistered
Ответить
L
Leka unregistered
11 лет назад / 10 июля 2014 21:32
An_private
А есть где-нибудь какие-то гиды по использованию малинки не для интернета и видео, а для инженерных нужд? Ну, то есть общение с GPI, таймеры там, ADC. Чтобы минимум операционки и максимально близко к железу. Посмотрел гиды, доступные в сети - там максимум светодиодиком помигать. А вот анализировать GPIO с частотой опроса порядка 100 кГц и выдавать результаты на экран - это реально с такими платками?
...
У меня сейчас виден некоторый разрыв в шаблоне возможностях. То есть вот есть ряд - простенькие задачи решаю на AVR. Посложнее - на STM32F1xxx. Сложные - на компе. Вот для меня видна дыра между STM32 и компом.
GUI мне как таковой не нужен...


Это какие "сложные микроконтроллерные" задачи на современном компе решать можно? Это на старых компах с LPT и из под DOS можно было анализировать GPIO с частотой опроса порядка 100 кГц и выдавать результаты на экран , а современные - только для интернета и видео.
An_private
Member
3362/16142 ответов, #102 в рейтинге
21 год на iXBT, с апреля 2003
Чаще пишет Р Р† "Видеозахват" (33%)
Россия, Санкт-Петербург
Web-страница
Инфо Ответить
An_private Member
11 лет назад / 11 июля 2014 09:44
niXto
Присмотрись к атмеловским А5
Спасибо, гляну.

Leka
Это на старых компах с LPT и из под DOS можно было анализировать GPIO с частотой опроса порядка 100 кГц и выдавать результаты на экран , а современные - только для интернета и видео
Да, я несколько неверно выразился - имелось в виду сложность отображения результатов. То есть вот где-то до STM32 наворочанность встроенных интерфейсов и возможных средств отображения идут "рука об руку". Дальше - вынужденное разделение на сбор данных и их отображение, так как возможности встроенных интерфейсов резко становятся никакими.
AVI-crak
Member
640/653 ответов, #101 в рейтинге
14 лет на iXBT, с декабря 2010
Чаще пишет Р Р† "Эл. устройства" (99%)
Россия, Omsk
Web-страница
Инфо Ответить
A
AVI-crak Member
11 лет назад / 11 июля 2014 17:20
An_private
А то сейчас приходится для ускорения выдачи делать зеркало памяти LCD в памяти МК, смотреть в памяти - не изменился ли пиксель и только в случае его изменения затевать последовательность команд для изменения его и на экране.

Да ёж... Зачем такие сложности? Организуй конвейер графических команд , стандартных команд на печать и на графику. И по строчному кадровому сигналу исполняй до полного завершения. Есть огромная вероятность, что при этом станут свободными 90% ресурсов мк.
An_private
Member
3363/16143 ответов, #102 в рейтинге
21 год на iXBT, с апреля 2003
Чаще пишет Р Р† "Видеозахват" (33%)
Россия, Санкт-Петербург
Web-страница
Инфо Ответить
An_private Member
11 лет назад / 11 июля 2014 17:45
AVI-crak
Организуй конвейер графических команд , стандартных команд на печать и на графику
И чё? Вопрос в том, что если в каждом кадре обновлять каждый пиксель, то частота кадров становится неприлично мала. Поэтому приходится обновлять только те пиксели, которые изменили цвет. И для этого нужен прямой доступ к кадровому буферу.
AVI-crak
Member
641/654 ответов, #101 в рейтинге
14 лет на iXBT, с декабря 2010
Чаще пишет Р Р† "Эл. устройства" (99%)
Россия, Omsk
Web-страница
Инфо Ответить
A
AVI-crak Member
11 лет назад / 13 июля 2014 15:22
An_private
Поэтому приходится обновлять только те пиксели, которые изменили цвет.
Явное недопонимание моего предложения. В моём случае команда на печать - это печать целого символа или целой строчки, цельного графического элемента , картинки или графика. Некий аналог кастрированного видеодрайвера.

Но если куча подпрограмм имеет прямой доступ к видеопамяти - получится бардак. Для графики нужно собирать отдельную библиотеку с минимизированным входным машинным кодом, малым и упрощённым - таким, чтобы влезал в конвейер целиком, одной строчкой. Сборка команд любыми доступными для лёгкого чтения (человеком) способами. А исполнение - через конвейер , в чётко отведённое для этого время. Изменённые графические данные могут накапливаться в течении скана одного экрана, и исполнятся при новом скане. Например , если я 80к раз перерисую одну строчку в одном кадре (а могу и больше ) - я лишь потеряю время мк. Однако , если я 80к раз перепишу команду в конвейере - я потеряю на 70% меньше машинного времени. А если юзать флаги - команда на перезапись конвейера будет всего одна... Таким способом можно убрать зависимость от видеобуфера , снизить нагрузку на FMC или FSMC . Кстати на этих-же линиях висит внешняя память, и в случае если это тормозная sdram - ускорение будет значительным.

Это имеет смысл в системах с обширном деревом меню, отслеживанием активных зон сенсора стекла (кнопки меню) и обилием графики . И при продуманной структуре - позволяет экономить машинное время в бешеных масштабах. В системах где единственная строчка выводится на двухстрочный индикатор - такие костыли излишни.
undefined_opcode
Member
397/840 ответов
13 лет на iXBT, с сентября 2011
Чаще пишет Р Р† "Эл. устройства" (49%)
Инфо Ответить
u
undefined_opcode Member
11 лет назад / 14 июля 2014 07:05
An_private
Вот для меня видна дыра между STM32 и компом.
Ну а Pi - это такой вполне себе компьютер. Маленький, но способный на все что способны компьютеры, плюс-минус поправка на ресурсы. Ну там к вон той точе доступа с WPA подключиться, и поднять PPTP VPN - как делать нефиг. Или там флеху по USB прицепить А вы позеленеете такой стек протоколов сами выписывать. Вообще, если в ARM11 разница была еще не так очевидна, то уж в cortex-ах ARM их явно расщепил: для маха лапками на скорость есть M-серия, а A серия - "процессоры приложений", ориентированные на "компьютерообразное" применение, заставлять их махать лапками - на любителя. Там обычно подразумеваются навороты типа MMU и более-менее полноценной операционки. Не то чтобы bare metal ARM11 невозможно программить, но намного удобнее если драйвер для навороченной периферии более-менее сделают другие. Вот ARM11 в Pi - предшественник A-серии, со всеми вытекающими.

В идеале хотелось бы что-то типа того же STM32, но у которого бы а) видеопамять была видна напрямую в адресном пространстве М/К б) рабочая частота процессора хотя бы мегагерц 400.
Вообще, "взрослые" видеоконтроллеры обычно умеют на автомате долбить буфер кадра в дисплейный интерфейс. Драйвер лишь кладет картинку от программ в буфер, а железяка сама разбирается как это сплюнуть в интерфейс правильно. Будь он хоть RGB-bus, хоть HDMI, хоть что там еще. Как максимум софт может возжелать знать когда наступил vblank (т.е. контроллер выстрелил весь кадр и ничего не делает) и менять картинку именно в этот момент. Это чтобы картинка не страдала тирингом, т.к. если апдейтить буфер кадра прямо во время того как его выдавливают в провода - в провода пойдет наполовину новый и наполовину страрый кадр, что вызовет знакомый эффект.

GUI мне как таковой не нужен - то есть я цепляю при необходимости к STM32 стандартный LCD 320х240 и общаюсь с ним напрямую
Тогда в лине можно рисовать через libsdl, запустив программу в полноэкранном режиме. Получится нечто типа фреймбуфера, только способное к сосуществованию с другими, если надо. Никаких контролов, что нарисуете - то и будет. Либа абстрагирует детали системы, предоставляя простой интерфейс по типу фреймбуфера, куда можно рисовать что хочется. Как бонус - программу можно отладить и собрать под любую систему (хоть ту же винду), а потом 1 в 1 компильнуть под вон тот ARM с линухом, вообще без изменения исходиников.

Для банальной выдачи пикселя надо сделать немало телодвижений и скорость выдачи весьма низкая.
В более продвинутых контроллерах дисплея и современных видеокартах есть аппаратный автомат (в терминах Linux это обычно называется "CRTC"), который сам пуляет фреймбуфер в интерфейс, аппаратно генерируя тайминги и прочее. При том этот подход достаточно универсален - такой автомат есть и в относительно простых контроллерах дисплея, и в навороченных современных видеокартах (в современных видеокартах он долбит из набортного VRAM, чем разгружает системный RAM от бандвиза на сплев картинки).
An_private
Member
3366/16147 ответов, #102 в рейтинге
21 год на iXBT, с апреля 2003
Чаще пишет Р Р† "Видеозахват" (33%)
Россия, Санкт-Петербург
Web-страница
Инфо Ответить
An_private Member
11 лет назад / 14 июля 2014 10:57
undefined_opcode
ARM их явно расщепил: для маха лапками на скорость есть M-серия, а A серия - "процессоры приложений"
Угу. Вот это и расстраивает. Но куда деваться

Драйвер лишь кладет картинку от программ в буфер
Ага. Вопрос в том - как это происходит. С внешними LCD напрямую картинку в буфер не положить - это делается набором команд по параллельному интерфейсу. В результате - скорость работы с видеопамятью радикально падает.

Тогда в лине можно рисовать через libsdl, запустив программу в полноэкранном режиме.
Ага. Я тут уже перекопал кучу туториалов - пришёл к тому же выводу.

В более продвинутых контроллерах дисплея
Вы, видимо, меня не поняли. Мне, как раз таки, в "продвинутых контроллерах" не хватает прямого доступа к видеопамяти со стороны проца. Не зря в своё время на видяхи двухпортовую память ставили. Теорию работы видях я представляю себе достаточно хорошо
undefined_opcode
Member
398/841 ответов
13 лет на iXBT, с сентября 2011
Чаще пишет Р Р† "Эл. устройства" (49%)
Инфо Ответить
u
undefined_opcode Member
11 лет назад / 15 июля 2014 09:16
An_private
Угу. Вот это и расстраивает. Но куда деваться
А чего расстраиваться то? Разные классы процессоров, для разных, слабо пересекающихся задач. Можно к cortex-A прицепить cortex-M и попросить его отмахать лапками на скорость как надо, etc. Некоторые SoC даже встраивают такого "компаньона" на кристалл к основному, как раз из таких соображений.

Ага. Вопрос в том - как это происходит. С внешними LCD напрямую картинку в буфер не положить - это делается набором команд по параллельному интерфейсу. В результате - скорость работы с видеопамятью радикально падает.
В более-менее толстых SoC контроллер дисплея аппаратно это делает: сам берет данные из памяти и сам стреляет их в интерфейс, попутно формируя тайминги. Подход катит и для более навернутых интерфейсов, например HDMI, поэтому он у таких SoC зачастую тоже есть.

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

Мне, как раз таки, в "продвинутых контроллерах" не хватает прямого доступа к видеопамяти со стороны проца.
У таких ARMов как правило нет своей VRAM - они используют под видеопамять общую системную DRAM (этот кусок становится недоступен системе для использования под другие нужды). Так же как и интеловский интеграт на писюках. И это выглядит так: когда наступает пора плевать данные в интерфейс, контроллер дисплея сам суется в DRAM, сам забирает нужные данные из оговоренного региона и сам стреляет их в дисплейный интерфейс, будь то RGB-bus, HDMI или что там у кого еще, формируя при этом протокол и тайминги. Процесс повторяется на полном автомате, софту про него в общем случае знать ничего не требуется. Кстати этот процесс "крадет" пропускную способность памяти. В случае допустим 1920х1080х60FPS - контроллер дисплея у мелкой ARMовской платки может спереть добрую половину бандвиза 32-битной DDR3 на выплевывание картинки в экран, так что скорость работы остальной системы несколько просядет. Потому что да, у монитора и большинства сколь-нибудь больших стекляшек нет своего буфера кадра и поэтому контроллер дисплея сам должен стрелять каждый кадр да еще с формированием таймингов по строкам/кадрам. Но софт всего это не видит.

У более серьезных дискретных видеокарт - на борту запаяна своя видеопамять. Это разумеется удорожает конструкцию. Зато кроме всего прочего - там упомянутый хардварный автомат суется не в системный DRAM, а в локальную VRAM. Так что системная память разгружается от упомянутого потока данных на дисплей, да и GDDR5 куда быстрее DDR3 на задачах типичных для графики. Там понятие "прямого доступа" куда менее очевидно: что есть "прямой доступ" к памяти иного проца?

Исправлено: undefined_opcode, 15.07.2014 10:29

niXto
Best Engineer 2013
4969/5706 ответов
15 лет на iXBT, с июня 2009
Чаще пишет Р Р† "Эл. устройства" (89%)
Беларусь
Инфо Ответить
n
niXto Best Engineer 2013
11 лет назад / 15 июля 2014 09:45
http://www.hotmcu.com/wiki/index.php?title=Allwinner…Development_Board

Это с видюхой на борту
undefined_opcode
Member
399/842 ответов
13 лет на iXBT, с сентября 2011
Чаще пишет Р Р† "Эл. устройства" (49%)
Инфо Ответить
u
undefined_opcode Member
11 лет назад / 15 июля 2014 10:30
niXto
Это с видюхой на борту
Смотря что понимать под "видяхой на борту"
niXto
Best Engineer 2013
4970/5707 ответов
15 лет на iXBT, с июня 2009
Чаще пишет Р Р† "Эл. устройства" (89%)
Беларусь
Инфо Ответить
n
niXto Best Engineer 2013
11 лет назад / 15 июля 2014 10:34
Мали-400 достаточно мощная видеокарта... По крайней мере, гораздо лучше, чем программная обработка на проце
undefined_opcode
Member
400/843 ответов
13 лет на iXBT, с сентября 2011
Чаще пишет Р Р† "Эл. устройства" (49%)
Инфо Ответить
u
undefined_opcode Member
11 лет назад / 15 июля 2014 17:21
"Карта" вообще подразумевает кусок текстолита и чипы на ней . Как правило на "карте" собрана относительно самодостаточная конструкция, с GPU и локальной памятью, такая конструкция вообще относительно автономна. А вы о одной из составляющих aka GPU - графическом сопроцессоре. У ежевики он в этом смысле тоже есть, хоть и достаточно здорово отличающийся от всех остальных. Вплоть до того что у этих извращенцев первым стартует как раз GPU, и уже он из своего кода потом пинает вспомогательный ARM "сопроцессор". Так что ежевика - "GPU с вспомогательным ARMом", а не "ARM с GPU" . Но кое-что общее у них есть - своей памяти GPU не имеет и по этому поводу для нужд оного отпиливается кусок системной DRAM. Одной из заметных статей расхода в этом регионе является упомянутый "буфер кадра" из которого "CRTC" долбит на экран. Ну и внутренние нужды GPU. Ибо GPU - это кроме всего прочего группа процессоров-числодробилок, которым тоже какую-то память надо в процессе счета. В числодробилки хост вгружает команды и данные, они считают, далее результат или забирается хостом обратно ("GPGPU-вычисления") или выплевывается на экран, если числокрушилки, например, сложат результат в буфер кадра (3D как-то так работает в первом приближении).

В пингвине весь этот зоопарк нынче более-менее попытались подогнать к некоему общему знаменателю, заметив что "CRTC" - как правило достаточно похожи по свойствам, GPU - может быть, а может и не быть, а бывает и так что есть GPU но у него ... нет CRTC . Да, бывает такая странная штука как GPU без видеовыхода вообще. В некоторых ноутбуках с 2-я видеокартами такое встречается - у одного из GPU может не быть видеовыходов совсем. Вместо этого он спихивает картинку через память второму GPU тот уже ее выдает на экран. В этом случае "буфер кадра" ведет вникуда - его не посещает CRTC. Вместо этого он перекидывается в другой GPU, в том же пингвине по этому поводу сделали достаточно крутую и generic подсистему подпирания таких штук DMA-контроллерами, прямо так и обозвав это начинание - DMA-BUF.

В пингвине этим добром все чаще заведует относительно унифицированная парочка подсистем - Direct Rendering Manager + Kernel Modesettings. Хотя проприетарные драйвера, к сожалению, до сих пор могут иметь свое мнение на этот счет. А упомянутые подсистемы кроме всего прочего позволяют ядру быть немного в курсе текущего видеорежима, спихивают на ядро свойственные ему задачи типа управления памятью и позволяют немного порисовать по минимуму. Как раз в фреймбуферы CRTC-ов. Так что если кому-то надо совсем простой и быстрый доступ, эксклюзивно и пошли бы все другие программы подальше - можно попытаться пристроиться где-то там. Но оно может быть драйверозависимо. Большинство драйверов предоставляют нечто типа "фреймбуфера с наворотами", поверх которого и строится все остальное, но это уже как повезет.

Какие выводы? Для минимального вывода картинки не надо программить GPU - достаточно уметь плевать данные в буфер кадра и выставить видеорежим. Это как правило делает относительно небольшой ядерный модуль, реализующий упомянутые интерфейсы для "своего" железа. Насколько все это захочется делать совсем без ОС - отдельный вопрос . А вот ускорение вычислений, актуальное для 3D - уже требуют уметь сгенерить код для GPU и прочее. На десктопные GPU кстати интел и амд расперлись спеки выложить, нвидия брыкается, но часть спеков открыла, а вот с мобилочными все печальнее пока. Там возможны варианты. Или использовать бинарный драйвер (где как раз в основном зажат кодогенератор и т.п.) или иногда бывают недопиленные драйвера на основе реверсинга. Pi в этом плане оригинальнее всех - в том плане что его GPU крутит полновесную RTOS и оперирует чуть иначе: ему передают непосредственно исходники шейдеров и данные, он это сам компилирует и запускает, так что проблемы с кодогенерацией не возникает. В том плане что драйвер является довольно простым wrapper для вгрузки всего и вся в GPU, который сам дальше разбирается как самому себе код компильнуть. Наверное при острых приступах мазохизма можно попробовать нечто такое вгружать и без операционки совсем, но на мой вкус это выглядит несколько похожим на Дона Кихота. Все-таки как видим это достаточно сложный комплекс в сумме, драйвера до ума могут доводить месяцами, если не годами...
Ваш ответ:

Список кодов форума
Список всех смайликов закрепить окно ответа
Нет значка Нет значка Р’РѕС‚ тут! Лампочка Восклицание Р’РѕРїСЂРѕСЃ Класс! Улыбка Злость Огорчение РџРѕРіРѕРІРѕСЂРёРј? Краснею Подмигивание Ругаю РћРґРѕР±СЂСЏСЋBIUdelSxsupxsuboffsp spoilerqurlimgvideo• list1. list1 codeprecenter-hr-rusQWE→ЙЦУ
файлыочистить
Ваше имя: Авторизуйтесь Предпросмотр В полную форму
вставить выделенную цитату в окно ответа
Если Вы считаете это сообщение ценным для дискуссии (не обязательно с ним соглашаться), Вы можете поблагодарить его автора, а также перечислить ему на счет некоторую сумму со своего баланса (при отзыве благодарности перечисленная сумма не будет вам возвращена).
Также вы можете оценить сообщение как неудачное.
В течение суток можно 20 раз оценить сообщения разных участников (купите Premium-аккаунт, либо оплачивайте оценки сверх лимита).
Если Вы считаете это сообщение ценным для дискуссии (не обязательно с ним соглашаться), Вы можете поблагодарить его автора, а также перечислить ему на счет некоторую сумму со своего баланса (при отзыве благодарности перечисленная сумма не будет вам возвращена).
Также вы можете оценить сообщение как неудачное.
В течение суток можно 20 раз оценить сообщения разных участников (купите Premium-аккаунт, либо оплачивайте оценки сверх лимита).
Страницы:Кликните, чтобы указать произвольную страницуназад3далее
Последние обсуждения в Конференции
13:50Кто-то хочет РІ РЎРЎРЎР ? История
13:50Как РІС‹ относитесь Рє обязательной платной диагностике РІ мастерских?! Рынок
13:50Новая нейронка Маска Grok 3 ИИ
13:49 Квантовые процессоры, Intel Tangle Lake Рё РґСЂСѓРіРёРµ Процессоры
13:49Выбор РїРѕСЃСѓРґС‹ для приготовления пищи (СЃРєРѕРІРѕСЂРѕРґ, кастрюль Рё С‚.Рґ.) Кулинария
13:49Украина после Евромайдана. Взгляд РёР· Р РѕСЃСЃРёРё. Р’С…РѕРґ для лиц СЃ русофобскими взглядами закрыт Политика
13:493D-флудилка Видеосистема
13:48Полнокадровые беззеркальные камеры Sony, объективы Рё аксессуары Рє РЅРёРј Фото
13:47Старые (РґРѕ 2005 Рі.) компьютеры Рё комплектующие: обсуждение работы, использования Рё прочее. Тех. поддержка
13:47PC Рё консоли, Рё РІРЅРѕРІСЊ продолжается Р±РѕР№ Игры
13:46Гребной тренажер. Помогите определиться Спорт
13:46Ремонт LED лампы РїРѕРґ цоколь E27 Эл. устройства
13:44 Биллибои против сонибоев. РЎРѕРЅРёР±РѕРё против мариобоев. Мариобои против всех. И наоборот. Консоли
13:44Р’СЃС‘ Рѕ сабвуферах ДК аудио
13:42Что поставить аудиофилу послушать для девушки? Стерео
13:41iXBT.photo в 2025-м году планируется закрыть. Просим перенести все свои фотографии на другие ресурсы как можно раньше (ранее: мелкие советы и предложения по улучшению фотогалереи) iXBT.com
13:40Надежность хранения информации Накопители
13:39Что купить - macbook pro 16 m1 или macbook air 15 m2 если есть деньги, но мощный ноут не нужен? MacLife
13:37Дружба! Семья
13:36Вопросы использования Linux НА ЧЁМ ПОПАЛО Unix
Последние темы без ответов
сегодняДобрый день, проблема с макбуком на силиконе. MacLife
сегодняКитайские "жральни" РІ РњРѕСЃРєРІРµ. Кулинария
вчераАрхаичные выражения, подзабытые слова, названия, Р° также уходящие РІ прошлое культурные традиции XX века. Культура
вчераBattlefield 2042 drweb Игры
вчераМышь лагает Рё плавает РїСЂРё запуске любого приложения Тех. поддержка
вчераLLM Qwen – возможности, опыт использования, ограничения ИИ
вчераНе РјРѕРіСѓ прошить UUID РЅР° материнской плате ASRock H55M-LE РЅРё СЃ помощью amidedos РЅРё ее версии РїРѕРґ Windows - осталось только слить дамп Р±РёРѕСЃР°, редактировать РІ HEX-редакторе Рё шить обратно? Тех. поддержка
2 дня[Решено] Установил и успешно запустил пакет motion под OpenWRT, но не могу зайти на его админку и получить видеопоток с помощью VLC-плеера Unix
2 РґРЅСЏDenon dcd-3000 ремонт Стерео
4 РґРЅСЏThecus 4560/2520 РїРѕРёСЃРє прошивки. НАС
13:485800 мАч, ИИ-фоторедактор и подводная съёмка без чехла: Oppo Reno13, Reno13 F и Reno13 Pro доступны в России
13:43Китай поручил чиновникам использовать DeepSeek для анализа проблем и принятия решений
13:11«Китайский Cadillac», который стал бестселлером марки в России, выходит в новой версии. Представлен большой кроссовер GAC GS8 GX Traveller
13:08Уходит эпоха: у Apple не осталось ни одного iPhone с кнопкой Home и разъемом Lightning
13:01Land Cruiser 300 за 14 млн рублей, Toyota RAV4 — за 4,3 млн рублей, Toyota Camry — за 5 млн рублей. Дилеры рассказали, сколько стоят популярные «Тойоты» с гарантией
13:01Представлена новая Toyota C-HR
13:00На всех турникетах московского метро можно будет «заплатить лицом» до конца года
12:59В «Яндекс Трекере» появилось управление задачами и целями
12:53У Apple появился новый самый просматриваемый сериал в истории: загадочное «Разделение» быстро опередило бывшего лидера «Теда Лассо»
12:45Сбер открыл доступ к первой российской облачной среде разработки GigaIDE с ИИ-ассистентом
20+ лет назад в этот день обсуждали
2002W2k - проблема СЃ флоппи-РґРёСЃРєРѕРј. OС и сист. ПО
2002Нужен двусторонний французский словарь Прикладное ПО
2002Как правильно воткнуть устройство РІ PCI-слот? Тех. поддержка
2003PHP - как сделать так чтобы меню было РІ отдельном файле, Рё как его РѕС‚ туда вытаскивать. Интернет
2003Р’РѕРїСЂРѕСЃС‹ вывода видео СЃ PC РЅР° TV Видеозахват
2003Какой Р·РІСѓРє РЅР° материнской плате Chaintech CT-7aja2/aja2e Драйверы
2004Почему так дешевы топовые Р±.Сѓ. IBM Рё Eizo ?!!! Мониторы
2004Хватит ли мощности кулера Igloo 2310 или 2411 для охлаждения процессора? Разгон
2004"Modding" для Baby AT Корпуса, БП
2004Как сделать, чтобы Сѓ РїРёСЃСЊРјР° обратный адрес был РѕРґРёРЅ, Р° отвечали РЅР° него РЅР° РґСЂСѓРіРѕР№ адрес? Интернет (архив)
Отключите эту колонку в личном кабинете.