Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: нормальный xcl-файл для AT91RM9200
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
Ruslan1
Я только начинаю осваивать ARM. Много просмотрел всякого, но не могу понять, как же все-таки мне распределить память, чтобы работало более-менее быстро?
Из памяти у меня SDRAM 16мегабайт и конечно внутренний RAM самого камня. Грузиться буду из последовательной DataFlash, то есть никакого собственно ROM, доступного компилятору, у меня нет. Значит, вся программа (CODE) и переменные(DATA) я располагаю в SDRAM, а вот какие сегменты для быстродействия расположить в IntRAM? наверное, CODE_I (это то, что я определю как __ramfunc). Еще INTVEC (по определению). Что еще? Функции обработки прерываний? Стек?

Понимаю, что от задачи к задаче приоритеты могут меняться, но каковы общие правила распределения памяти при работе с ARM?

Да, еще наверное нужно не забыть кеш включить, но это уже вопрос не к линкеру.
Lelick
Нормальным для этого проца, по моему мнению, является ОС.
aaarrr
Цитата(Ruslan1 @ Aug 11 2006, 11:20) *
Что еще? Функции обработки прерываний? Стек?


Стек крайне желательно, еще MMU Translation Table можно запихнуть, если влезет.
Ruslan1
Цитата(Lelick @ Aug 11 2006, 13:15) *
Нормальным для этого проца, по моему мнению, является ОС.

Уже знаю, что буду ставить uCOS-II.
Ты имеешь в виду, что у операционки свои рекомендации по расположению данных?

Цитата(aaarrr @ Aug 11 2006, 13:16) *
Цитата(Ruslan1 @ Aug 11 2006, 11:20) *

Что еще? Функции обработки прерываний? Стек?


Стек крайне желательно, еще MMU Translation Table можно запихнуть, если влезет.

OK.
MMU - это уже операционки уровня Линукса, я так понимаю? Защита памяти и все такое? Может и дойду через пару лет, пока что uCOS буду ставить.
aaarrr
Цитата(Ruslan1 @ Aug 11 2006, 16:38) *
MMU - это уже операционки уровня Линукса, я так понимаю? Защита памяти и все такое? Может и дойду через пару лет, пока что uCOS буду ставить.


Нет, придется изучать сейчас. Без MMU нельзя полноценно использовать кэш.
Lelick
Зря, лучше сразу Линух, я полтора года назад и не знал, что это такое и с чем его едят. Там самое тяжелое наладить запуск системы на железе (для начинающего 3-4 месяца). А дальше только успевай железяки клепать. У меня уже 1 завершенный проект есть на этой платформе, 1 на финишной прямой, а еще 2 ждут не дождуться когда появиться время.
aaarrr
Цитата(Lelick @ Aug 11 2006, 18:19) *
Зря, лучше сразу Линух...

Это почему? Может быть, нужно сделать дешевое устройство с малым потреблением и без излишеств.
Ruslan1
Цитата(Lelick @ Aug 11 2006, 17:19) *
Зря, лучше сразу Линух, я полтора года назад и не знал, что это такое и с чем его едят. Там самое тяжелое наладить запуск системы на железе (для начинающего 3-4 месяца). А дальше только успевай железяки клепать. У меня уже 1 завершенный проект есть на этой платформе, 1 на финишной прямой, а еще 2 ждут не дождуться когда появиться время.

Я около года назад развлекался с uClinux на BF533 (небезызвестная плата STAMP). Не понравилось. Да, все пишется и даже работает, но очень медленно и непредсказуемо время передачи сигналов с уровня ядра на пользовательский. Не реалтайм. Вот говорят, что uCos с реалтаймовостью получше.

Хотя да, низы на собственноразработанном железе писать- это отдельная эротика. Уже полдня не могу понять, почему SDRAM не работает как надо. CLK есть, CAS/RAS- фигушки. Пришлось CLK снизить до 50 МГц, иначе осциллограф вообще показывать не хотел....
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.