Перейти к содержанию
    

Allwinner T113-s3 уделал HiFi4 DSP. Смеяться или плакать?

On 12/31/2020 at 1:50 AM, mantech said:

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

Собрал HelloWorld для V3S, под RT-Thread, об'ем существенно больше 32к, соответственно загрузить не получается. Вероятно  можно отключить неиспользуемые сервисы и драйвера, и получить об'ем < 32к, но смысла нет, конечное приложение будет явно больше. Не подскажете про "ухищрения"?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 minutes ago, nanorobot said:

Не подскажете про "ухищрения"?

Как ни странно, любимый в этой теме "бареметал" весьма удобно грузить с помощью u-boot: прошивку подхватываем с хоста через tftp, затем go. Полная автоматика, достаточно сделать make и передернуть питание.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

9 hours ago, aaarrr said:

Как ни странно, любимый в этой теме "бареметал" весьма удобно грузить с помощью u-boot:

Не удалось в u-boot запустить ethernet. Всегда сообщение 'no ethernet found'. Зато научился u-boot из spi flash запускать..

Изменено пользователем nanorobot

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

8 minutes ago, nanorobot said:

Не удалось в u-boot запустить ethernet. Всегда сообщение 'no ethernet found'. Зато научился u-boot из spi flash запускать..

u-boot свежий? Так и не добавили?

 

Это достаточно легко исправить...

1. В конфиге:

CONFIG_SUN8I_EMAC=y

2. В drivers/net/sun8i_emac.c:

меняем все #if defined(CONFIG_MACH_SUNXI_H3_H5) и #ifdef CONFIG_MACH_SUNXI_H3_H5

на #if defined(CONFIG_MACH_SUNXI_H3_H5) || defined(CONFIG_MACH_SUN8I_V3S)

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

10 hours ago, aaarrr said:

u-boot свежий? Так и не добавили?

 

Это достаточно легко исправить...

1. В конфиге:

CONFIG_SUN8I_EMAC=y

2. В drivers/net/sun8i_emac.c:

меняем все #if defined(CONFIG_MACH_SUNXI_H3_H5) и #ifdef CONFIG_MACH_SUNXI_H3_H5

на #if defined(CONFIG_MACH_SUNXI_H3_H5) || defined(CONFIG_MACH_SUN8I_V3S)

 

 

uboot свежий, экспериментальный....)))   git clone -b v3s-spi-experimental https://github.com/Lichee-Pi/u-boot.git

спасибо, сейчас попробую

CONFIG_SUN8I_EMAC=y  менять не пришлось, так и было... // было изменено через menuconfig
меняем все #if defined(CONFIG_MACH_SUNXI_H3_H5) и #ifdef CONFIG_MACH_SUNXI_H3_H5     .

 

был единственный #if defined(CONFIG_MACH_SUNXI_H3) - добавлено -|| defined(CONFIG_MACH_SUN8I_V3S) - не помогло

Изменено пользователем nanorobot

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Давно я сюда ничего не писал... :blush: Потерял контроль над старым аккаунтом, поэтому завёл новый.

   

Allwinner V3s не  перестаёт удивлять! :yes:

Были сделаны порты новых игр для него:

 

1) Raptor.

Обсуждение вопросов, связанных с портированием: https://gamedev.ru/flame/forum/?id=261992

Исходный код: https://github.com/nukeykt/raptor/

Видео:

 

 

 

2) Эмулятор громко нашумевшей несуществующей консоли PICO-8.

Обсуждение: https://gamedev.ru/flame/forum/?id=261218

Исходный код: https://github.com/jtothebell/fake-08

Видео:

 

 

 

3) Ну и наконец, результат моего реверса одной игры - Tube.

Обсуждение: https://gamedev.ru/flame/forum/?id=262348&page=8&m=5430353#m119

Исходный код(обновлён): https://github.com/rep-stosw/tube-game-dos

Видео:

 

 

 

:hi:Для TMS320C6745 проделано всё аналогично.

 

 

 

Изменено пользователем repstosw

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сделана ещё одна приставка на Allwinner V3s - Cobura Mobile.

Обсуждение, схема: https://gamedev.ru/flame/forum/?id=252846&page=6&m=5443647#m82

 

Приставка в действии:

 

 

Используется дисплей от навигационного оборудования автомобиля "Mersedes  B200" - LA058WQ1-SD01 с высокими яркостью, контрастностью и отличными динамическими характеристиками!

С антибликовым покрытием.

 

Лично измеренная динамическая характеристика дисплея:

157472_1631922739_clipboard01.png

 

Презентация дисплея с подробным описанием под видео:

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да уж, экзотика та ещё: 5" 400*240 и при этом 80 т/дюйм (чуть лучше чем у ЭЛТ 25-летней давности)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, Obam said:

Да уж, экзотика та ещё: 5" 400*240 и при этом 80 т/дюйм (чуть лучше чем у ЭЛТ 25-летней давности)

 

Специально такой искал.  Чтобы был 400x240 и достаточно большой.

Большинство LCD такого размера делают на 800x480.

 

А тут прям, попадание в точку - размер, разрешение, яркость, контрастность, да и ещё динамика отличная (для 60 FPS приемлемая)!:sun_bespectacled:

Да и ещё IPS и с анти-бликовым покрытием! :good3:

 

P.S. На видео иногда видно смазывание, это из-за съёмки камерой на 30 FPS.  В реальности такого нет.

Изменено пользователем repstosw

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

8 часов назад, Obam сказал:

Да уж, экзотика та ещё: 5" 400*240 и при этом 80 т/дюйм

Да просто древний похоже..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Портирован "Цып-очкарик" (игра).

Сама игра (платформенно-независимая): https://rxi.itch.io/99

Исходники движка игры (запускает игру): https://github.com/rxi/juno

Обсуждение вопросов портирования: https://gamedev.ru/flame/forum/?id=263987

Видео.  Вначале с фильтром 2xSaI, начиная с 3:36 - без фильтра в крупных пикселях:

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Раскурил Display Engine для альфа-блендинга слоёв у V3s.

Здесь у двух плоскостей - альфа на уровне плоскости, у третьей плоскости - альфа на уровне пикселей.

Только так.

 

По вопросам приобретения BareMetal SDK для V3s пишите в личку или на почту repstosw2018 @ gmail . com

Вот что получилось:

 

 

V3s удобен по следующим причинам:

- паяемый корпус

- встроенная память на 64 мегабайта

Плата - Lichee Pi Zero.

 

Quote

Работа ведётся автономно, без всяких ОС и у-бутов.  Стиль написания программ: процедурно-ориентированное программирование на C.

:yes: Что может и что делает SDK? : :sun_bespectacled:

1) Воспроизведение звука с помощью встроенного аудио-кодека

2) Настройка канала ДМА для аудиокодека

3) Настройка прерываний от ДМА для аудиокодека (по окончанию половины буфера и полного буфера)

4) Настройка аудио-параметров кодека

5) Работа с таймером: задержки, считывание значение тика

6) Инициализация видеосистемы: установка логического разрешения, формата пиксела, установка базового адреса видеопамяти. Под LCD 800x480.

7) Подсветка LCD

8) Функция VSync для синхронизации вывода изображения с отрисовкой на LCD.

9) Настройка второго канала ДМА для копирования "память-память". Функция проверки готовности пересылки ДМА.

10) Быстрый MEMCPY с помощью NEON

11) Инициализация UART для обмена данными с ПК (удобно для отладки).

12) Инициализация портов GPIO для периферии.  Светодиоды на PG0,PG1,PG2 + для управления джойстиком (см. следующий пункт).

13) Инициализация джойстика от SEGA MegaDrive.  Доступны  все 12 кнопок: U,D,L,R,START,A,B,C,X,Y,Z,MODE. Возможна одновременность нажатия всех кнопок в любых сочетаниях.

14) Инициализация системы прерываний: GIC, GIC distributor.  Установка любого вектора прерываний. Разрешение-запрет прерываний.

15) Настройка MMU, регионов кеширования. Разрешение кеширования для кода, данных. Включение предсказания ветвлений, NEON, VFP.

16) Инициализация встроенной DDR2 (64 МБ), установка тактовой частоты памяти.

17) Установка частоты ядра процессора. Открытие всех нужных гейтов для тактирования шин, периферии.

18) Рантайм для C/C++ : инициализация BSS секции, копирование LMA => VMA (для переменных  с начальным значением, которые не константы), инициализация конструкторов

классов (до main).

19) Инициализация порта SDIO для подключения карточек SD.  Инициализация и низкоуровневая работа с SD-картой

20) Драйвер файловой системы Petit FS от  Chan. Поддержка FAT 12,16,32.

21) Поддержка Fat FS для внешних приложений.

22) Работа с кешами:  invalidate, flush и другие.

23) Функции для рисования спрайтов. Задний буфер для отрисовки.

24) Скрипты для создания SPL-программы (elf to bin, встраивание хедера для загрузчика, подсчёт контрольной суммы).

25) Загрузчик внешнего приложения в начало DDR2 по адресу 0x40000000 и передача управления загруженному коду

26) ещё чего-нибудь, что забыл написать или сделаю.

27) работа с Display Engine : поддержка до трёх слоёв с полу-прозрачностью (alpha blending)

Реализации SDK :

1) тулчейн GCC (arm-none-eabi-gcc, последняя версия)

2) IAR EWARM v.8.50

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 часа назад, repstosw сказал:

V3s удобен по следующим причинам:

В сторону T113-S3 не смотрели?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

27 minutes ago, mantech said:

В сторону T113-S3 не смотрели?

 

Только что сегодня обнаружил, что у него есть графический движок :)  G2D.  По описанию выглядит очень приятно :) И корпус чипа паяемый. И память внутри и в 2 раза больше, чем у V3s.

Правда у меня диссонанс по поводу многоядерности: куда девать второе ядро?

Изменено пользователем repstosw

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...