|
|
  |
AVR признали !, C переходом в рассуждения о контроллерах |
|
|
|
Aug 9 2007, 21:54
|

Ambidexter
    
Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282

|
Цитата(singlskv @ Aug 9 2007, 21:26)  Тогда да, разницы почти нет, по машинным циклам выигрывает пик, по реальной скорости авр. А какой пик ? Интересно глянуть Например, pic18f2220. Там ещё есть "страшная" команда movff var1,var2. Напрямую пересылает значение из переменной var1 в переменную var2, требует ДВА машинных цикла. У авр аналогом будет пара команд lds/sts, ЧЕТЫРЕ машинных цикла плюс использование РОН.
--------------------
Делай сразу хорошо, плохо само получится
|
|
|
|
|
Aug 9 2007, 22:03
|
дятел
    
Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065

|
Цитата(=GM= @ Aug 10 2007, 01:20)  Так глядишь, с вашей лёгкой руки я стану экспертом по пикам, а я в них не особо петрю, плаваю короче(:-)... Дык и я плаваю, мое знакомство с пиками ограничилось знакомством, в свое время, с каким-то(уже не помню каким) представителем 16 семейства, ну и вот тут недавно пришлось на PIC10 малюсенькую задачку набросать. А вот это из даташита на PIC: All single-word instructions are executed in a single instruction cycle. ........ One instruction cycle consists of four oscillator periods.в свое время меня отвратило от подробного изучения пик(и был выбран авр). Чуйствую, в чем-то дурят  Цитата(=GM= @ Aug 10 2007, 01:54)  Там ещё есть "страшная" команда movff var1,var2. Напрямую пересылает значение из переменной var1 в переменную var2, требует ДВА машинных цикла. У авр аналогом будет пара команд lds/sts, ЧЕТЫРЕ машинных цикла плюс использование РОН. Дык все равно паритет по реальной скорости выполнения... А использование РОН, ну ведь принципиально разные модели процов...
|
|
|
|
|
Aug 9 2007, 22:28
|
Cундук
    
Группа: Участник
Сообщений: 1 478
Регистрация: 13-11-06
Из: Ростов-на-Дону
Пользователь №: 22 269

|
Цитата(defunct @ Aug 10 2007, 01:12)  Есть также Keil, RealView, CrossWorks.. Keil и CrossWorks дружат с gcc тулчейном. Я тоже нашел RIDE по ссылке от ST. Даже приделал туда GCC. Попробовал тестовую программку. Вроде на вскидку все хорошо. Но, все равно, как-то боязно. Цитата(defunct @ Aug 10 2007, 01:12)  Для PIC'ов насколько я осведомлен тоже не густо в этом плане. Общепризнанный лучший компилятор от HT и он небесплатный.. Зато MCC18 бесплатный. Меня лично он полностью устраивает. Код проверялся по ассемблерному листингу. Ничего особо криминального обнаружено не было. А все глюки выгребаются правильным размещением данных. По большому счету, оптимизация кода там и нафиг не нужна. Цитата(defunct @ Aug 10 2007, 01:12)  Wiggler $10-$15 J-Link клон - сопоставим по цене с ICD2 А корпуса? У большинства ноги через 0.65 мм. Если руки кривые, то прототип изготовить практически невозможно. Цитата(defunct @ Aug 10 2007, 01:12)  ~40 мнемоник. даже меньше чем у новых PIC. Дык, у i 486 тоже как бы 40 мнемоник, зато вариантов... ARM из той же оперы, поскольку создавался как альтернатива. Цитата(defunct @ Aug 10 2007, 01:12)  нет проблем, просто может быть вас просто дезинформировали. Загляните в АРМы Может быть Вы и правы. Надо будет поплотнее заняться ARMами. Но лично мне кажется, что и в 24 PICах что-то есть позитивное. Цитата(zltigo @ Aug 10 2007, 01:36)  Для конкретности - затраты, например J-Link за примерно те-же 250USD или вообще его клон, баксов за 70 и можно заниматься любыми ARMx любых производителей. Спасибо за информацию. Вполне вероятно, что придется разориться на обозначенную сумму. Хотя ICD2 у меня уже есть. Цитата(zltigo @ Aug 10 2007, 01:36)  Я вообще не представляю для чего внутрисхемный отладчик для подавляющего большинства случаев отладки хоть сколь-нибудь сложных задач. А посмотреть, чего там в реальности напринималось в буфер? Или что творится с АЦП?
|
|
|
|
|
Aug 10 2007, 00:02
|
Местный
  
Группа: Свой
Сообщений: 408
Регистрация: 21-10-06
Из: Санкт-Петербург
Пользователь №: 21 527

|
Тема оказывается актуальная, судя по быстрому росту. Все же тестирование нужно провести. Полученные результаты будут гораздо объективнее, чем заявления "порвет как тузик". Задача должна быть простая, но все же не в три команды. Предлагаю такую - вычисляем сумму байт и среднее арифметическое 300 байтного массива. размерность в 300 байт заставит применить честное деление, а не ограничиться сдвигами. Ну и результат суммирования будет иметь возможность превысить 16бит. Т.е. будут и работа с памятью и арифметика. Итак, в одном углу ринга разминается Мега8. Найдется ли у нее соперник...  Взвешивание (цена  ) будет проведено после боя
Сообщение отредактировал Qwertty - Aug 10 2007, 00:02
|
|
|
|
|
Aug 10 2007, 05:14
|
Местный
  
Группа: Свой
Сообщений: 234
Регистрация: 30-03-07
Из: Одесса
Пользователь №: 26 621

|
Я заметил одну вещь. Никакое МК ядро не имеет столь фанатично преданных поклонников, как ядро АВР. Причем, повторюсь, в основном это те, кто сразу с него начал, либо те, кто еще не успел присесть на другие ядра. Остальные же, кто реально работает с несколькими типами МК, обычно не испытывают особого восторга от АВР. Что-то хорошо, что-то плохо. То же самое они обычно и говорят про другие типы МК, даже про те, с которых начинали. В чем же причина фанатизма? Есть идея. Всем приверженцам АВРов собраться и пойти в ветку PICов, или 51-х, или сразу в обе и устроить там, открыв парочку горячих тем.  А то там что-то скучновато.
Сообщение отредактировал oran-be - Aug 10 2007, 05:20
|
|
|
|
|
Aug 10 2007, 05:41
|

nofb
  
Группа: Свой
Сообщений: 430
Регистрация: 18-05-06
Из: Москва, Зеленоград
Пользователь №: 17 218

|
Цитата(Qwertty @ Aug 10 2007, 04:02)  Тема оказывается актуальная, судя по быстрому росту. Тема на самом деле ниочем. То, что авры ставят куда не лень - известно давно. Что касается достоинств и недостатков - можно спорить бесконечно, но на самом деле все упирается в то, какая перед вами стоит задача. Я вот например программировал 5 ядер мк - Pic, z80, 8051, avr и arm у всех есть свои области применения, свои плюсы и минусы... но без привязки к конкретной задаче все споры будут спорами ни о чем. Если вы хотите получить самый дешевый микроконтроллер например - то берите вообще holtek - от 37 центов... вот только с его программированием возникнут сложности у неопытного программиста. Если хотите сократить сроки разработки - берите avr - в сети масса готовых решений, взяв из которых куски кода и добавив немного своего можно решить любую задачу (если конечно она вообще реализуема на данном ядре)
--------------------
Это не то что вы подумали ...
|
|
|
|
|
Aug 10 2007, 07:18
|
Местный
  
Группа: Участник
Сообщений: 270
Регистрация: 29-06-06
Пользователь №: 18 445

|
Ну, не хочу развивать религиозного фанатизьма, однако, в моём списке PIC отсутсвует. Присутствуют COP, 48, 51, AVR. Когда-то передо мной стоял выбор между PIC и AVR, решён был в сторону AVR, поскольку в то время за сравнимые деньги можно было купить AVR с FLASH, а PIC только OTP, такой же кристалл PIC с FLASH был на порядок дороже. А поскольку к тому времени я уже изрядно наелся внутрисхемных эмуляторов и эмуляторов ПЗУ, PIC как-то сам собой отвалился. С тех пор я просто не вижу надобности вводить себе в мозг ещё одну архитектуру.
Что касается пресловутого теста с FIR. Непонятно, почему там PIC24 DSPIC и AVR. Почему нету ARM? Ведь его тоже Atmel делает.
|
|
|
|
|
Aug 10 2007, 08:11
|

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

|
Цитата(Прохожий @ Aug 10 2007, 01:28)  А посмотреть, чего там в реальности напринималось в буфер? Или что творится с АЦП? Понимаете, что "напринималось в буфер" это настолько мелкая проблема на фоне остальных, что она будет решаться средствами отладки ориентированными на все остальное. В моем случаее это обязательная отладочная консоль. Причем консоль, это отдельная задача с определенным проиритетом и сепень ее загружености не приводит к существенным временным перекосам основного алгоритма. Память под буфера выделяется через менеджер памяти, что позволяет всегда у него спросить информацию о блоках памяти и их владельцах не разбираясь с конкретным мапфайлом. Зачастую буфера не абстрактны а обслуживаются, например, системным механизмом очередей, что в свою очередь позволяет запросить интимную информацию и у менеджера очереди. Ну а дальше - запросить дамп памяти в которой находится буфер и все. Зачем мне в описанной реальной системе для посмотреть "напринималось в буфер" внутриcхемный отладчик  ?. На самом деле, я "сырые" буфера и не смотрю в принципе - когда более высокие уровни будут разбираться с тем, что "напринималось", у них и попрошу уже форматированную распечатку.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Aug 10 2007, 08:29
|
Гуру
     
Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047

|
Цитата(pokos @ Aug 10 2007, 11:18)  Ну, не хочу развивать религиозного фанатизьма, однако, в моём списке PIC отсутсвует. Присутствуют COP, 48, 51, AVR. Когда-то передо мной стоял выбор между PIC и AVR, решён был в сторону AVR, поскольку в то время за сравнимые деньги можно было купить AVR с FLASH, а PIC только OTP, такой же кристалл PIC с FLASH был на порядок дороже. Когда же это было ? Первые, 90s2313, стоили примерно столько же, сколько первые флешаки от Microchip (16F84), порядка зеленой пятерки в то время. 90s8515 - около восьми баксов. О каком порядке разницы может идти речь ? Конец 90-х...
|
|
|
|
|
Aug 10 2007, 08:30
|

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

|
Цитата(_artem_ @ Aug 10 2007, 03:28)  А для чего организовывать пересылки массивов в мтп2? Заметьте, слово "массивов" добавили Вы. Я говорил просто пересылки. Теперь об MTP2 1. Крути не крути информацию из буферов HDLC контроллера переслать в большой буфер хранящий принятые пакеты надо. 2. Далее 'указатели' на сообщения в этом буфере попадают в разные очереди сообщений это тоже пересылки, хоть и не массивов, но уже заметных обьемов информации порядка десятков байт (для 32bit ARM, говорю) 3. Передаваемые сообщения тоже идут в буфера, один из которых достаточно велик, поскольку у нас имеют право потребовать перепослать до 128 последних информационных сообщений. Соответственно 128 'указателей' на эти сообщения посылаются в кольцевую очередь из которой они при необходимости извлекаются и перекладываются в очередь к процессу передачи. 4. Достаточно? Все это пересылки. Пересылки не тел сообщений (что являлось-бы явно неправильно спроектированным алгоритмом), но тем не менее пересылки память-память.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Aug 10 2007, 08:43
|
Местный
  
Группа: Свой
Сообщений: 446
Регистрация: 12-03-06
Из: Москва
Пользователь №: 15 142

|
Цитата(zltigo @ Aug 10 2007, 11:11)  Зачем мне в описанной реальной системе для посмотреть "напринималось в буфер" внутриcхемный отладчик  ?. На самом деле, я "сырые" буфера и не смотрю в принципе - когда более высокие уровни будут разбираться с тем, что "напринималось", у них и попрошу уже форматированную распечатку. Напоминает спор о курице и яйцах А отлаживать "более высокие уровни " с отладчиком быстрее и удобнее. Тогда и заглянуть в буфера понадобится. Цитата Когда же это было ? Первые, 90s2313, стоили примерно столько же, сколько первые флешаки от Microchip (16F84), порядка зеленой пятерки в то время. Использовал 90s2313 с самого начала как замену 16f84. Не более $2,5 против $4 в тех-же количествах и разница быстро нарастала.
|
|
|
|
|
Aug 10 2007, 08:50
|
Местный
  
Группа: Участник
Сообщений: 270
Регистрация: 29-06-06
Пользователь №: 18 445

|
Цитата(rx3apf @ Aug 10 2007, 12:29)  Когда же это было ? Первые, 90s2313, ... Ну, до него был ещё 90s1200. Кстати, 16-й серии PIC тогда ещё не было. В то время "флешаки" от PIC считались отладочными кристаллами с соответсвующей ценой. Это уже потом Мицрочип рюхнулся, что Атмел рынок отбирает, и цены пошли вниз. У Атмела ведь в то время был уже целый выводок флешных 51-х контроллеров. Меня особо радовал в них узкий DIP-корпус...
Сообщение отредактировал pokos - Aug 10 2007, 08:54
|
|
|
|
|
  |
7 чел. читают эту тему (гостей: 7, скрытых пользователей: 0)
Пользователей: 0
|
|
|