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

 
 
> XMega будет честно работать на 32MHz?, Вынесено из "Защита секции кода.."
galjoen
сообщение Feb 15 2008, 11:20
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(defunct @ Feb 14 2008, 18:18) *
Это вариант. Только я считаю, что это лишнее..

В принципе могу с вами и согласится. Т.к. сам всегда CRC32 FLASH в основном цикле считаю (по слову за раз - см. мои предыдущие посты). Но ни разу не сработало.
Цитата(defunct @ Feb 14 2008, 18:18) *
Ну просто не будет программа работать нормально если часть флеша слетит по причине прыжка на erase sequence в бутлоадере, не вернемся мы оттуда в ОС... Следовательно тут как раз WDT помощник.
Ну а если предположить, что мы все-таки вернулись после erase sequence в ОС и продетектили нарушение флеш в основной программе, что дальше? Выход ведь тот же самый - сброс и запуск бутлоадера.

Насчёт защиты от несанкционированного запуска бутлоадера. Я бы предложил написать так:
Цитата
; до последней проверки
ldi R17,Tag ; что такое Tag думаю объяснять не надо
; начинается последняя проверка. В ней R17 не используется.
...
; последняя проверка закончена. Дальше пошли аварийно опасные команды.
....
; дальше пример от 'Дон Амброзио'. Чуть переделанный
OUT SPMCR , R16
; ---------------
cpi R17 , Tag
brne CRASH
;-----------------
SPM

Если предположить, что аварийно опасных команд 8 шт. А у R17, в остальных частях программы, значения от 0 до FF равновероятны. То вероятность "не попорчивания" FLASH при случайном прыжке для AVR с 128 кБайт памяти будет: (1-(8/65536)/256)*100%=99.9999523%. Что существенно выше, чем надёжность CRC16 с производящим многочленом 0x11021, которая составляет 99.9984% для пакетов данных длиной более 17 бит (Р.Л. Хаммел "Последовательная передача данных").
Цитата(defunct @ Feb 14 2008, 18:18) *
У мелких АРМов (конкурентов мег) есть FLASH. Хотите размещайте во флеш, не хотите - копируйте и запускайте в RAM.

Если код во флеш разместить, то он и выполнятся медленно будет. Примерно с той-же скоростью, как у AVR. А у мелких АРМов разве защита кода есть? Я считал, что нет. Но м.б. у каких-то и есть - просветите.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
zltigo
сообщение Feb 15 2008, 11:34
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(galjoen @ Feb 15 2008, 14:20) *
Если код во флеш разместить, то он и выполнятся медленно будет. Примерно с той-же скоростью, как у AVR.

Ну Flash даже у мелких ARMов бывает 128битным, что позволяет считывать за раз 4 слова, что неплохо компенситует потерю быстродействия. Даже без этого скорость будет совсем не AVRовская за счет регистровых операций и большей их разрядности.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
GetSmart
сообщение Feb 16 2008, 02:01
Сообщение #3


.
******

Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753



Разница между ARM7 и AVR примерно такая же как между AVR и MCS-51. Кто работал - тот знает. Интересно, что и аргументы у защитников примерно одни и те же. А после того как цены на ARM7 (особенно Phillips) стали намного дешевле сравнимых хотя бы по размеру флэша AVR, то вообще с AVR-ками продолжают работать только их "фанаты". Любовь затуманивает разум smile.gif

Сообщение отредактировал GetSmart - Feb 16 2008, 02:08


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
SIA
сообщение Feb 16 2008, 02:31
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 462
Регистрация: 26-06-07
Пользователь №: 28 723



Цитата(GetSmart @ Feb 16 2008, 05:01) *
Разница между ARM7 и AVR примерно такая же как между AVR и MCS-51. Кто работал - тот знает. Интересно, что и аргументы у защитников примерно одни и те же. А после того как цены на ARM7 (особенно Phillips) стали намного дешевле сравнимых хотя бы по размеру флэша AVR, то вообще с AVR-ками продолжают работать только их "фанаты". Любовь затуманивает разум smile.gif

Так я не по этой части. Просто посмотрев, насколько шустрее один и тот же сишный код идет на Au1100 с древней, но отлаженной архитектурой, против свеженького LPC3180 (разница много больше, чем 2 раза по тактовой), начинаешь задумываться - а где прогресс, блин ?
Go to the top of the page
 
+Quote Post
zltigo
сообщение Feb 16 2008, 07:44
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(SIA @ Feb 16 2008, 05:31) *
...насколько шустрее один и тот же сишный код идет на Au1100 с древней, но отлаженной архитектурой..

Ну насчет "древности архитектуры" тут ARM, пожалуй может посоревноваться smile.gif - все у всех начиналось там - в 80x. По любому, эта тема была поднята/выделена для обращения внимания на то, что лобовые жестко синхронные массовые микроконтроллеры кончились на 16-20 мегагерцах. Нежели нужно жестко и быстрее, чем это позволяет делать 16/20 MHz AVR чего-то желать, то FPGA пора осваивать уже более, чем доступные FPGA, а не ждать чудес ввиде такой-же, но "без крыльев" 32MHz, 66MHz...
За десяток, даже не за "другой", а именно за десяток баксов получаем возможнось делать более, чем сотнемегагерцовую ногодрыгалку с небольшим контроллером, если надо, для "всего прочего" на борту. Контроллер набортный, правда сейчас относительно дорого выйдет для такого уровня FPGA и более экономически оправдано применение рядышком контроллера общего назначения за несколько единиц баксов.

Цитата(SIA @ Feb 16 2008, 03:25) *
..просто нынешние разработчики часто об этом не вспоминают. Как результат - лепятся куча прибамбасов там, где рациональнее подумать головой и сделать простое, но мощное решение.

Вам прямой путь вспомнить и сделать IP-Core... Alias, считайте, у Вас уже есть, хороший, трехбуквенный, легко запоминающийся (особено в Латвии - у нас это полный аналог "Общество с Ограниченной Ответственностью" - "Sabiedrība ar Ierobežotu Atbildību"). А? Не думаю, что разработчики забыли, как думать, и где купить книжки по архитектуе процессоров - просто компромис выбирается по другим критериям. Правильные/не правильные эти критерии в общеглобальном плане, я судить не берусь, но лично меня результат вполне устраивает.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
SIA
сообщение Feb 16 2008, 17:48
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 462
Регистрация: 26-06-07
Пользователь №: 28 723



Цитата(zltigo @ Feb 16 2008, 10:44) *
Ну насчет "древности архитектуры" тут ARM, пожалуй может посоревноваться smile.gif - все у всех начиналось там - в 80x. По любому, эта тема была поднята/выделена для обращения внимания на то, что лобовые жестко синхронные массовые микроконтроллеры кончились на 16-20 мегагерцах. Нежели нужно жестко и быстрее, чем это позволяет делать 16/20 MHz AVR чего-то желать, то FPGA пора осваивать уже более, чем доступные FPGA, а не ждать чудес ввиде такой-же, но "без крыльев" 32MHz, 66MHz...
За десяток, даже не за "другой", а именно за десяток баксов получаем возможнось делать более, чем сотнемегагерцовую ногодрыгалку с небольшим контроллером, если надо, для "всего прочего" на борту. Контроллер набортный, правда сейчас относительно дорого выйдет для такого уровня FPGA и более экономически оправдано применение рядышком контроллера общего назначения за несколько единиц баксов.

С этим согласен практически полностью. Быстрый автомат на FPGA для логического управления, особенно "табличный" - уделает на этих приложениях любой MCU. Я сам вместо DSP с большой разрядностью часто применяю комбинацию MCU+FPGA. Деньги примерно те же, а энергопотребление меньше.
Цитата(zltigo @ Feb 16 2008, 10:44) *
Вам прямой путь вспомнить и сделать IP-Core... Alias, считайте, у Вас уже есть, хороший, трехбуквенный, легко запоминающийся (особено в Латвии - у нас это полный аналог "Общество с Ограниченной Ответственностью" - "Sabiedrība ar Ierobežotu Atbildību"). А? Не думаю, что разработчики забыли, как думать, и где купить книжки по архитектуе процессоров - просто компромис выбирается по другим критериям. Правильные/не правильные эти критерии в общеглобальном плане, я судить не берусь, но лично меня результат вполне устраивает.

Я немного разбирался с этим вопросом. Во-первых, здесь многое от нашей (и европейской) недообразованности - многие хорошие архитектуры подробно разбираются в американских курсах Computer Science, те же MIPS студентами Стэнфорда изучаются вдоль и поперек. Причем, что важно, с изучением взаимосвязей всех характеристик, влияющих на реальную (а не рекламную) производительность. Поэтому и "продвигать" их в штатах особенно незачем - и так это там RISC #1, соответственно и вылизано это семейство по критерию площадь/мощность/эффективность практически вплотную к теоретическому пределу для данной технологии. Собственно ядра сильно лучше с точки зрения реальной эффективности для очень широкого круга задач сделать практически невозможно - у него реальная производительность мало отличается от пиковой. (Естественно, для узкоспециализированных применений всегда можно сделать что-то лучше, только вот экономически это оправданно разве что для очень массовых вещей). Соответственно и особых усилий в маркетинге MIPS не предпринимали. А остальные - суетились, пусть с худшими собственно процессорами, гораздо большей разницей между пиковой и реальной производительностью из-за наличия "узких мест", но с более развитой периферией, меньшей стоимостью освоения для разработчиков. Главный минус MIPS-ориентация строго на IP, плюс высокая стоимость освоения, и соответственно недостаточность ассортимента универсальных кристаллов с развитой периферией.
Но признаки понимания ошибочности этого и исправления - есть, поэтому, когда Microchip таки родил PIC32, и явно будет развивать эту тему, то это становится интересным не только для приложений где кровь из носу нужна большая вычислительная мощность при небольшом энергопотреблении.
А с AVR/ARM, IMHO, тут все гораздо проще. Сегодня во многих западных компаниях разработчиков никто всерьез и не спрашивает, рулят амбиции маркетологов, типа это мы продадим! При этом о технической рациональности и оправданности всерьез уже не парятся, т.к. в нынешних условиях, что в Европе, что во многих случаях в США, решение о выборе поставщика для продукта с вероятностью более 50% приниматься будет менеджером, зачастую не имеющим даже минимального технического образования. Этот сдвиг уловили многие реально работающие на рынке фирмы, и заметно изменили формы и методы продвижения продукции - рекламные материалы готовятся в расчете не на инженеров, а на менеджеров.
IP core - я в принципе думал об этом, и кое что даже делал для себя, но экономический смысл сомнителен - архитектур и так слишком много, большая часть из них неизбежно умрет или осядет в нишах просто из-за недостатка средств на продвижение. Например, Infineon TriCore довольно удачный проц, но так и не выбрался из ниши автоэлектроники.
Что-то интересное (реально быстрый при частых переходах и в то же время флэшовый контролллер) можно сделать при тщательной отработке многобанкового флэша (когда параллельно запускается доступ по разным адресам), но такой готовый IP блок флэша до сих пор толком не стандартизован у производителей кристаллов, а разработка его с нуля стоит неподъемных для мелкой фирмы денег (логику процессора сделать проще).
Некоторое время назад для применения в дешевых маленьких FPGA мог представлять интерес предельно компактный по числу вентилей и плотности кода, но шустрый процессор, но ПЛИС дешевеют достаточно быстро, и экономического смысла сегодня в этом уже не видно. Интереснее хороший компилятор и IDE для существующих.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


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

 


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


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