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

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Выбор процессора
AlexMik1
сообщение Jun 30 2012, 08:33
Сообщение #1





Группа: Участник
Сообщений: 13
Регистрация: 30-06-12
Пользователь №: 72 569



Кратко раскажу задачу. Есть библиотека С++ для Win, Linux, ...
Библиотека распознает некую информацию (номера авто) с изображения, т.е. в каждом кадре видео потока ищет номер авто. Сама библиотека платформенно независимая.
Сейчас хочется перенести ее на малое железо, и сделать какой-то kit.
На вход библиотеки надо подать картинку в серых тонах (1 пиксел - 1 байт) строка за строкой. Только что собрал ".a" файл в IAR под Cortex-M3. Сделал output файл, получилось ~300 Kb, т.е. с запасом нужно 500Kb (а может и больше) под саму программу.
Еще нужно много ОЗУ
- для хранения изображения, зависит от разрешения, если 640x480, то ~300 Кб
- стек, не знаю сколько, но вроде бы немного
- куча, иногда прилично, думаю до 32Кб, точно не знаю сколько, в коде активно используется опреатор new в самописном классе вектора и т.п.

Желательно проц. с частотой от 400 Мгц, чем выше тем лучше, тестировал либу на телефоне (андроид) с 640 МГц, 320х240 кадр, в принципе шустро, но при больших кадрах время обработки может сильно возрастать.
Нужно, чтобы прогу нельзя было прочитать с чипа. Нужна какая-то связь с внешним миром, еще не знаю что точно, может RS232, Ethernet и т.д.

Я так понимаю, что ни один МК не подходит под эти задачи, я не нашел МК с ОЗУ более 192 Кб и с частотой CPU плоховато.
Может брать что-то более взрослое на ARM8, ARM9 c отдельным ОЗУ флэшем и Линуксом. Тогда возникает вопрос защиты.
Хочется конечно все уместить в один чип, но наверное не получится?

Короче пока полная каша в голове, т.к. с железом давно не работал. Набросайте идей.

Да забыл, нужно подключение к МК видео камеры. Видел что в некоторых МК есть какие то входы CamD0...CamD12 для параллельного интерфейса с камерой. Как можно будет рулить такой камерой? Т.е. запоминать кадр, делать фокусровку. Наверное должны быть какие-то либы для этого?

Сообщение отредактировал AlexMik1 - Jun 30 2012, 08:25
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Jun 30 2012, 09:04
Сообщение #2


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Эксперементировал со сборкой компилятора от klen, применение опции "-Os -flto" иногда даёт усыхание кода на 30 процентов. Попробуйте, пока проект ещё платформенно независим. Возможно, увеличится скорость обработки.

http://electronix.ru/forum/index.php?showt...t&p=1053832
Go to the top of the page
 
+Quote Post
KnightIgor
сообщение Jun 30 2012, 09:28
Сообщение #3


Знающий
****

Группа: Участник
Сообщений: 643
Регистрация: 29-05-09
Из: Германия
Пользователь №: 49 725



Цитата(AlexMik1 @ Jun 30 2012, 10:33) *
Кратко раскажу задачу. Есть библиотека С++ для Win, Linux, ...
Библиотека распознает некую информацию (номера авто) с изображения, т.е. в каждом кадре видео потока ищет номер авто. Сама библиотека платформенно независимая.
Сейчас хочется перенести ее на малое железо, и сделать какой-то kit.

Как по моему ощущению, типичное приложение для смартфона: нынешние имеют гигагерцовые (+многоядерные) процессоры и дофига памяти, не говоря уже о камерах и пр. Все под Android, то есть Linux.

P.S. Идея: сделать backdoor нераспознаваемости номера собственной машины, а за определенную сумму - и тех, кто запошляет cool.gif .

P.P.S. Я понимаю, что зарабатывать надо, и если не ты, то кто-то другой возмется, но вся эта тема "big brother is watching you" настолько противна, что я из политических соображений не взялся бы... Мое личное мнение.

Сообщение отредактировал KnightIgor - Jun 30 2012, 09:29
Go to the top of the page
 
+Quote Post
AlexMik1
сообщение Jun 30 2012, 13:28
Сообщение #4





Группа: Участник
Сообщений: 13
Регистрация: 30-06-12
Пользователь №: 72 569



Цитата(KnightIgor @ Jun 30 2012, 12:28) *
Как по моему ощущению, типичное приложение для смартфона: нынешние имеют гигагерцовые (+многоядерные) процессоры и дофига памяти, не говоря уже о камерах и пр. Все под Android, то есть Linux.

Да телефон, как-то sm.gif дорого да и камеры там не всегда подходящие и с интерфейсами может быть проблема

Цитата(KnightIgor @ Jun 30 2012, 12:28) *
P.S. Идея: сделать backdoor нераспознаваемости номера собственной машины, а за определенную сумму - и тех, кто запошляет cool.gif .
P.P.S. Я понимаю, что зарабатывать надо, и если не ты, то кто-то другой возмется, но вся эта тема "big brother is watching you" настолько противна, что я из политических соображений не взялся бы... Мое личное мнение.

sm.gif это не для ГАИ sm.gif (хотя почему нет, но к ним не подкатишь, там на откатах сидят, да и не люблю эту всю государственно закупочную грязь) тут совсем другие применения, для предприятий, возможно для пром. линий, для автоматических шлагбаумов ... либа позволяет распознавать не только номера авто sm.gif
так что тут никаких "политических соображений" sm.gif
Go to the top of the page
 
+Quote Post
AVR
сообщение Jun 30 2012, 18:38
Сообщение #5


фанат Linux'а
*****

Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008



Цитата(AlexMik1 @ Jun 30 2012, 12:33) *
Кратко раскажу задачу. Есть библиотека С++ для Win, Linux, ...
Короче пока полная каша в голове, т.к. с железом давно не работал. Набросайте идей.

думаю не будет рекламой если я предложу для начала проект платы с ARM с открытым исходным кодом - BeagleBoard, это для того чтобы быстро и просто освоиться с системой, стоит недорого относительно

в дальнейшем разумеется можно выбрать Cortex-A8 любого другого производителя, будь то FreeScale iMX, Samsung и прочих, даже Atmel насколько я знаю собирается разродиться Cortex-A8, не знаю как сейчас

еще есть недорогая платка отечественной разработки, рассылается по России SK-iMX53 - тоже Cortex-A8, но эти кажется в отпуске еще недели две будут sm.gif

а что касается вопросов защиты - для таких процов как Ti OMAP3/4 применяется технология PoP, так что думаю будет довольно сложно считать логическим анализатором, если только не совсем злые хакеры попадутся sm.gifsm.gifsm.gif... далее, а флэшку можно зашифровать и распаковывать ее содержимое своим самодельным загрузчиком

разумеется загрузчик-прошивочка лочится от чтения во всех наверное процах что я слышал

P.S.
материалы по Linux - у меня в подписи - бесплатные слайды под свободной лицензией, я по ним учился


--------------------
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 30 2012, 20:32
Сообщение #6


Гуру
******

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



Цитата(AVR @ Jun 30 2012, 22:38) *
разумеется загрузчик-прошивочка лочится от чтения во всех наверное процах что я слышал

Если уж прямо-таки во всех, то один пример можно озвучить для процессора класса Cortex-A8?
Обычно такие функции как минимум не доступны для простых смертных.
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Jun 30 2012, 20:42
Сообщение #7


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(aaarrr @ Jun 30 2012, 23:32) *
Если уж прямо-таки во всех, то один пример можно озвучить для процессора класса Cortex-A8?
Обычно такие функции как минимум не доступны для простых смертных.


Эт точно, в инженерных образцах ничего не лочится.
А неинженерные образцы дают только надежным и проверенным союзникам USA.

А вот PoP технология ничего не защищает, для доморощенных хакеров вполне доступны прижимные переходники на DDRAM с отводами для анализаторов.
Go to the top of the page
 
+Quote Post
AlexMik1
сообщение Jul 1 2012, 07:39
Сообщение #8





Группа: Участник
Сообщений: 13
Регистрация: 30-06-12
Пользователь №: 72 569



т.е. если я правильно понял, то у проца есть небольшая область флэш памяти, в которой сидит загрузчик, который запускается сразу после старта и считывает программу из флэша в ОЗУ?
затем исполняет прогу из ОЗУ
Этот загрузчик лочится самим производителем процев
злые хакеры вешают на ОЗУ какого-то паука и дампят саму прогу?
Т.е. при размещении проги в отдельной флэш памяти получить нормальную защиту кода невозможно?
А как дела обстоят если флэш встроена в микроконтроллер? Надцать лет назад работал с МК philips, типа 8051 там с защитой было все просто.

Так никто и не сказал есть ли МК, которые могут подойти под мои задачи?
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jul 1 2012, 08:05
Сообщение #9


Гуру
******

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



Цитата(AlexMik1 @ Jul 1 2012, 11:39) *
Т.е. при размещении проги в отдельной флэш памяти получить нормальную защиту кода невозможно?

Можно, если код зашифрован и не копируется во внешнее ОЗУ. Но при этом поддержка шифрования должна быть у первичного загрузчика, а её обычно или нет совсем, или же она сильно засекречена.

Вообще, стоит ли так переживать из-за защиты? Максимум, что Вы можете сделать - усложнить путь клонирования изделия, но пресечь его совершенно все равно не получится.

Цитата(AlexMik1 @ Jul 1 2012, 11:39) *
А как дела обстоят если флэш встроена в микроконтроллер? Надцать лет назад работал с МК philips, типа 8051 там с защитой было все просто.

В этом случае все более-менее в порядке. Правда, серьезных процессоров со встроенной флеш нет. В голову приходит разве что SAM9XE, но они по нынешним временам слабоваты - 200MHz ARM926.
Go to the top of the page
 
+Quote Post
AlexMik1
сообщение Jul 1 2012, 08:24
Сообщение #10





Группа: Участник
Сообщений: 13
Регистрация: 30-06-12
Пользователь №: 72 569



Цитата(aaarrr @ Jul 1 2012, 11:05) *
Можно, если код зашифрован и не копируется во внешнее ОЗУ. Но при этом поддержка шифрования должна быть у первичного загрузчика, а её обычно или нет совсем, или же она сильно засекречена.

ну т.е. реально невозможно

Цитата(aaarrr @ Jul 1 2012, 11:05) *
Вообще, стоит ли так переживать из-за защиты? Максимум, что Вы можете сделать - усложнить путь клонирования изделия, но пресечь его совершенно все равно не получится.

приходится, это многолетний труд, не хочется вот так просто отдавать его китайцам

Цитата(aaarrr @ Jul 1 2012, 11:05) *
В этом случае все более-менее в порядке. Правда, серьезных процессоров со встроенной флеш нет. В голову приходит разве что SAM9XE, но они по нынешним временам слабоваты - 200MHz ARM926.

понял, печально, т.е. пока МК точно не подходит
т.е. сейчас выбор только один - делать все под linux?
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jul 1 2012, 08:58
Сообщение #11


Гуру
******

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



Цитата(AlexMik1 @ Jul 1 2012, 12:24) *
понял, печально, т.е. пока МК точно не подходит
т.е. сейчас выбор только один - делать все под linux?

Под понятие МК сейчас попадают и Cortex-M0, и Cortex-A8. Последние очень даже подходят.
Посмотрите еще в сторону DSP (TI 6000, ADI Blackfin) - возможно, под вашу задачу они подойдут лучше.

Чтобы просто подключить камеру и обеспечить связь с внешним миром через RS-232 или Ethernet, иметь Linux на борту совсем не обязательно, хотя жизнь это упростит на начальном этапе.
Go to the top of the page
 
+Quote Post
AVR
сообщение Jul 1 2012, 10:52
Сообщение #12


фанат Linux'а
*****

Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008



Цитата(aaarrr @ Jul 1 2012, 00:32) *
Если уж прямо-таки во всех, то один пример можно озвучить для процессора класса Cortex-A8?
Обычно такие функции как минимум не доступны для простых смертных.

Скажу честно... я в глубоком шоке. Признаю свою ошибку, заблуждался.

Залез сейчас посмотреть мануал на OMAP4430 (его использую в виде PandaBoard), и на SAM9G45 и с величайшим удивлением обнаружил полное отсутствие какого-либо упоминания как залочить встроенную флэш! Вероятно она есть в обоих процах, ведь оба умеют грузиться с SD-флэшки и понимают разделы и ФС FAT32 (по крайней мере на том железе что есть у меня так, как PandaBoard так и SAM9G45), по всей видимости есть некая прошивка во встроенной флэшке. И ее кажется модифицировать низзя - или можно?

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

Присоединяюсь к поиску решения по защите прошивки на OMAP4 и AT91SAM9, хотя если не получится защитить то я не буду сильно переживать.

Цитата
А как дела обстоят если флэш встроена в микроконтроллер? Надцать лет назад работал с МК philips, типа 8051 там с защитой было все просто.
Вот я тоже по опыту работы с 8-битниками и некоторыми простыми 32-битниками, всегда помнил что залочить чтение прошивки там легко и просто. Думал в старших процах это и подавно есть, а оказалось строго наоборот. А ведь можно было бы выделить часть встроенной флэши для небольшого пользовательского загрузчика, наряду с штатной загрузкой с USB/SD/FAT32...


--------------------
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jul 1 2012, 11:55
Сообщение #13


Гуру
******

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



Цитата(AVR @ Jul 1 2012, 14:52) *
И ее кажется модифицировать низзя - или можно?

Обычно там масочная ROM, бывают блоки OTP. В общем случае никакого пользовательского кода не предполагается,
если только пользователь не является лепшим корешем производителя.

Цитата(AVR @ Jul 1 2012, 14:52) *
Думал в старших процах это и подавно есть, а оказалось строго наоборот.

Когда память висит снаружи, защититься значительно труднее. Да и какой смысл защищать, например, планшетник на Андроиде?
Go to the top of the page
 
+Quote Post
AVR
сообщение Jul 1 2012, 19:18
Сообщение #14


фанат Linux'а
*****

Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008



Цитата(aaarrr @ Jul 1 2012, 15:55) *
Когда память висит снаружи, защититься значительно труднее. Да и какой смысл защищать, например, планшетник на Андроиде?
Всегда считал что для процессоров, где память висит голенькая ничем незащищенная, меры защиты должны быть еще строже, чем в тех же 8-битниках где при программировании можно выставить защиту от чтения - зачем разработчику считывать обратно прошивку если он её и сделал сам.

Такие классические вещи типа Android это понятно что защищать не имеет смысла и даже нежелательно sm.gif


--------------------
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Jul 2 2012, 08:26
Сообщение #15


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(AVR @ Jul 1 2012, 22:18) *
Такие классические вещи типа Android это понятно что защищать не имеет смысла и даже нежелательно sm.gif


Не понял почему не имеет смысла?
Т.е. вы хотите сказать что на Андроиде в принципе нельзя сделать ничего что стоило бы защищать от копирования?

Цитата(AlexMik1 @ Jun 30 2012, 11:33) *
Короче пока полная каша в голове, т.к. с железом давно не работал. Набросайте идей.

Да забыл, нужно подключение к МК видео камеры. Видел что в некоторых МК есть какие то входы CamD0...CamD12 для параллельного интерфейса с камерой. Как можно будет рулить такой камерой? Т.е. запоминать кадр, делать фокусровку. Наверное должны быть какие-то либы для этого?


Кажется ваши потребности услышаны.
Подписываетесь на сэмплы и начинайте рисовать железо biggrin.gif
Дримчип - Vibrid
Go to the top of the page
 
+Quote Post

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

 


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


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