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

 
 
> Сравнение AVR и 51
Yra
сообщение Nov 1 2007, 19:20
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 396
Регистрация: 22-10-04
Из: Воронеж
Пользователь №: 962



Мучает вопрос: Есть 51 процессор у которого 64к * 8 памяти программ. У него полный набор инструкций - CISС (тоесть около 256).
Есть AVR у которого 64k * 16 памяти программ. У него не полный набор инструкци - RISС (порядка 90?) что влечёт за собой некоторый перерасход памяти программ.
Есть программа на С которая предположим полностью компилируется под обеими процами (без учёта разной периферии на борту - предположим что вся периферия снаружи - реализована на ПЛИС).
Так вот интересует: на каком ядре плотнее ляжет эта программа? Т.е. программа, занимаюшая 64к*8 в 51 проце уместится ли в 64к*16 в AVR и если уместится то в каком соотношении?


--------------------
всё можно наладить, если достаточно долго вертеть в руках /Законы Мерфи/
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 7)
bzx
сообщение Nov 1 2007, 20:21
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 482
Регистрация: 5-07-05
Из: Санкт-Петербург
Пользователь №: 6 528



Возраст 51’го ядра подходит, поправьте если ошибаюсь, к 3м десяткам. Ядро AVR значительно моложе, ~10лет. Когда мне с ним пришлось столкнуться в 97м, одним из преимуществ AVR разработчики обещали компактность C кода при компиляции. Могу лишь констатировать, что это факт!


--------------------
Для связи email: info собака qbit.su
Go to the top of the page
 
+Quote Post
sensor_ua
сообщение Nov 1 2007, 20:36
Сообщение #3


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

Группа: Свой
Сообщений: 1 266
Регистрация: 22-04-05
Из: Киев
Пользователь №: 4 387



Портировали несколько проектов с C51 на AVR. Объём программы в байтах практически не изменился. Т.е. м128 (ранее м103) уделала в 2 раза по количеству слов T89C51RD2 (ныне AT89C51ED2)


--------------------
aka Vit
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Nov 2 2007, 01:30
Сообщение #4


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



Цитата(=AVR= @ Nov 2 2007, 06:38) *
А потом выкинуть нахрен все компиляторы для 8-битников - позорище эдакое - и далее писать для них только на ассемблере smile.gif

Надеюсь Вы пошутили... вроде смайлик вконце стоит.


Цитата(Yra @ Nov 2 2007, 03:20) *
Мучает вопрос: Есть 51 процессор у которого 64к * 8 памяти программ. У него полный набор инструкций - CISС (тоесть около 256).
Есть AVR у которого 64k * 16 памяти программ. У него не полный набор инструкци - RISС (порядка 90?) что влечёт за собой некоторый перерасход памяти программ.
Есть программа на С которая предположим полностью компилируется под обеими процами (без учёта разной периферии на борту - предположим что вся периферия снаружи - реализована на ПЛИС).
Так вот интересует: на каком ядре плотнее ляжет эта программа? Т.е. программа, занимаюшая 64к*8 в 51 проце уместится ли в 64к*16 в AVR и если уместится то в каком соотношении?

Странно, что критереем является плотность программы... А, например, быстродействие, цена, это менее важные для Вашей задачи факторы?
Мой вопрос не в коем случае не ирония, просто действительно интересно, почему именно плотность является критерием, на фоне того, что цены на 8-битники совсем не высокие.


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
Yra
сообщение Nov 2 2007, 04:35
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 396
Регистрация: 22-10-04
Из: Воронеж
Пользователь №: 962



Цитата
Странно, что критереем является плотность программы... А, например, быстродействие, цена, это менее важные для Вашей задачи факторы?

В своё время переехали на C8051F120 - исчерпали ресурсы программного кода (обработка строк и всё такое). Самый важный критерий для меня - именно размер кода - рост програмы на перспективу. Всегда можно улучшить программу, дописав пару строк, выполнив пару проверок - а тут: кончилась.... sad.gif На AVR переезжать смысла нет - переехал на ARM. ARM тоже недорогие: - STR710 (256k Flash, 64к ОЗУ + полно периферии) - ~600руб. Там проблемма плотности кода есть. Вот и интересно стало на сколько эффективны AVR....
А проблемма размера кода для меня существенная: UCOS-II + LwIP - занимает порядка 70 кБайт; UCOS-II + UcGUI - порядка 100 кБайт плюс ~50к под фреймбуфер. Вот и сел с 51... откомпилировать не могу...


--------------------
всё можно наладить, если достаточно долго вертеть в руках /Законы Мерфи/
Go to the top of the page
 
+Quote Post
=AK=
сообщение Nov 2 2007, 05:16
Сообщение #6


pontificator
******

Группа: Свой
Сообщений: 3 055
Регистрация: 8-02-05
Из: страны Оз
Пользователь №: 2 483



Цитата(Yra @ Nov 2 2007, 14:05) *
Самый важный критерий для меня - именно размер кода - рост програмы на перспективу.

Тогда бросьте С и переходите на Форт, размер кода уменьшится раза в два.
Go to the top of the page
 
+Quote Post
mse
сообщение Nov 2 2007, 05:43
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 709
Регистрация: 3-05-05
Пользователь №: 4 693



Цитата(Yra @ Nov 2 2007, 07:35) *
В своё время переехали на C8051F120 - исчерпали ресурсы программного кода (обработка строк и всё такое). Самый важный критерий для меня - именно размер кода - рост програмы на перспективу. Всегда можно улучшить программу, дописав пару строк, выполнив пару проверок - а тут: кончилась.... sad.gif На AVR переезжать смысла нет - переехал на ARM. ARM тоже недорогие: - STR710 (256k Flash, 64к ОЗУ + полно периферии) - ~600руб. Там проблемма плотности кода есть. Вот и интересно стало на сколько эффективны AVR....
А проблемма размера кода для меня существенная: UCOS-II + LwIP - занимает порядка 70 кБайт; UCOS-II + UcGUI - порядка 100 кБайт плюс ~50к под фреймбуфер. Вот и сел с 51... откомпилировать не могу...

Дык, что АРМов с 512К флэши нет? Или вы в АРМ-моде всё ваяете? Тогда вам в АВР32, там обещают неимоверную плотность кода. ;О) Или ставьте внешний флэш. Хоть гиг. Или SD карту.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Nov 3 2007, 09:09
Сообщение #8


Гуру
******

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



Модератор:
Прочие "рассуждения" выделены в отдельную ветку. Пока в разделе AVR.
http://electronix.ru/forum/index.php?showtopic=38827&hl=


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post

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

 


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


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