|
STM32 SDRAM, NOR Flash |
|
|
|
Jul 19 2015, 11:44
|

Местный
  
Группа: Участник
Сообщений: 492
Регистрация: 12-11-11
Пользователь №: 68 264

|
Добрый день! Наверняка многие из тех, кто "щупал" STM32F429, знают, что в этом контроллере STMicroelectronics допустила серьезную ошибку в аппаратной части модуля FMC - невозможно одновременно получить доступ к статической и динамической памяти без предварительного переключения последней в режим автоматической регенерации. Для программ, у которых четко однозначно распределено выделение и обращение к памяти во времени эта проблема не является существенной. Однако, в большинстве других приложений эта проблема - по сути катастрофа. Я разрабатываю графическое встраиваемое приложение, на плате установлена статическая NOR Flash память и SDRAM. Поскольку графических примитивов у меня довольно много, я разместил их в NOR Flash. SDRAM же у меня выполняет функцию графического буфера. Стандартная схема работы этого приложения - контроллер TFT-матрицы (LTDC) "прозрачно" (т. е. в неизвестно какой момент времени) для процессора через выделенный DMA (опять же, не видимый для программиста) отправляет пиксели на экран. Графический ускоритель DMA2D в это время копирует примитивные изображения в ту же SDRAM (в ту же экранную область). Получается несколько потоков претендуют на одну периферию, и тут контроллер FMC устанавливает арбитраж между DMA LTDC и DMA2D. Работает это, когда графические примитивы расположены во внутренней памяти микроконтроллера. Но стоит "натравить" DMA2D на источник NOR Flash, как все попадает в позицию Errata (нельзя достучаться до статической и динамической памяти одновременно), ведь по сути контроллер FMC должен "разрулить" следующие передачи: 1) SDRAM (экранный буфер) -> экран; 2) NOR Flash -> SDRAM (копирование графических примитивов). И как видно, как раз на втором пункте и будет "затык". При обращении к NOR Flash SDRAM не перейдет в режим автоматической регенерации, данные в ней станут некорректными. Казалось бы, можно "руками" передать команду автоматической регенерации SDRAM, прежде чем обращаться к NOR Flash, и выхода из нее, чтобы вновь обращаться к SDRAM, но ведь первый пункт (запросы DMA LTDC) работает асинхронно. Если ее и контролировать, на экране будут жуткие мерцания частей изображений (как раз "затыки" между обращениями к SDRAM и NOR Flash). Производитель исправил ошибку в 3 ревизии микроконтроллера. Но, пройдя по большинству интернет-магазинов электронных компонентов, никакой информации о ревизии нет (ну, наверное, в этом есть логика). В микроконтроллере STM32F446 эта проблема уже полностью исчезла, но тут другая проблема - этот микроконтроллер максимум в 100-выводном корпусе. А микроконтроллеров STM32F7-серии и подавно еще пока что нет в продаже.
Кто сталкивался, как решали проблему?
Сообщение отредактировал Arlleex - Jul 19 2015, 11:46
|
|
|
|
|
 |
Сообщений в этой теме
Arlleex STM32 SDRAM, NOR Flash Jul 19 2015, 11:44 scifi Если я правильно понимаю, SDRAM легко может быть в... Jul 19 2015, 11:52 Arlleex По сути, как я понял, ты предлагаешь выделить небо... Jul 19 2015, 11:57 scifi Цитата(Arlleex @ Jul 19 2015, 14:57) По с... Jul 19 2015, 13:47 Genadi Zawidowski ЦитатаВ микроконтроллере STM32F446 эта проблема уж... Jul 19 2015, 12:29 Rash Сделайте запрос в инет магазины, что бы сообщили р... Jul 19 2015, 12:42 Arlleex Насчет STM32F446 - пардон, написал по памяти, но м... Jul 19 2015, 12:51 Rash просто активно юзаю emWin, виджетов и диалогов мно... Jul 19 2015, 13:24 mantech Цитата(Arlleex @ Jul 19 2015, 14:44) Поск... Jul 19 2015, 15:07 Arlleex А вы как примитивы отрисовывали?
Просто у меня та ... Jul 19 2015, 15:15 mantech Цитата(Arlleex @ Jul 19 2015, 18:15) А вы... Jul 19 2015, 17:12  DVF Цитата(mantech @ Jul 19 2015, 20:12) О ка... Jul 19 2015, 18:37 Arlleex mantech, ну, по мне так, как-то бледновато выходит... Jul 19 2015, 17:30 Arlleex Линиями, думаю, такого эффекта не добиться.
Не наж... Jul 19 2015, 18:58 scifi Цитата(Arlleex @ Jul 19 2015, 21:58) Лини... Jul 19 2015, 19:09  DVF Цитата(scifi @ Jul 19 2015, 22:09) Сейчас... Jul 19 2015, 20:30 mantech Цитата(Arlleex @ Jul 19 2015, 21:58) Все-... Jul 20 2015, 06:18 Rash не критикую, но 49k на кнопку очень круто по ресур... Jul 19 2015, 19:23 scifi Цитата(Rash @ Jul 19 2015, 22:23) не крит... Jul 19 2015, 19:57 Rash Цитата(scifi @ Jul 19 2015, 22:57) Я вас ... Jul 20 2015, 05:40
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|