|
|
  |
Посоветуйте отладочную плату с ARM от 1 ГГц, остальное в теме |
|
|
|
Sep 27 2017, 09:01
|

Местный
  
Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126

|
Здравствуйте.
Разыскиваю отладочную плату с ARM ядром на борту, частота ядра должна быть не ниже 1ГГц. Память должна быть не хуже PC133, ширина шины данных 16 бит (32 бита предпочтительнее). Процессор и его периферия должны быть документированы. Как бонус - наличие FPGA (но это необязательно, если есть видеопроцессор).
Писать программы планирую - исключительно "bare metal" (под голое железо).
Есть опыт: программирование STM32F4xx, AT91RM9200, ADSP-BF532, BF533, дизайн FPGA Altera Cyclone-2. Писал исключительно на Cи, Ассемблере. Без применения сторонних библиотек, драйверов и ОС тем более.
Основная проблема: неполная открытость современных процессоров, например под Ti AM335x не удается найти доки на 2D- и 3D- видеоускоритель. Рассматривал Rockchip RK3066 и его 1,5 ГГц, документация на GPU (графический процессор) недоступна для скачивания.
Нужен полностью открытый процессор.
Помогите с выбором отладочной платы!
|
|
|
|
|
Sep 27 2017, 09:37
|

Местный
  
Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126

|
Цитата(blackfin @ Sep 27 2017, 09:14)  Как у них с документацией? 1) свободно для скачивания 2) прийдётся клянчить под NDA с бюрократической волокитой 3) закрыто Мне нужно: настройка частот ядра, шины. Настройка кеша данных, инструкций, конфигурирование SPI, GPIO, DMA, Memory DMA, загрузка своего кода, видео-подсистема на уровне формирования кадра, 2D-движок (блитинг), опционально: 3D-движок (рисование полигонов с текстурой и освещением) У вышеупомянутых процессоров(в первом посте) недостаточно частоты ядра или нет аппаратной поддерки плавающей точки или низкая частота/разрядность шины (в основном для памяти). Самый лучший был ADSP BlackFin, но теперь хочется поднять частоту ядра до ГГц и выше, обязательно поддержка плавучки хотя бы на уровне Float(одинарная точность), системная шина не ниже уровня PC133.
Сообщение отредактировал __inline__ - Sep 27 2017, 09:39
|
|
|
|
|
Sep 27 2017, 10:04
|

фанат Linux'а
    
Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008

|
Я не слепой и вижу: Цитата(__inline__ @ Sep 27 2017, 12:37)  Процессор и его периферия должны быть документированы. Писать программы планирую - исключительно "bare metal" (под голое железо). Нужен полностью открытый процессор Но нет таких графических процессоров с документацией. Разве что может 2D простейший ускоритель блиттинга не более. Есть попытки реализовать открытые драйвера для Linux для 3D для каких-то процессоров, но документацией там может и не пахнет, но советую посмотреть, ибо смогли для Linux, и Вы сможете для голого железа. Остальное то вроде документировано. Подозреваю задача, где планируется жесткая сертификация, какой-нибудь авиационный индикатор или вроде того, может промышленное что-то критическое. А потому наверное какие-то SDK для графики не подходят, т.к. предположительно не открыты и не имеют документации именно той что я полагаю нужна, только лишь API.
--------------------
|
|
|
|
|
Sep 27 2017, 10:25
|
Местный
  
Группа: Свой
Сообщений: 327
Регистрация: 30-10-05
Пользователь №: 10 288

|
Цитата(AVR @ Sep 27 2017, 13:04)  Подозреваю задача, где планируется жесткая сертификация, какой-нибудь авиационный индикатор или вроде того, может промышленное что-то критическое. А потому наверное какие-то SDK для графики не подходят, т.к. предположительно не открыты и не имеют документации именно той что я полагаю нужна, только лишь API. Вряд ли. Тот же DO-178 определяет процесс сертификации COTS SW
|
|
|
|
|
Sep 27 2017, 10:30
|

Местный
  
Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126

|
Цитата(AVR @ Sep 27 2017, 10:04)  Я не слепой и вижу:
Но нет таких графических процессоров с документацией. Разве что может 2D простейший ускоритель блиттинга не более. Есть попытки реализовать открытые драйвера для Linux для 3D, но документацией там может и не пахнет. Остальное то вроде документировано.
Подозреваю задача, где планируется жесткая сертификация, какой-нибудь авиационный индикатор или вроде того, может промышленное что-то критическое. А потому наверное какие-то SDK не подходят, т.к. предположительно не открыты и не имеют документации, только лишь API. Если есть какая-то полезная информация в SDK, то это тоже рассматривается. Это даже местами лучше, так как в исходном коде программы часто освещены моменты, упущенные в документации. В те дальние времена, мне пришлось программировать видеокарты 3Dfx Voodoo2 и Voodoo3. Документация с небольшими примерами была доступна. Ради интереса её прикрепил к этому посту, вот как должно быть как минимум расписан 3D-ускоритель для того чтобы можно было ваять программы.
Voodoo2.pdf ( 1.85 мегабайт )
Кол-во скачиваний: 135Ну и пример работающей программы (целиком на ассемблере), собственно выводит движущийся тунель:
V2Tunnel.txt ( 16.15 килобайт )
Кол-во скачиваний: 66Так есть камни с открытой документацией на графический процессор?
|
|
|
|
|
Sep 27 2017, 12:18
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(__inline__ @ Sep 27 2017, 12:01)  Основная проблема: неполная открытость современных процессоров, например под Ti AM335x не удается найти доки на 2D- и 3D- видеоускоритель. Не найдете нигде. ЗЫ Программить под 3Д без оси - это что-то с чем-то. Если не секрет, что за цель задачи? Цитата(Obam @ Sep 27 2017, 14:46)  Без вариантов, связываться с вендором и подписывать NDA. Не факт, что просто подписать, там еще очень невкусностей много бывает. Цитата(Lmx2315 @ Sep 27 2017, 13:24)  Патриотично, конечно, но на мали доки тоже никто не даст, да и цена у чипа скорее всего очень недемократичная  Цитата(aaarrr @ Sep 27 2017, 12:48)  Она у всех закрыта. Посмотрите RK3288 - информации по нему море. Только этот проц сегодня есть, а завтра нет. С учетом того, что программить без осей, портирование на другой займет полгода, не меньше.. Уж поверьте, сам занимаюсь таким программированием.
Сообщение отредактировал mantech - Sep 27 2017, 12:19
|
|
|
|
|
Sep 27 2017, 12:27
|

фанат Linux'а
    
Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008

|
Цитата(mantech @ Sep 27 2017, 15:18)  Программить под 3Д без оси - это что-то с чем-то Вот я тоже сначала разразился критикой, дескать только студенты могут думать что им дастся такая задача даже будь доки. Однако никто не знает конечную задачу, бюджет, сроки, может там реально это очень надо (моя догадка сертификация для авиации или атомной сферы и тому подобное). Да и автор говорит что делал проги по докам на древние графические процы. Если автор это задумал без серьезной на то необходимости - то ССЗБ. Цитата(mantech @ Sep 27 2017, 15:18)  Патриотично, конечно, но на мали доки тоже никто не даст, да и цена у чипа скорее всего очень недемократичная На отладки цена космическая, а вот на процы в партии от 1000 шт более менее цена, не космическая, но при их то партиях даже реалистичная. (демократия - слово ругательное, но цены вроде норм, не буду раскрывать цифры, напишите им если интересно) Однако, как и в других случаях, такая же беда с доками.
--------------------
|
|
|
|
|
Sep 27 2017, 12:37
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(AVR @ Sep 27 2017, 15:27)  не буду раскрывать цифры, напишите им если интересно) На данный момент пока удовлетворился IMXом, но для справки интересно, заметно они их дороже (прим. цена 800-900р за одноядерник)? В штуках - больше сотни за месяц - не осилим  Цитата(AVR @ Sep 27 2017, 15:27)  моя догадка сертификация для авиации или атомной сферы и тому подобное). Я сначала тоже так подумал, но с другой стороны, тут выбор очевиден - импортозамещение  Цитата(scifi @ Sep 27 2017, 12:41)  Неужели среди i.MX такого нет? Есть, но тоже без доков для графики, к тому же у МХ6 серии очень медленные шины памяти, сам несколько разочарован этим.
|
|
|
|
|
Sep 27 2017, 12:39
|

Местный
  
Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126

|
1) Отечественная продукция типа "Байкал", "Элвис", "КомДив" - с частными лицами не работают. В топку.
2) На рокчип RK3288 внятной документации не нашёл
3) Сейчас смотрю в сторону TI Sitara 335x БиглБоны Черные, доступны на АЛиЭксперссе, 1 ГГц, есть плавучка NEON, поддержка видео 2D/3D. Скачал Linux SDK на 1 Гб.
Неужели в Линуксовых сорцах 3д- 2д- ускоритель тоже не используется из-за закрытости?
4) Да, я ССЗБ, как тут сказали, low-level-programming - моё увлечение, есть наработки в виде разных приложений типа эмуляторов, игр.
Сейчас стоит цель поднять быстродействие некоторых приложений в 1,5-2 раза, без сильной оптимизации кода (код должен быть на С, с минимумом ассемблера).
Сроки неограничены.
mantech и jcxz как я вычитал, ковыряли камни на уровне bare-metal, посоветуйте хороший камень для комфортного ковыряния!!!
TI Sitara 335x БиглБоны Черные - сойдет с позиции открытости или тоже фигня?
|
|
|
|
|
Sep 27 2017, 13:02
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(__inline__ @ Sep 27 2017, 15:39)  mantech и jcxz как я вычитал, ковыряли камни на уровне bare-metal, посоветуйте хороший камень для комфортного ковыряния!!!
TI Sitara 335x БиглБоны Черные - сойдет с позиции открытости или тоже фигня? Ковырял МХ6 соло, и аллвиннер А10(13), с последним пока затык из-за времени. На МХ6 есть СДК для программирования без оси, с глюками, но разобраться можно. Графики нет нигде, в линуксе есть какие-то либы, но копаться в них очень утомительно, да и мне особо не нужно было, я использовал только 2Д-графику. С ситарами не работал, но, как говорили мне, там тоже далеко не все прекрасно.
Сообщение отредактировал mantech - Sep 27 2017, 13:03
|
|
|
|
|
Sep 27 2017, 13:25
|

Местный
  
Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126

|
Скачал AM335x Linux SDK BSP Source Code - файл am335x-evm-linux-rt-sdk-src-04.00.00.04.tar.xz Оказалось полным разводом, вообще нет ничего, что касается AM335x, куча каких-то других микросхем: opl4, m68k, mpu401, даже видео на уровне vesa. Скаладывается такое впечатление, что тут: http://software-dl.ti.com/processor-sdk-li.../index_FDS.htmlрешили просто на отшибись выложить дерьмо с которым поделиться не жалко...
|
|
|
|
|
Sep 27 2017, 13:53
|

Местный
  
Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126

|
Цитата(mantech @ Sep 27 2017, 13:02)  Ковырял МХ6 соло, и аллвиннер А10(13), с последним пока затык из-за времени. На МХ6 есть СДК для программирования без оси, с глюками, но разобраться можно. Графики нет нигде, в линуксе есть какие-то либы, но копаться в них очень утомительно, да и мне особо не нужно было, я использовал только 2Д-графику. С ситарами не работал, но, как говорили мне, там тоже далеко не все прекрасно. В MX6 Solo графика 2D- открыта? Выствить нужное разрешение, глубину цвета, частоту обновления смогу? Бит-блиттинг (bitblt) копирование из видеопамяти в другой участок видеопамяти с цветом прозрачности есть? Цитата(aaarrr @ Sep 27 2017, 13:16)  Я не нашел там даташит с описанием хотя бы базовых регистров. А также как написать standalone application. Цитата(mantech @ Sep 27 2017, 13:02)  На МХ6 есть СДК для программирования без оси, с глюками, но разобраться можно. Уже прикрыли: https://community.nxp.com/docs/DOC-94139При скачивании выдает, что временно недоступно, свяжитесь с их белыми воротничками для доступности скачивания. Что за дела вообще творятся? Продают камни без документации, это самое настоящее мудачество для электронщиков... у меня нет слов!
|
|
|
|
|
Sep 27 2017, 14:25
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(__inline__ @ Sep 27 2017, 16:53)  Оказалось полным разводом, вообще нет ничего, что касается AM335x, куча каких-то других микросхем: opl4, m68k, mpu401, даже видео на уровне vesa. Скаладывается такое впечатление, что тут: http://software-dl.ti.com/processor-sdk-li.../index_FDS.htmlрешили просто на отшибись выложить дерьмо с которым поделиться не жалко... Вот так-таки и ничего? Или просто нет ни малейшего желания разобраться в вопросе? Цитата(__inline__ @ Sep 27 2017, 16:53)  Я не нашел там даташит с описанием хотя бы базовых регистров. А в разделе Documentation что лежит? Цитата(__inline__ @ Sep 27 2017, 16:53)  А также как написать standalone application. У человека, собирающегося писать standalone application, таких запросов быть не должно. Желаете работать без ОС - осваивайте Linux, т.к. SDK изучать и ковырять придется все равно.
|
|
|
|
|
Sep 27 2017, 18:42
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(__inline__ @ Sep 27 2017, 16:53)  В MX6 Solo графика 2D- открыта? Выствить нужное разрешение, глубину цвета, частоту обновления смогу? Бит-блиттинг (bitblt) копирование из видеопамяти в другой участок видеопамяти с цветом прозрачности есть? Там все гораздо веселее. 2Д, как и 3Д-ускорители закрыты. Видеоконтроллер легко запускается из сдк, 2 слоя+альфа запускается путем небольшого шаманства с исходниками(есть глюки), но это все просто разобрался за несколько дней без особого напряга, вот с ускорением рисования прямоугольников, закраской и копированием 2Д-областей, пришлось пойти на хитрость - там есть программируемый ДМА контроллер, можно написать свой скрипт для него и превратить в ДМА2Д. Остальное мне не нужно было. Ну и усб драйвер нужно писать с нуля, т.к. в сдк - слезы. Но есть и светлые моменты - он ЕНС совместимый. Цитата(aaarrr @ Sep 27 2017, 17:25)  Желаете работать без ОС - осваивайте Linux, т.к. SDK изучать и ковырять придется все равно. Про доки - ТС все правильно сказал, нет смысла сравнивать "доки" на 200 стр с хотябы доками на МХ6, порядка 5000стр и то далеко не полные. Ну и расковыривать линукс, это совсем не то, что разобраться в СДК. Говорю не от балды, делал и то и другое.
|
|
|
|
|
Sep 27 2017, 20:17
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(mantech @ Sep 27 2017, 21:42)  Про доки - ТС все правильно сказал, нет смысла сравнивать "доки" на 200 стр с хотябы доками на МХ6, порядка 5000стр и то далеко не полные. Если речь о RK3288, то там далеко не 200 страниц доступно. Хотя и не все, конечно. Цитата(mantech @ Sep 27 2017, 21:42)  Ну и расковыривать линукс, это совсем не то, что разобраться в СДК. Говорю не от балды, делал и то и другое. Вы о чем? ТС скачал SDK, увидел линуксовые исходники ("куча каких-то других микросхем: opl4, m68k, mpu401") и сделал потрясающий вывод - "решили просто на отшибись выложить дерьмо".
|
|
|
|
|
Sep 28 2017, 06:22
|

Местный
  
Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126

|
Да, каюсь... был невнимателен. Нашёл всё-таки SDK под i.MX6, правда док в нем не оказалось (папки пустые), а сорцы как работать с под-системами есть. Даже сишный хедер с описанием 3D-регистров есть! Ну и bare-metal example на гитхабе под него есть.
Вопросы к mantech: 1) Вы работали с i.MX6 Solo, у него частота 1 ГГц, не пробовали его разгонять скажем так на 20% - 50% ? Есть ли запас? 2) Процессор Little Endian? Или Big Endian ? 3) Ширина шины данных(память) там 32 бита на 1 ядро? 4) Какой длины конвеер у этого процессора?
Почитал доки на RockChip, тоже заинтересовал, но огорчает отсутствие SDK, свободного от осей. А также шина 16 бит, против 32 бит в iMX6. Правда частота больше, но опять же настораживает металлический корпус и совет посадить на куллер.
И что самое интересное, для Rockchip RK3288 есть мини-плата-модуль, которая по периметру обнесена контактными площадками - удобно свои устройства делать, так как CPU+RAM уже распаяны (самому разводить плату под DDR3-800 без риска не представляю как).
Если сравнивать i.MX6 Solo и RK3288, то какой из них будет быстрее выполнять код из внешней DDR-памяти? У solo частота 1 ГГц, у RK 1,8 ГГц, зато у соло шина в 2 раза шире. В общем я запутался!
|
|
|
|
|
Sep 28 2017, 07:20
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(__inline__ @ Sep 28 2017, 09:22)  Если сравнивать i.MX6 Solo и RK3288, то какой из них будет быстрее выполнять код из внешней DDR-памяти? У solo частота 1 ГГц, у RK 1,8 ГГц, зато у соло шина в 2 раза шире. В общем я запутался! На счет скорости - берите рокчип, там и ядра быстрее и шина памяти, хоть и 16 бит, но в МХах она медленная, сам проверял. По тепловыделению, ну ясно дело 4х ядерка будет греться сильнее чем одно, причем, МХ6 мягко говоря, не лидер экономности, тут лучше взять аллвиннер V3s, например, и греется немного и ддр разводить не надо(встроенная 64мегабайта, что для программирования без оси - просто прекрасно). Что я бы дал в качестве совета - попробовать запустить первые программы на МХ6, т.к. там очень хорошо документирован процесс запуска, таблицы конфигурации, стартовые скрипты и пр. Это ведь не СТМ, где через jtag просто залить прогу, тут специальные загрузчики нужны и подготовка карты памяти. Кстати, настоятельно рекомендую именно сд-карту, а не нанды и пр - заплюхаетесь... Цитата(__inline__ @ Sep 28 2017, 09:22)  1) Вы работали с i.MX6 Solo, у него частота 1 ГГц, не пробовали его разгонять скажем так на 20% - 50% ? Есть ли запас? 2) Процессор Little Endian? Или Big Endian ? 3) Ширина шины данных(память) там 32 бита на 1 ядро? 4) Какой длины конвеер у этого процессора? Сейчас уже не помню эти подробности, дело 2 года назад было. Разгонять не пробовал, это для целей промавтоматики было, а там больше важна надежность.
Сообщение отредактировал mantech - Sep 28 2017, 07:21
|
|
|
|
|
Sep 28 2017, 08:42
|

фанат Linux'а
    
Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008

|
Цитата(__inline__ @ Sep 27 2017, 15:39)  4) Да, я ССЗБ, как тут сказали, low-level-programming - моё увлечение, есть наработки в виде разных приложений типа эмуляторов, игр. Сейчас стоит цель поднять быстродействие некоторых приложений в 1,5-2 раза, без сильной оптимизации кода (код должен быть на С, с минимумом ассемблера). Сроки неограничены Вы меня простите, но я понимаю когда люди страдают ерундой ради какой-то внятной цели для каких-то проектов, где без этого вообще никак. Но чтоб просто так? Это ведь не серьезно. КТО Вам сказал, что без Linux вы поднимите производительность в 1,5-2 раза?
--------------------
|
|
|
|
|
Sep 28 2017, 09:29
|

Местный
  
Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126

|
Цитата(AVR @ Sep 28 2017, 08:42)  Вы меня простите, но я понимаю когда люди страдают ерундой ради какой-то внятной цели для каких-то проектов, где без этого вообще никак. Но чтоб просто так? Это ведь не серьезно. КТО Вам сказал, что без Linux вы поднимите производительность в 1,5-2 раза? Дано: ADSP BlackFin 708 MHz, 177 MHz 16 bit bus SDRAM CL=3, no FPU. Perfomance: 40-50 FPS, standalone bare metal Надо: Perfomance 60 FPS, no Assembler Решение: заменить BlackFin чем-то быстрым. Хотите сказать, что без Линукса я не сделаю 60 ФПС, когда на Блекфине делал чуть менее? Ну-ну...  Вот плата собственного изготовления с софтом "чисто bare-metal". По срокам - пол-года : от разводки платы до освоения Блекфина (не всего, то что нужно), написания дизайна для FPGA:
Хотите сказать, что с RockChip или i.MX6 этот номер не пройдёт? Видео как устройство работает, для AVR:
Sonic_0.rar ( 2.85 мегабайт )
Кол-во скачиваний: 68Никаких операционных систем. Основной цикл в main() + обработчики прерываний (видео, звук, кнопки, таймеры) + DMA для звука и видео
Сообщение отредактировал __inline__ - Sep 28 2017, 09:15
|
|
|
|
|
Sep 28 2017, 09:35
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(__inline__ @ Sep 28 2017, 09:22)  Почитал доки на RockChip, тоже заинтересовал, но огорчает отсутствие SDK, свободного от осей. А также шина 16 бит, против 32 бит в iMX6. Цитата Dual channel DDR3-1333/DDR3L-1333, each channel 16/32bits data width, 2 ranks, totally 4GB(max) address space, maximum address space for one rank of channel 0 is also 4GB. Такие вот 16 бит.
|
|
|
|
|
Sep 28 2017, 09:42
|

Местный
  
Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126

|
Цитата(_pv @ Sep 28 2017, 09:32)  судя по прошлой теме вы в блэкфин засунули эмулятор M68k написанный для ПК (с использованием плавающей запятой для звука). при этом производительности самого блэкфина, если нормально сделать, там должно быть более чем достаточно. не хотите переписывать нормально - берите любую распберри пи, а то и вообще планшет на intel Atom и запускайте на нём, наличие линукса там вам ну никак на быстродействие не повлияет. Это был другой эмулятор - Capcom Play System. Тот что летает на видео - это SEGA MD, там всё ОК с быстродействием. Мне нужно только в некоторых эмулях поднять быстродействие: SNES, GBA и Capcom. В остальных всё устраивает. Естественно, переписывать сорцы эмуляторов я не намереваюсь, поэтому есть интерес сделать девайс по-мощнее. Распбери Пи + Linux неинтересны, для этих целей у меня есть настольный ПК с 4-мя ядрами по 3 GHz каждый - ради интереса портанул под DOS - всё летает, но это слишком просто. Хочется самому плату развести и с регистрами поиграться....  На счёт эмулятора CPS1,2: Кстати, на счет плавучки в звуке: она там на моменте инициализации таблиц. Далее floating point вычисления не используются. Причина тормоза - софтварный блиттер эмулятора - 4 видеоплоскости по 384x224 пикселей 16 бит 4096 цветов. Оптимизировать это - это переписывать почти весь эмулятор! Палитра теперь хардварная в FPGA, так что теперь чуть быстрее. Цитата(aaarrr @ Sep 28 2017, 09:35)  Такие вот 16 бит. Я тоже обратил на это внимание и так и не понял: шину данных 32 бита можно выставить или нет?
Сообщение отредактировал __inline__ - Sep 28 2017, 09:43
|
|
|
|
|
Sep 28 2017, 10:22
|

Местный
  
Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126

|
Цитата(mantech @ Sep 28 2017, 09:48)  Может проще тогда взять дисплей со встроенным блиттер-контроллером? Или на плиске видео сделать...  Дело в том, что плата в настоящий момент поддерживает: 1) Эмуляторы: Game Boy, Game Boy Color, Game Boy Advance NES (Дендик) SEGA MegaDrive, SEGA MasterSystem/GameGear SNES NEO-GEO Capcom Play System 1,2 Turbo Graphx16 (NEC PC Engine) 2) Нативное приложение: Open Tyrian И писать дизайн для FPGA для каждой системы - дело неблагодарное и трудозатратное (не всё документировано). Самый верный путь тут - декапсулировать раритетные чипы и уже известный дизайн закладывать в ПЛИС. Но у меня нет всех микросхем, которые нужно декапсулировать. Например, видеочип от CPS1,2:
Это не просто блиттер, а тайлово-спрайтовый движок. Дизайн на ПЛИС для енго писать - сложнее, чем просто сделать видеокарту с палитрой и переключением видео-страниц. Цитата(Огурцов @ Sep 28 2017, 10:10)  зачем вы ищете что-то ещё, если у вас уже fpga ? Ну предположим, что число ячеек данной ФПГА не резиновое, и не все алгоритмы можно переложить из CPU. Не хватает скорости лишь в некоторых эмуляторах. По мере портирования эмуляторов, запросы росли, поэтому даже разогнанный до 700 МГц Блекфин уже немного не дотягивает некоторые эмуляторы до 60 FPS. К примеру - консоль GBA имеет ARM7 на борту, код эмулятора на Си естественно, эмулятор работает на скорости меньше чем 60 к/с
|
|
|
|
|
Sep 28 2017, 10:44
|
Частый гость
 
Группа: Свой
Сообщений: 199
Регистрация: 29-07-08
Из: Серпухов
Пользователь №: 39 283

|
Кстати , Rockchip пошла навстречу трудящимся и запустила сайт с описанием RK3288 ,RK3328 ,RK3399 . Есть многое , но не всё .
|
|
|
|
|
Sep 28 2017, 11:05
|

Местный
  
Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126

|
Цитата(maugli @ Sep 28 2017, 10:44)  Кстати , Rockchip пошла навстречу трудящимся и запустила сайт с описанием RK3288 ,RK3328 ,RK3399 . Есть многое , но не всё . https://github.com/rockchip-linux/libmaliКак всегда: самое интересное закрыто. Напоминает ситуацию, когда nVidia выпустила драйвера под свои GeForce-ы в виде бинарников. Вооружаться IDA Pro и колупать дизасм? Насколько я представляю, это противоречит идеологии open source в Linux. Может всё-таки есть в природе каметь более открытый чем i.MX6 или Rockchip от 1 ГГц или выше , пусть даже с минимумом периферии? Наподобие BlackFin? Мне честно говоря, почти 90% всей периферии что в рокчипах или и-мх-ах как-то не нужно особо. Например мульти-медиа функции и HDMI - совсем ни к чему. К тому же присобачу свой видеоконтроллер на ПЛИС. Нужно только быстрое CPU ядро!
Сообщение отредактировал __inline__ - Sep 28 2017, 11:02
|
|
|
|
|
Sep 28 2017, 11:07
|
Знающий
   
Группа: Участник
Сообщений: 750
Регистрация: 1-11-11
Пользователь №: 68 088

|
Цитата(__inline__ @ Sep 28 2017, 14:05)  К тому же присобачу свой видеоконтроллер на ПЛИС. Нужно только быстрое CPU ядро! Не только. Ещё нужна быстрая шина между CPU и FPGA, какой-нибудь PCI-Express вполне себе подойдет.
--------------------
"... часами я мог наблюдать, как люди работают." (М. Горький)
|
|
|
|
|
Sep 28 2017, 11:18
|
Гуру
     
Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954

|
Цитата(__inline__ @ Sep 28 2017, 16:42)  Причина тормоза - софтварный блиттер эмулятора - 4 видеоплоскости по 384x224 пикселей 16 бит 4096 цветов. значит тоже криво сделано, уж скопировать с нужным смещением аж 384*224 80кслов пусть даже четрыре раза, можно сильно больше чем 60 раз за секунду. ну и по поводу поиска именно жирной шины наружу, код вовсе не обязательно из внешней памяти исполнять. там этого эмулятора-то. Цитата Не только. Ещё нужна быстрая шина между CPU и FPGA, какой-нибудь PCI-Express вполне себе подойдет. ТС эмулирует приставки с характерными разрешениями 300х200. без PCI-Express для пересылки сотни другой килобайт, пусть и 60 раз в секунду, обойтись действительно не получится.
|
|
|
|
|
Sep 28 2017, 11:40
|

Местный
  
Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126

|
Цитата(_pv @ Sep 28 2017, 11:18)  значит тоже криво сделано, уж скопировать с нужным смещением аж 384*224 80кслов пусть даже четрыре раза, можно сильно больше чем 60 раз за секунду. ну и по поводу поиска именно жирной шины наружу, код вовсе не обязательно из внешней памяти исполнять. там этого эмулятора-то. ТС эмулирует приставки с характерными разрешениями 300х200. без PCI-Express для пересылки сотни другой килобайт, пусть и 60 раз в секунду, обойтись действительно не получится.  Не говорите то, чего не знаете! Потому что видеосистема эмулируемой платформы не просто "скопировать с нужным смещением аж 384*224 80кслов пусть даже четрыре раза", а всё намного сложнее. Ссылку на исходники эмулятора я давал в другой теме, если есть интерес - гляньте. А вот бряцать языком (точнее пальцами по клаве) - не надо, а то ваши "скопировать с нужным смещением аж 384*224 80кслов пусть даже четрыре раза" превращают меня в идиота, ничего не умеющего, что мне очень неприятно! Единственно, в чём с вами соглашусь, так это в занятии шины графической системой, которая снижает скорость общения процессора с памятью. И эмулятор там около 1 МБ получается, потому что кроме M68000 дохрена всего эмулируется. Цитата(scifi @ Sep 28 2017, 11:09)  Есть же плисины со встроенными быстрыми ядрами, нет? Цены на али не радуют: не ниже 14 тыс руб за Zinq-7000. Неужели какого-нибудь сраного АРМа на 1ГГц нет, который нормально открыт?
|
|
|
|
|
Sep 28 2017, 12:09
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(__inline__ @ Sep 28 2017, 14:05)  https://github.com/rockchip-linux/libmaliМожет всё-таки есть в природе каметь более открытый чем i.MX6 или Rockchip от 1 ГГц или выше , пусть даже с минимумом периферии? Наподобие BlackFin? Тут даже не знаю, что и посоветовать, 3Д вам не нужно в принципе, контроллеры с открытым блиттером тут проскакивали, что-то навроде разогнанных кинетисов 600МГц М7, по скорости должен быть круче блекфина, память там шустрая, экран до 1024х768 тянуть должен. Попробуйте его...
|
|
|
|
|
Sep 28 2017, 12:59
|

фанат Linux'а
    
Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008

|
Цитата(__inline__ @ Sep 28 2017, 12:29)  Хотите сказать, что без Линукса я не сделаю 60 ФПС, когда на Блекфине делал чуть менее? Ну-ну...  Хотите сказать, что с RockChip или i.MX6 этот номер не пройдёт? Я был неверно понят. Хотел сказать, что если некое приложение X на Linux выдает 15 fps, то избавившись от такой операционной системы, оно не будет выдавать 20-30 fps на голом железе, Linux не дает такие накладные расходы и не является источником потерь. Вот например Blackfin, имеет ли он 3D-ускоритель с OpenGL ES? В общем, я, как и некоторые отписавшиеся выше, выражаю огромное сомнение в осмысленности такой работы, даже в качестве хобби. Эту бы энергию, да... Впрочем, кто решает кому что делать? Ваше право, удачи Вам в этом бессмысленном деле  Цитата(__inline__ @ Sep 28 2017, 12:29)  Насколько я представляю, это противоречит идеологии open source в Linux. И что? Есть какая-то опенсорс-полиция, которая следит за соблюдением идеологической чистоты? Не нарушает лицензии - значит допустимо.
--------------------
|
|
|
|
|
Sep 28 2017, 13:12
|

Местный
  
Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126

|
Цитата(mantech @ Sep 28 2017, 12:09)  Тут даже не знаю, что и посоветовать, 3Д вам не нужно в принципе, контроллеры с открытым блиттером тут проскакивали, что-то навроде разогнанных кинетисов 600МГц М7, по скорости должен быть круче блекфина, память там шустрая, экран до 1024х768 тянуть должен. Попробуйте его... Что скажете об Allwinner v3s ? Когда нашёл, то очень удивился - 1,2ГГц в корпусе QFP, да ещё и с 64 МБ запрятанной DDR2 памяти! Порвёт же BlackFin !!! Почитал документацию, ничего закрытого в ней не нашёл. Ну и SDK есть (правда на 2 ГБ) Цитата(AVR @ Sep 28 2017, 12:59)  Я был неверно понят. Хотел сказать, что если некое приложение X на Linux выдает 15 fps, то избавившись от такой операционной системы, оно не будет выдавать 20-30 fps на голом железе, Я этого не утверждал. Против Линукса ничего не имею. Есть желание сделать кристально чистые приложения, свободные от операционной системы. ИМЕЮ ПРАВО!
|
|
|
|
|
Sep 28 2017, 14:04
|
Гуру
     
Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954

|
Цитата(__inline__ @ Sep 28 2017, 18:40)  Потому что видеосистема эмулируемой платформы не просто "скопировать с нужным смещением аж 384*224 80кслов пусть даже четрыре раза", а всё намного сложнее. Ссылку на исходники эмулятора я давал в другой теме, если есть интерес - гляньте. А вот бряцать языком (точнее пальцами по клаве) - не надо, а то ваши "скопировать с нужным смещением аж 384*224 80кслов пусть даже четрыре раза" превращают меня в идиота, ничего не умеющего, что мне очень неприятно! выставлять кого бы то ни было идиотом совсем не планировал. при том что это не ваш эмулятор, и сами сказали что переписывать его под блэкфин не собираетесь, а там в коде хватает всякого прекрасного вроде ratio = (float)sqrt((double)num / (double)den); да и со звуком тоже, а не только при инициализации. buffer[i] *= ((float)(fadeout_frame - fadeout_counter) / (float)fadeout_frame); так что не удивительно что блэкфина на это не хватает. я конечно детально не разбирался что именно там за видеосистема, но и к Z80/M68k 25 лет назад 3д ускорителей как-то вроде не приделывали, в лучшем случае отдельные спрайты само могло двигать/поворачивать и друг на дружку накладывать. Цитата(__inline__ @ Sep 28 2017, 18:40)  И эмулятор там около 1 МБ получается, потому что кроме M68000 дохрена всего эмулируется. что-то всё равно много. возьмите 706/7 блэкфин, у него внутренней памяти мегабайт, хотя бы за программой во внешнюю память лазить не придётся. да и у 60x что-то простенькое для обработки видео есть, возможно какую-то часть по обработке картинки на него переложить удастся.
|
|
|
|
|
Sep 28 2017, 14:11
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(AVR @ Sep 28 2017, 19:59)  Linux не дает такие накладные расходы и не является источником потерь. Линух не даёт, но могут давать драйвера периферии, написанные индусами кое-как, причём под заданный интерфейс взаимодействия прикладной код <-> ядро. И вобщем: узкоспециализированное решение под конкретную задачу в среднем всегда эффективнее универсального под универсальный интерфейс. Даже просто замена использования стандартных библиотек от производителя на свою реализацию алгоритма по моему опыту давала выигрыш примерно в 3 раза по скорости (конкретно из моего опыта: библиотека DSPLIB для C55xx). Цитата(__inline__ @ Sep 28 2017, 20:12)  Есть желание сделать кристально чистые приложения, свободные от операционной системы. ИМЕЮ ПРАВО! Лучше всё-таки с ОС. На линухе свет клином не сошёлся. Но только для управления распределением времени между задачами.. Есть же и FreeRTOS и uCOS и т.п.
|
|
|
|
|
Sep 28 2017, 14:31
|

Местный
  
Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126

|
Немного просмотрел SDK под alwinner, начал нравиться, более простой системы я не видел - быстрое ядро, спрятанная внутрь память 64 МБ, корпус паяемый в наколенных условиях, принципиальная схема какого-то видеорегистратора есть - а это можно запилить свою борду, примитивную до безобразия, видео там 30 FPS, не годится, но есть RGB/I8080 интерфейс - к нему подрубить видеокарту на ПЛИС , джойстики, разъём SD-карты, звуковой кодек там есть - и вроде как всё - приставка готова! Куча сорцов сишных в SDK, и даташит есть. Чем-то BlackFin напомнил
|
|
|
|
|
Sep 28 2017, 14:49
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(__inline__ @ Sep 28 2017, 17:31)  Немного просмотрел SDK под alwinner, начал нравиться, более простой системы я не видел - быстрое ядро, спрятанная внутрь память 64 МБ, корпус паяемый в наколенных условиях, принципиальная схема какого-то видеорегистратора есть - а это можно запилить свою борду, примитивную до безобразия Ну, не совсем уж примитивную - там только питаний 4-5 штук набирается. Но процессор интересный, как раз сейчас им занимаюсь. Цитата(__inline__ @ Sep 28 2017, 17:31)  видео там 30 FPS, не годится Откуда цифра 30, и для чего не годится?
|
|
|
|
|
Sep 28 2017, 15:47
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(AVR @ Sep 28 2017, 18:20)  Вы меня тоже им заинтересовали. А там "сжиматор видео" насколько сложно управляется, не приходилось использовать? В плане, может без ОС можно будет сжатие видео на таком сообразить? Я не заболел от автора темы, по-прежнему Linux люблю, но если можно упростить в этом случае - почему бы нет. Использовать приходилось, правда, пока не на V3s. Ничего особо сложного нет. Доступны как библиотеки от Allwinner'а (бинарные), так и открытые проекты. У последних, по понятным причинам, с кодированием все обстоит не так хорошо, как с декодированием. Но смысла отказа от ОС не вижу в любом случае, зачем усложнять себе жизнь?
|
|
|
|
|
Sep 28 2017, 17:46
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(AVR @ Sep 28 2017, 18:20)  Вы меня тоже им заинтересовали. А там "сжиматор видео" насколько сложно управляется, не приходилось использовать? В плане, может без ОС можно будет сжатие видео на таком сообразить? Я не заболел от автора темы, по-прежнему Linux люблю, но если можно упростить в этом случае - почему бы нет. Слишком сильно его не копал, просто летом увидел случайно, понравился встроенной памятью. Для него есть линукс-подобная ось, заточенная для сжатия видео, посмотрите, может и подойдет. Кстати, какую отладку для него собираетесь использовать?
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|