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

 
 
> Помогите продумать архитектуру проекта на ARM7
Зверюга
сообщение Feb 7 2009, 05:14
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 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 с нуля осваивать.


Спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
WDT
сообщение Feb 10 2009, 18:28
Сообщение #2


Участник
*

Группа: Новичок
Сообщений: 31
Регистрация: 30-01-09
Пользователь №: 44 166



Чего-то не нашел даташит на этот драйвер DM164...
Go to the top of the page
 
+Quote Post
Зверюга
сообщение Feb 10 2009, 19:45
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 413
Регистрация: 15-12-06
Пользователь №: 23 563



Цитата(WDT @ Feb 10 2009, 21:28) *
Чего-то не нашел даташит на этот драйвер DM164...


вот http://www.e-neon.ru/catalog/id/3291275#3291275

WDT

Да я давно думал, как бы перевести драйвер в 8-битный режим. Да вот беда не переводится. МОжно конечно писать 8-ми битный файл, а "левые" биты сочинять на ходу - но на сколько при этом увеличится процессорное время... Впрочем это надо обдумать. 8 бит - 16 000 000 цветов - за глаза, плюс, при таком маленьком разрешении эти полутона просто не будут востребованы. Я понимаю, если на 1600 точек растянуть от 000000 до 0000FF, а на 240...

В тоже время выигрыш всего в два раза. То есть если не изобретать, даже с 8 битами не успеем. А если изобретем, то и 16 потянем.

WDT

Да я давно думал, как бы перевести драйвер в 8-битный режим. Да вот беда не переводится. МОжно конечно писать 8-ми битный файл, а "левые" биты сочинять на ходу - но на сколько при этом увеличится процессорное время... Впрочем это надо обдумать. 8 бит - 16 000 000 цветов - за глаза, плюс, при таком маленьком разрешении эти полутона просто не будут востребованы. Я понимаю, если на 1600 точек растянуть от 000000 до 0000FF, а на 240...

В тоже время выигрыш всего в два раза. То есть если не изобретать, даже с 8 битами не успеем. А если изобретем, то и 16 потянем.

Хм.... я тут прикинул - а ведь ничего переводить не надо - просто в драйвер посылать первые 8 бит, остальные 8 тактов пусть драйвер думает, что ему шлют информацию, а информация будет - нули. ПРи этом цвет будет тот же, правда урезаный до 8 бит. То есть 50% времени мы занимаемся благими делами.

Итак, ТЗ снова меняется. Надо всего 650 кбайт/сек.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 10 2009, 21:07
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Зверюга @ Feb 10 2009, 22:45) *
8 бит - 16 000 000 цветов - за глаза

8 бит - это очень мало, особенно для видео (не знаю, что у Вас).
Для получения более-менее качественной картинки нужно вводить гамма-коррекцию и использовать минимум 10 бит ШИМ.
Go to the top of the page
 
+Quote Post
WDT
сообщение Feb 11 2009, 05:48
Сообщение #5


Участник
*

Группа: Новичок
Сообщений: 31
Регистрация: 30-01-09
Пользователь №: 44 166



Цитата(aaarrr @ Feb 11 2009, 00:07) *
8 бит - это очень мало, особенно для видео (не знаю, что у Вас).
Для получения более-менее качественной картинки нужно вводить гамма-коррекцию и использовать минимум 10 бит ШИМ.

Да какое видео на такой разрешаловке... А насчет восьми бит -- на светодиодах больше и не получишь. Вот взяли допустим 10 бит шим -- 1024 единицы. Изменение яркости на 10 единиц вряд ли отличишь. Так зачем такой ШИМ? Я ж писал выше--характеристика яркости светодиодов нехорошая и по цветам отличается сильно(я так понял это о гамма коррекции?).

Есть небольшой примерчик. Насчет градаций. У меня есть индикатор OLED 256x64 16 GrayScale. У него на пиксел идет 4 бита. Преобразуешь bmp в LCD Icon Color и выводишь. Совсем неплохо смотрится с 16-ю градациями.

Посмотрел драйвер 164. Это ж сколько надо таких драйверов, офигеть просто... Нафиг такая штука нужна. Надо другой драйвер искать. Например драйвер индикатора какого-то.

Цитата(rezident @ Feb 11 2009, 04:55) *
Это видимый эффект. Интенсивность свечения СИД прямо пропорциональна среднему току, протекающему через него. А вот у человеческого глаза логарифмическая чувствительность к яркости объекта, что следует учитывать при регулировке.

Вы все правильно сказали. Только еще есть вольтамперная характеристика и она не линейная. То есть при изменении напряжения ток меняется НЕЛИНЕЙНО... Поэтому и яркость будет нелинейная. Поправьте , если я ошибаюсь... + к этому еще и восприятие глаза, в том числе и к разным спектрам излучения.
Дело в том , что это все уже давно проверено. Я частенько использую RGB подсветку и добиться на этой подсветке нормальных цветов надо попотеть. Я тоже поначалу начал делать кучу цветов, а потом скатился на 32 всего.

Сообщение отредактировал WDT - Feb 11 2009, 05:53
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Feb 11 2009, 06:49
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(WDT @ Feb 11 2009, 09:48) *
Это ж сколько надо таких драйверов, офигеть просто... Нафиг такая штука нужна.
Пример не совсем тот, драйвера не те, но нафиг говорить "нафиг" cranky.gif
Прикрепленное изображение


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
WDT
сообщение Feb 11 2009, 07:15
Сообщение #7


Участник
*

Группа: Новичок
Сообщений: 31
Регистрация: 30-01-09
Пользователь №: 44 166



Цитата(Dog Pawlowa @ Feb 11 2009, 09:49) *
Пример не совсем тот, драйвера не те, но нафиг говорить "нафиг" cranky.gif
Прикрепленное изображение


Пример не совсем тот? Насколько соответствует конструкция на фото "техзаданию" Зверюги?
Может у Вас там матрица из одноцветных диодов с общей регулировкой яркости? Так ведь это на 51-м делается спокойно.

Хотя если сканировать матрицу, то получится следующее. На 8 горизонтальных линий один драйвер. То есть получается 5 драйверов на 40линий.
На каждом выходе драйверов тогда надо еще приделать что-то мощное, поскольку выход 90мА всего. Вертикальных линий 240 -- 48 шт. сдвиговых регистров с транзистором на выходе(это навскидку) . Во получается конструкция... А тут еще неясная "ситуевина" со скоростью вывода.
Возможно и другое решение есть.
Да еще и проблемы с питанием будут -- блок питания довольно мощный надо.

Сообщение отредактировал WDT - Feb 11 2009, 07:17
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Feb 11 2009, 07:52
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(WDT @ Feb 11 2009, 11:15) *
Может у Вас там матрица из одноцветных диодов с общей регулировкой яркости? Так ведь это на 51-м делается спокойно.

Ага, еще можно тумблером. Включил-выключил.
Тут о видео что-то говорили, не так ли? Скорость смены картинок, объем информации, проч...
Да, это одноцветное табло, и контроллер у него на 51. С маааленькой такой FPGA biggrin.gif
Табло не мое, естественно.
Прикрепленное изображение


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
WDT
сообщение Feb 11 2009, 08:24
Сообщение #9


Участник
*

Группа: Новичок
Сообщений: 31
Регистрация: 30-01-09
Пользователь №: 44 166



Цитата(Dog Pawlowa @ Feb 11 2009, 10:52) *
Ага, еще можно тумблером. Включил-выключил.
Тут о видео что-то говорили, не так ли? Скорость смены картинок, объем информации, проч...
Да, это одноцветное табло, и контроллер у него на 51. С маааленькой такой FPGA biggrin.gif
Табло не мое, естественно.

Так вот эта одноцветность и влияет... А насчет FPGA -- так это ж дело вкуса :-)))
Какая скорость смены картинки у Вашего табло? Какой размер? Может в Вашей панели аппаратный контроллер с кучей памяти. Данных-то нет...
У нас в электронном магазине висит бегущая строка -- на меге с 595-ми регистрами. Тож хорошо крутит.:-)))
Возьмите панел Зверюги(уж больно нравится мне имя)))). Если нет цветов. 240х40. С одной стороны ШИМ. При вертикальном сканировании 240 раз за 1/30 сек (один кадр). У нас же 30 кадров в сек?
Время потратишь примерно 138 мкс. Может еще на чего немного уйдет, но вполне достаточно для нешибко быстрого проца.
А у Вас еще и панель небось поменьше?

Сообщение отредактировал WDT - Feb 11 2009, 08:25
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Зверюга   Помогите продумать архитектуру проекта на 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
- - Зверюга   ЦитатаЕсли взять ARM с 2-я SPI и грузить экран чер...   Feb 9 2009, 06:05
|- - Dog Pawlowa   Цитата(Зверюга @ Feb 9 2009, 09:05) ... И...   Feb 9 2009, 08:51
- - Зверюга   Гуглил про организацию буфера - мало чего полезног...   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
||- - 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


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

 


RSS Текстовая версия Сейчас: 28th July 2025 - 12:36
Рейтинг@Mail.ru


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