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

 
 
> DMA2D в stm32f4хх, реально такой убогий, или я что-то не понимаю?
Шаманъ
сообщение Oct 28 2015, 20:48
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 758
Регистрация: 27-08-08
Пользователь №: 39 839



Приветствую всех!

Собственно почитал описание DMA2D (он же Chrome-ART), и как-то все убого так. Из полезных функций это заливка и копирование? Или я что-то не понимаю? Если кто-то использует его, просветите для чего и каков эффект?

Спасибо!
P.S. Даже древний s1d13a04 и то умел намного больше...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Hold
сообщение Apr 21 2017, 10:12
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 40
Регистрация: 27-01-17
Пользователь №: 95 184



Вопросы к знаюшим людям, может что доброе подскажут:
- Плата 4-х слойка
- STM32F429BIT6 180 Мгц
- SDRAM MT48LC16M16A2 (16 бит шина данных)
- экран 800x480 AT070TN9x(4)(подключение 24бит) , драйвер питания TPS65150
- Питание 3.3, 3А, ST1S14



SDRAM включена на 90 Мгц (проверяли до 105 Мгц), проблем с чтением/записью или долговременным хранением нет, тайминги по ДЩ.
Был написан тестовый драйвер на LTDC, проверили вывод из SDRAM, никаких проблем не было. Частота клока на экран 33.3 МГц, согласно ДШ на экран.
Подключили STemWin, драйвер взяли готовый (использует ARGB), подправили инициализацию и тайминги LTDC, демка запустилась, но с косяками. Начали разбираться, убрали GUI, решили позаполнять экран на максимальной скорости в главном цикле. И тут вылезли проблемы.
Простейший код рисования прямоугольников синим цветом в режиме ARGB8888:
Код
      for (uint32_t i = 0; i < 800*480; i++)
      {
         for (uint32_t y = 0; y < i%480 +1; y++)
         {
            for (uint32_t x = 0; x < i/480 +1; x++)
            {
               LTDC_Lay1_Ram[(y*LCD_HS_SIZE + x)*LCD_BPP] = 0xFF;
               LTDC_Lay1_Ram[(y*LCD_HS_SIZE + x)*LCD_BPP + 1] = 0x00;
               LTDC_Lay1_Ram[(y*LCD_HS_SIZE + x)*LCD_BPP + 2] = 0x00;
               LTDC_Lay1_Ram[(y*LCD_HS_SIZE + x)*LCD_BPP + 3] = 0xFF;
            }
         }
      }


В итоге на экране во время рисования цветная каша. Но стоит остановить проц в дебаге, как на экране нужный прямоугольник без всякого шума. Сделали вывод, что проц и LTDC постоянно соревнуются за SDRAM, т.к. шина все же одна, и совместного доступа один фиг не получится. Проверили заполнение через DMA2D - ровно такая же картина. Уменьшили частоту клока до 23 мгц - экран стал отрисовываться без мусора. Поставил режим RGB888, т.е. на 1 байт на пиксель меньше, т.е. LTDC надо выводить ровно на 25% меньше данных. Увеличил частоту до 30.5 Мгц (больше на 25%) - выводится без проблем. Увеличиваем до 31 - опять мусор. Дабы убедиться, сделали второй буфер в другом банке SDRAM, и во время вывода статичного буфера на LTDC писали во второй буфер. В итоге опять мусор, хотя видеобуфер никто не трогал и не менял. Сейчас есть идея воткнуть SDRAM с шиной данных 32бит (либо две по 16 ), что даст теоретический прирост скорости обмена в 2 раза, но быть может я упускаю что-то совсем простое? Может все же SDRAM криво работает, но тогда бы терялись данные, а тут несколько иная картина. Увеличивал тактовую до 210 Мгц, не меняя клок на экран - проблемы уходили, пока не повысить клок на процент увеличения частоты проца.

Сообщение отредактировал Hold - Apr 21 2017, 10:13
Go to the top of the page
 
+Quote Post
Шаманъ
сообщение Apr 21 2017, 10:26
Сообщение #3


Знающий
****

Группа: Участник
Сообщений: 758
Регистрация: 27-08-08
Пользователь №: 39 839



Цитата(Hold @ Apr 21 2017, 13:12) *
В итоге опять мусор, хотя видеобуфер никто не трогал и не менял.

Не хватает полосы памяти. Прикиньте сами - ARGB8888 это 132МБ/сек

Цитата
Сейчас есть идея воткнуть SDRAM с шиной данных 32бит (либо две по 16 ), что даст теоретический прирост скорости обмена в 2 раза, но быть может я упускаю что-то совсем простое?

ИМХО, ничего Вы особенно не упускаете. Есть некоторые приемы работы с SDRAM, которые позволяют поднять производительность по максимуму, но в целом для таких разрешений полосы памяти недостаточно (плюс арбитр шины по всему не без проблем для такого применения). Могу посоветовать перейти на RGB565, тем более Ваш экран 24битный цвет скорее всего не поддерживает.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Шаманъ   DMA2D в stm32f4хх   Oct 28 2015, 20:48
- - Genadi Zawidowski   После эпсонов действительно полное ощущение что DM...   Oct 28 2015, 21:08
|- - Шаманъ   Цитата(Genadi Zawidowski @ Oct 28 2015, 23...   Oct 28 2015, 21:18
- - mantech   Цитата(Шаманъ @ Oct 28 2015, 23:48) Приве...   Oct 29 2015, 08:27
|- - adnega   Цитата(mantech @ Oct 29 2015, 11:27) Это ...   Oct 29 2015, 08:37
- - Genadi Zawidowski   с самым нужным шаманством над форматом пикселей - ...   Oct 29 2015, 09:08
|- - adnega   Цитата(Genadi Zawidowski @ Oct 29 2015, 12...   Oct 29 2015, 09:23
|- - Шаманъ   Цитата(adnega @ Oct 29 2015, 11:23) Дык, ...   Oct 29 2015, 10:37
|- - mantech   Цитата(Шаманъ @ Oct 29 2015, 13:37) Почем...   Oct 29 2015, 11:33
- - SasaVitebsk   + можно для фонтов антиалиасинг использовать 4-ёх ...   Oct 29 2015, 09:47
- - Шаманъ   Цитата(mantech @ Oct 29 2015, 13:33) Не б...   Oct 29 2015, 17:00
|- - mantech   Цитата(Шаманъ @ Oct 29 2015, 20:00) Ладно...   Oct 29 2015, 18:32
|- - Aner   QUOTE (mantech @ Oct 29 2015, 21:32) Диск...   Oct 29 2015, 22:05
|- - mantech   Цитата(Aner @ Oct 30 2015, 01:05) Сюда за...   Oct 30 2015, 07:37
|- - Шаманъ   Цитата(mantech @ Oct 30 2015, 09:37) но л...   Oct 30 2015, 08:20
|- - mantech   Цитата(Шаманъ @ Oct 30 2015, 11:20) У стм...   Oct 30 2015, 08:45
- - Rash   Что-то маловато граф вкусностей gfx маловато, emWi...   Oct 30 2015, 06:39
|- - Aner   QUOTE (Rash @ Oct 30 2015, 09:39) Что-то ...   Oct 30 2015, 07:25
- - Aner   да я тоже лет 10 назад такое разводил, ... не прош...   Oct 30 2015, 08:10
- - Rash   STM429 в 176 LQFP разведена на 2-х слойке SDRAM, н...   Oct 30 2015, 08:40
|- - Шаманъ   Цитата(Rash @ Oct 30 2015, 10:40) STM429 ...   Oct 30 2015, 10:02
- - Rash   На этой плате не проверены пока только SDRAM и LTD...   Oct 30 2015, 11:41
- - SasaVitebsk   На SRAM не прокатит. Объём объёмом, а производител...   Oct 30 2015, 11:44
|- - mantech   Цитата(SasaVitebsk @ Oct 30 2015, 14:44) ...   Oct 30 2015, 14:42
|- - Шаманъ   Цитата(SasaVitebsk @ Oct 30 2015, 13:44) ...   Oct 30 2015, 15:26
|- - AVI-crak   Цитата(SasaVitebsk @ Oct 30 2015, 18:44) ...   Oct 30 2015, 15:30
|- - Aner   QUOTE (AVI-crak @ Oct 30 2015, 18:30...   Oct 31 2015, 20:49
|- - mantech   Цитата(Aner @ Oct 31 2015, 23:49) Вот вот...   Nov 1 2015, 07:41
|- - Aner   QUOTE (mantech @ Nov 1 2015, 10:41) У эти...   Nov 1 2015, 11:06
||- - mantech   Цитата(Aner @ Nov 1 2015, 14:06) Не зная ...   Nov 1 2015, 15:53
|- - Шаманъ   Цитата(mantech @ Nov 1 2015, 09:41) У эти...   Nov 1 2015, 12:09
|- - adnega   Цитата(Шаманъ @ Nov 1 2015, 15:09) Не, ко...   Nov 1 2015, 13:41
||- - Шаманъ   Цитата(adnega @ Nov 1 2015, 15:41) Добави...   Nov 2 2015, 06:59
||- - mantech   Цитата(Шаманъ @ Nov 2 2015, 09:59) Может ...   Nov 2 2015, 07:39
|||- - Шаманъ   Цитата(mantech @ Nov 2 2015, 09:39) Фриск...   Nov 2 2015, 10:03
|||- - mantech   Цитата(Шаманъ @ Nov 2 2015, 13:03) Рассма...   Nov 2 2015, 13:47
||- - SasaVitebsk   Цитата(Шаманъ @ Nov 2 2015, 09:59) Вы так...   Nov 3 2015, 05:51
||- - Шаманъ   Цитата(SasaVitebsk @ Nov 3 2015, 07:51) Н...   Nov 3 2015, 08:54
||- - SasaVitebsk   Цитата(Шаманъ @ Nov 3 2015, 11:54) Если в...   Nov 3 2015, 09:49
|- - Aner   QUOTE (Шаманъ @ Nov 1 2015, 15:09) Не, ко...   Nov 1 2015, 14:13
- - Rash   Цитата(Aner @ Nov 1 2015, 17:13) ...мы вы...   Nov 1 2015, 17:20
|- - Aner   QUOTE (Rash @ Nov 1 2015, 21:20) думаю эт...   Nov 1 2015, 22:11
- - SasaVitebsk   Цитата(mantech @ Oct 30 2015, 17:42) Опан...   Nov 2 2015, 06:40
- - Rash   Цитата(Aner @ Nov 2 2015, 01:11) Менталит...   Nov 2 2015, 19:31
- - Genadi Zawidowski   Вопрос - DMA2D работает ли с flash памятью?   Nov 3 2015, 09:14
- - Шаманъ   Цитата(Genadi Zawidowski @ Nov 3 2015, 11...   Nov 3 2015, 12:44
|- - Шаманъ   Цитата(Шаманъ @ Nov 3 2015, 15:44) Остало...   Feb 5 2017, 12:42
|- - Мусатов Константин   Цитата(Шаманъ @ Feb 5 2017, 15:42) Если б...   Feb 5 2017, 20:04
- - Aner   Что за панель? Какой интерфейс у неё? И есть ли ем...   Feb 5 2017, 13:27
- - Шаманъ   Цитата(Aner @ Feb 5 2017, 16:27) Что за п...   Feb 5 2017, 20:39
|- - Мусатов Константин   Цитата(Шаманъ @ Feb 5 2017, 23:39) В DMA2...   Feb 5 2017, 22:35
|- - Шаманъ   Цитата(Мусатов Константин @ Feb 6 2017, 01...   Feb 6 2017, 04:48
- - Шаманъ   Интересно, рисование через DMA2D занимает не намно...   Mar 1 2017, 13:39
|- - SasaVitebsk   Цитата(Шаманъ @ Apr 21 2017, 13:26) Могу ...   Apr 21 2017, 10:58
|- - Шаманъ   Цитата(SasaVitebsk @ Apr 21 2017, 13:58) ...   Apr 21 2017, 11:05
- - Hold   Да, сейчас уже думаю перейти на RGB565, т.е. надо ...   Apr 21 2017, 11:42
|- - Шаманъ   Цитата(Hold @ Apr 21 2017, 14:42) Но надо...   Apr 21 2017, 12:52
- - Hold   Завтра попробую rgb565, неиспользуемые биты через ...   Apr 21 2017, 14:53
|- - Шаманъ   Цитата(Hold @ Apr 21 2017, 17:53) Поведай...   Apr 21 2017, 15:20
- - Hold   Попробую на 29 Гц, покручу Vcom, подстроечник есть...   Apr 21 2017, 15:34
|- - Шаманъ   Цитата(Hold @ Apr 21 2017, 18:34) Попробу...   Apr 21 2017, 15:52
- - Hold   Рассчетное выходит 16.2 Мгц... тайминги почти таки...   Apr 21 2017, 16:09
- - Genadi Zawidowski   Когда-то, втискивая 272*480 во внутреннюю память S...   Apr 21 2017, 17:48
|- - Шаманъ   Цитата(Genadi Zawidowski @ Apr 21 2017, 20...   Apr 21 2017, 18:01
- - Hold   Вбил ваши параметры, Vcom выкрученный в минус пока...   Apr 22 2017, 04:53
|- - Шаманъ   Цитата(Hold @ Apr 22 2017, 07:53) Vcom вы...   Apr 22 2017, 06:16
- - Hold   Нашел где косяк с отрисовкой шрифтов в STemWin. Чт...   Apr 22 2017, 07:34
|- - jcxz   Вопросик может не в тему (лень читать даташит : D...   Apr 22 2017, 11:59
|- - Шаманъ   Цитата(jcxz @ Apr 22 2017, 14:59) DMA2D м...   Apr 22 2017, 12:19
|- - jcxz   Цитата(Шаманъ @ Apr 22 2017, 14:19) Источ...   Apr 22 2017, 12:24
|- - Шаманъ   Цитата(jcxz @ Apr 22 2017, 15:24) Понятно...   Apr 22 2017, 12:38
|- - jcxz   Цитата(Шаманъ @ Apr 22 2017, 14:38) Это ф...   Apr 23 2017, 10:10
- - SasaVitebsk   Там можно было бы многое, но нет отрицательного см...   Apr 22 2017, 17:25
|- - Шаманъ   Цитата(SasaVitebsk @ Apr 22 2017, 20:25) ...   Apr 22 2017, 18:05
|- - zombi   Цитата(Шаманъ @ Apr 22 2017, 21:05) Второ...   Apr 23 2017, 12:38
- - Rash   А кто-нибудь менял функции или добавлял функционал...   Apr 23 2017, 12:55
- - Шаманъ   Цитата(zombi @ Apr 23 2017, 15:38) А с че...   Apr 23 2017, 17:47


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

 


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


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