|
Помогите продумать архитектуру проекта на ARM7 |
|
|
|
Feb 7 2009, 05:14
|
Местный
  
Группа: Свой
Сообщений: 413
Регистрация: 15-12-06
Пользователь №: 23 563

|
Господа, подскажите в какую сторону двигаться, а то я как от Иван перед камнем- направо пойдешь... налево пойдешь...
Задача следующая - необходимо с ARM7 контроллера гнать данные на DM164 (драйвер полноцветных светодиодов) со скоростью 1,5 Мбайт/сек. Само устройство - долго объяснять его принцип работы, да и заказчик пожелал особо не распространяться о деталях, в общем, представьте себе что это видеоэкран из RGB светодиодов размерами 40х240 штук. Данные должны читаться с SD карты с FAT16.
Возможно два варианта: читается блок 57600 байт (28800 по 16 бит) и гоняется 30 раз в секунду, либо непрерывно читается поток данных состоящих из блоков того же размера, 30 раз в секунду. Для првого варианта соответственно есть два подварианта - каждый раз читать его с флешки, либо один раз загнать в память, после чего циклически передавать по SPI.
Я мало разбираюсь в видеосистемах, но подозреваю что без RAM не обойтись. По крайней мере видел как люди, пытавшиеся запустить экран от мобильного телефона организовывали буфера из памяти, в одни грузили, из другого выводили, что существенно повышало быстродействие.
Учитывая вышеизложенное возможно несколько вариантов:
1. Попроще - максимально адаптировать содержимое файла, чтобы гнать из него информацию сразу на драйвер. Т.Е. карта и драйвер сидят на одном SPI, контроллер обращается к карте, инициирует чтение данных, а перед собственно чтением включает CS на драйвере и данные идут минуя контроллер. Сам контроллер конечно следит за процессом, проверят периодически состояние кнопок и пр. Но чует мое сердце, что есть подвох в этой простоте и без RAM не обойтись. С использованием RAM тоже несколько вариантов.
2. Взять контроллер потолще - с 64 кб RAM. 57600 используем под данные, остальные 6кб на посторонние нужды - за глаза. Разбить ее на блоки по 240 байт, блок передали, записали с флешки новый, читаем следующий блок и т.д. Однако в этом случае придется в два раза повысить скорость чтения данных, т.е. 3 мБайт/сек, а максимальная частота драйвера DM164 всего 25 Мгц. Не получится.
3. Взять простой контроллер и использовать внешнюю RAM. Однако мне все равно не совсем понятно, даже если организовать две страницы видеопамяти, как с ними работать - если надо передавать допусти 100 байт в секунду, то ведь их одновременно надо читать, не понадобится ли удвоение скорости чтения и передачи?
4. Взять контроллер их серии SE - там вообще мед - встроенный интерфейс под внешнюю RAM под внешнюю FLASH, в описании сказано, что скорость обмена данными благодаря этому чуть ли не в 5 раз больше. Однако нужен ли такой навороченный камень?
В общем, кто что скажет, какие во всем этом есть подводные камни, проверенные способы, может обойтись первым вариантом? Только не предлагайте ПЛИС, мне и так ARM7 с нуля осваивать.
Спасибо.
|
|
|
|
|
 |
Ответов
|
Feb 9 2009, 06:05
|
Местный
  
Группа: Свой
Сообщений: 413
Регистрация: 15-12-06
Пользователь №: 23 563

|
Цитата Если взять ARM с 2-я SPI и грузить экран через оба SPI, то проблем с недостаточной скоростью загрузки можно избежать. Так ведь проблема не в скорости передачи данных из контроллера в экран, а в загрузке данных из флешки в контроллер или буфер. Собственно, грузить экран можно и дерганьем ног, а 2 SPI использовать для загрузки буферов. Вот только мне непонятна архитектура их буфера, 2х-SPI и одной sd карты. Был бы благодарен за объяснение на пальцах или в виде схемки. Цитата Вам бы подошел STM32F103xE. Там аж 3-и SPI по 18 МГц, т.е. 54 Mbit/s в сумме . Есть интерфейсы и к SD карте и к NAND и к PSRAM через efind.ru не нашел его цены. Работает ли он с SD картами в SD режиме? В принципе я готов поставить две или три NAND flash и грузить буфер из них, если это возможно. Как тогда организовать буфер? Я не имею опыта в создании таких схем. Цитата Может внешняя RAM и не понадобится, у STM32 неплохая шинная матрица и потоки из NAND и SPI как бы могут пересылаться напрямую по DMA минуя шину инструкций. Простите мне мою тупость, но я понял ситуацию так: проблема не со скоростью контроллера, а с непостоянной скоростью загрузки данных из карты. Стало быть, нужно грузить из карты в буфер SRAM, с максимальной скоростью, превышающей скорость отдачи данных из буфера. И если средняя скорость загрузки данных из карты будет выше, то все получится. Либо писать данные в две флешки и грузить из их одновременно в буфер. Нет.. я все-таки теряюсь в догадках, нужна структурная схемка того что вы предлагаете, ибо почти все что пишется можно понять двояко. Извините за назойливость.
|
|
|
|
|
Feb 9 2009, 08:51
|
Гуру
     
Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823

|
Цитата(Зверюга @ Feb 9 2009, 09:05)  ... Извините за назойливость. Ага, именно это качество Вы демонстрируете :-) Примите как данность - с SD картой работать реально со скоростью сотни килобайт в секунду. Сравнение файловых систем где-то было в инете, но я ссылку не сохранил. По моему, где-то тут на форуме в какой-то из тем было. Поставьте внешнюю RAM, SDRAM большого объема, организуйте буфер и забудьте проблему, по сравнению со стоимостью собственно ридеборда, стоимость контроллера стремится нулю. Да и всей электроники по сравнению с механикой
--------------------
Уходя, оставьте свет...
|
|
|
|
Сообщений в этой теме
Зверюга Помогите продумать архитектуру проекта на ARM7 Feb 7 2009, 05:14 WDT Можно еще использовать DMA канал.
Настраиваешь кан... Feb 7 2009, 09:36 Шурила Как будто препятствий не видно
Один процесс посл... Feb 7 2009, 12:28 Зверюга Я все таки не понял про одновременность.
По идее ч... Feb 7 2009, 13:06 AlexandrY Чета не увидел возможности прицепить DM164 к SPI. ... Feb 7 2009, 13:55  Шурила Цитата(AlexandrY @ Feb 7 2009, 15:55) Чет... Feb 7 2009, 18:42 Зверюга ЦитатаЧтобы брать непрерывно и без задержек из SD ... Feb 7 2009, 15:02 Зверюга Кстати, по поводу тех кто писал про низкую скорост... Feb 7 2009, 18:07 aaarrr Цитата(Зверюга @ Feb 7 2009, 21:07) напис... Feb 7 2009, 18:15 Зверюга ЦитатаБудет дикий тормоз.
Почему? Объясните не бе... Feb 7 2009, 18:36 aaarrr Цитата(Зверюга @ Feb 7 2009, 21:36) По по... Feb 7 2009, 18:43 Зверюга aaarrr
ЦитатаРаботать будут с чем скажете. По пово... Feb 7 2009, 19:08 AlexandrY Идея ваша просто очень дикая.
Сами SD карты и NAND... Feb 7 2009, 19:47 aaarrr Цитата(Зверюга @ Feb 7 2009, 22:08) Можно... Feb 7 2009, 21:13 Зверюга Каким же тогда образом без фликеров осуществляется... Feb 7 2009, 20:26 Зверюга ЦитатаНа самом деле Вам нужен не очень скоростной ... Feb 8 2009, 06:17 Зверюга Вот бенчмарк http://elm-chan.org/fsw/ff/img/rwtest... Feb 8 2009, 08:01 sensor_ua Цитатас SD карты чуть ли не 7 Мбайт/сек читается. ... Feb 8 2009, 08:06 Зверюга ЦитатаВам же внятно сказали
Нет, мне сказали невн... Feb 8 2009, 12:08 AlexandrY Хм, работа по исследованию характеристик скорости ... Feb 8 2009, 20:16 Зверюга Гуглил про организацию буфера - мало чего полезног... Feb 10 2009, 08:31 Зверюга Гуглил про организацию буфера - мало чего полезног... Feb 10 2009, 08:31 WDT Слушай , Зверюга! Один мой товарищ делал некий... Feb 10 2009, 08:48 wangan ой чувствую заказчик не получит результат как мини... Feb 10 2009, 08:52 Зверюга WDT - ну я же расписал выше. Примерно то же самое,... Feb 10 2009, 09:01 WDT Цитата(Зверюга @ Feb 10 2009, 12:01) WDT ... Feb 10 2009, 09:22  wangan Цитата(WDT @ Feb 10 2009, 13:22) Тут мне ... Feb 10 2009, 10:43 Зверюга Скорость высокая? Так гр-н Шурила выше все расписа... Feb 10 2009, 10:23 Зверюга wangan, тепло))) Feb 10 2009, 11:14 wangan Ну тогда курсовик валют, но думаю через полгода ну... Feb 10 2009, 11:31 sensor_ua ЦитатаУже 50 минут 5 человек смотрят тему и все мо... Feb 10 2009, 11:32 Зверюга sensor_ua, почему недосуг, яж писал, что я уже пон... Feb 10 2009, 11:47 aaarrr Цитата(Зверюга @ Feb 10 2009, 11:31) Да и... Feb 10 2009, 11:49 Зверюга ЦитатаОрганизуем здоровый буфер для чтения SD, пиш... Feb 10 2009, 11:53 aaarrr Цитата(Зверюга @ Feb 10 2009, 14:53) Или ... Feb 10 2009, 11:58 MikePic Цитатаявно больше, чем 6 Мбит.
Только в спеке указ... Feb 10 2009, 11:55 Зверюга ЦитатаНеSDHC обычная карта microSD Toshiba 2GB, ко... Feb 10 2009, 12:21 aaarrr Цитата(Зверюга @ Feb 10 2009, 15:21) Плюс... Feb 10 2009, 12:26  Dog Pawlowa Цитата(aaarrr @ Feb 10 2009, 16:26) SDRAM... Feb 10 2009, 13:47   aaarrr Цитата(Dog Pawlowa @ Feb 10 2009, 16:47) ... Feb 10 2009, 14:04 Зверюга ЦитатаТолько я нить потерял, автор пишет про многи... Feb 10 2009, 14:37 aaarrr Цитата(Зверюга @ Feb 10 2009, 17:37) В лю... Feb 10 2009, 14:42 Зверюга ЦитатаА в еще боьлшее число не встроен. Впрочем, э... Feb 10 2009, 14:44 aaarrr Цитата(Зверюга @ Feb 10 2009, 17:44) SPI ... Feb 10 2009, 14:54 Зверюга Цитатавозьмите контроллер с железным SD.
- возьмит... Feb 10 2009, 14:58 aaarrr Цитата(Зверюга @ Feb 10 2009, 17:58) Все ... Feb 10 2009, 15:07 Dog Pawlowa Цитата(Зверюга @ Feb 10 2009, 18:58) А ес... Feb 10 2009, 15:19 WDT Чего-то не нашел даташит на этот драйвер DM164... Feb 10 2009, 18:28 Зверюга Цитата(WDT @ Feb 10 2009, 21:28) Чего-то ... Feb 10 2009, 19:45  aaarrr Цитата(Зверюга @ Feb 10 2009, 22:45) 8 би... Feb 10 2009, 21:07   WDT Цитата(aaarrr @ Feb 11 2009, 00:07) 8 бит... Feb 11 2009, 05:48    Dog Pawlowa Цитата(WDT @ Feb 11 2009, 09:48) Это ж ск... Feb 11 2009, 06:49     WDT Цитата(Dog Pawlowa @ Feb 11 2009, 09:49) ... Feb 11 2009, 07:15      Dog Pawlowa Цитата(WDT @ Feb 11 2009, 11:15) Может у ... Feb 11 2009, 07:52       WDT Цитата(Dog Pawlowa @ Feb 11 2009, 10:52) ... Feb 11 2009, 08:24        Dog Pawlowa Цитата(WDT @ Feb 11 2009, 11:24) Может в ... Feb 11 2009, 08:38         WDT Цитата(Dog Pawlowa @ Feb 11 2009, 11:38) ... Feb 11 2009, 09:03    aaarrr Цитата(WDT @ Feb 11 2009, 08:48) А насчет... Feb 11 2009, 11:32     WDT Цитата(aaarrr @ Feb 11 2009, 14:32) Непло... Feb 11 2009, 13:19 aaarrr DM164 Feb 10 2009, 18:32 WDT Я тут о чем подумал, Зверюга... У меня посветка на... Feb 10 2009, 18:47 rezident Цитата(WDT @ Feb 10 2009, 23:47) Так вот ... Feb 11 2009, 01:55 Rst7 Господа, а может стоит подумать об упаковке кадров... Feb 10 2009, 23:19 aaarrr Цитата(Rst7 @ Feb 11 2009, 02:19) Господа... Feb 11 2009, 01:01 Зверюга Качественного видео не надо. В лучшем случае карти... Feb 11 2009, 03:57 Зверюга Скажите, а разве нельзя сделать реализацию SD прог... Feb 12 2009, 09:24 WDT Цитата(Зверюга @ Feb 12 2009, 12:24) Скаж... Feb 12 2009, 09:50 KAlex Цитата(Зверюга @ Feb 12 2009, 12:24) Скаж... Feb 12 2009, 10:42  WDT Цитата(KAlex @ Feb 12 2009, 13:42) Для чт... Feb 13 2009, 05:35   aaarrr Цитата(WDT @ Feb 13 2009, 08:35) Может я ... Feb 13 2009, 11:21   KAlex Цитата(WDT @ Feb 13 2009, 08:35) Я наверн... Feb 13 2009, 11:22 aaarrr Цитата(Зверюга @ Feb 12 2009, 12:24) Скаж... Feb 12 2009, 11:11
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|