> man operating_systems
Модераторы: Roman I Khimov, Wanderer, Dron
Автор Добавил
0xDEADBEEF
Воскресенье 08.10.2006 16:00

ID пользователя #744
Зарегистрирован: Воскресенье 08.10.2006 15:27
Местонахождение: St. Petersburg
Сообщений: 3
Всем привет!

Сразу скажу, я новичок в создании ОСРВ и в микропроцессорной технике, только-только начал учиться. Но передо мной стоит не совсем тривиальная задача - портировать ядро ecos-2.0 на одну железку с процессором Philips LCP2292 (ARM 7 TDMI-S). Судя по документации ecos уже портирована для ARM 7, но в исходниках в папке packages/hal присутствует код для разных моделей процессоров (увы неизвестных мне). Неужели процессоры одного семейства так отличаются друг от друга? В документации по портированию ecos http://ecos.sourceware.org/docs-latest/ref/hal-porting-guide.html рекомендуется переписать HAL. Возникает ряд вопросов:

- Какой код взять за основу, чтобы не писать все с нуля?
- Как лучше подойти к обработке кода? Работать с исходниками набитыми директивами препроцессора (для различных конфигураций) как то не очень удобно? Можно ли, используя тулзы идущие вместе с исходным кодом, обработать исходники и почучить дерево исходных кодов именно для ARM7?
- Можно ли используя тулзы для сборки собрать одно ядро (без драйверов для периф. устройств)?
- Как указать сборщику архитектуру?

Буду рад любой информации!
Заранее спасибо!

<span class='smallblacktext'>[ Редактирование ]</span>
Наверх
Сайт
Roman I Khimov
Понедельник 09.10.2006 14:45

ID пользователя #1
Зарегистрирован: Воскресенье 27.06.2004 12:37
Местонахождение: Санкт-Петербург
Сообщений: 601
0xDEADBEEF написал(а) ...
одну железку с процессором Philips LCP2292 (ARM 7 TDMI-S)

SDK-2?.. Здравствуйте, коллега...

0xDEADBEEF написал(а) ...
Судя по документации ecos уже портирована для ARM 7, но в исходниках в папке packages/hal присутствует код для разных моделей процессоров (увы неизвестных мне). Неужели процессоры одного семейства так отличаются друг от друга?

Отличаются. Бывает разный ARM. Бывает разный ARM7-TDMI. В конкретном случае порт на ARM7-TDMI есть, значит работы не так и много остается. Остается периферия, интергрированная в процессор, процесс загрузки. Сильно больших проблем быть не должно.
0xDEADBEEF написал(а) ...
Какой код взять за основу, чтобы не писать все с нуля?

Хорошо описано здесь. Скопировать наиболее похожую по железу ветку и работать с ней.
0xDEADBEEF написал(а) ...
Как лучше подойти к обработке кода? Работать с исходниками набитыми директивами препроцессора (для различных конфигураций) как то не очень удобно?

Лучше работать с тем, что есть. Код, как обычно, не образцово-показательный, но с ним надо работать и лучше работать с ним так, как это принято в eCos.
0xDEADBEEF написал(а) ...
Можно ли, используя тулзы идущие вместе с исходным кодом, обработать исходники и почучить дерево исходных кодов именно для ARM7?

Не нужно.
0xDEADBEEF написал(а) ...
- Можно ли используя тулзы для сборки собрать одно ядро (без драйверов для периф. устройств)?
- Как указать сборщику архитектуру?

RTFM.
Сборка.


Греби и улыбайся!
Наверх
Сайт
0xDEADBEEF
Вторник 10.10.2006 21:10

ID пользователя #744
Зарегистрирован: Воскресенье 08.10.2006 15:27
Местонахождение: St. Petersburg
Сообщений: 3
Roman I Khimov написал(а) ...
<a href=http://lmt.ifmo.ru/sdk2_0.html>SDK-2?..</a> Здравствуйте, коллега...


Привет коллега! Как я понимаю, ты тоже из ИТМО ?

Roman I Khimov написал(а) ...
0xDEADBEEF написал(а) ...
Как лучше подойти к обработке кода? Работать с исходниками набитыми директивами препроцессора (для различных конфигураций) как то не очень удобно?

Лучше работать с тем, что есть. Код, как обычно, не образцово-показательный, но с ним надо работать и лучше работать с ним так, как это принято в eCos.


Просто трабл такой: собирается вся эта пакость с использованием configure/make, а в моем случае не все так просто. На данный момент отсутствует девайс, приходится работать в Keil + эмулятор для дебага. Собирать не очень удобно.
Наверх
Сайт
0xDEADBEEF
Вторник 10.10.2006 21:26

ID пользователя #744
Зарегистрирован: Воскресенье 08.10.2006 15:27
Местонахождение: St. Petersburg
Сообщений: 3
Кстати, а существуют ли какие нибудь инструментальные средства для разработки/тестирования для ARM7 (в частности LPC2292) на Linux?
Наверх
Сайт
Roman I Khimov
Вторник 10.10.2006 23:31

ID пользователя #1
Зарегистрирован: Воскресенье 27.06.2004 12:37
Местонахождение: Санкт-Петербург
Сообщений: 601
0xDEADBEEF написал(а) ...
Как я понимаю, ты тоже из ИТМО ?

Так точно.
0xDEADBEEF написал(а) ...
Кстати, а существуют ли какие нибудь инструментальные средства для разработки/тестирования для ARM7 (в частности LPC2292) на Linux?

Я нарыл вот что:
- во-первых, GCC, ну да это само собой . Собрать кросс-компилятор можно без проблем, впрочем, в комплекте с eCos идет свой кросс, так что тебе лучше использовать его. Но, при желании, можно посмотреть сюда и сюда, также на LFS и CLFS плюс немного творческого подхода (в принципе, все вышеперечисленное собирать научит неплохо) и можно собрать нечто, с чем можно работать.
- Зашить чип, по идее, можно или с помощью OpenOCD или с помощью LPC2K_PGM. Вот это самый интересный вопрос, поскольку это я не пробовал еще никак, так что...
- в принципе, если проблема зашивки решаема, то больше ничего для полного счастья и не нужно (предполагается, что с Makefile'ами работать умеем, ну а контроль версий уже по желанию).
- однако, хочется тестировать без железа. С этим хуже, особенно в твоем случае, поскольку тебе нужна точная эмуляция конкретной железки. Но есть QEMU и GXEmul. Последний актуальнее для наших целей, во всяком случае он умеет изображать некое подобие ARM7, но это, скорее всего, будет по прежнему очень далеко от реальной конфигурации SDK2.
- плюс к этому где-то в глубинах сайта Philips'а есть документация на процессор, а где-то на закоулках сайтах ARM есть документация по ARM7TDMI. В принципе, Philips'овская бумажка (а еще errata...) актуальнее, но и ARM-овская может быть полезна.
- а на задворках сайта ЛМТ есть документация на SDK2.

В принципе, самое главное разобраться с тем, как в ентот Philips правильно загружать правильно скомпилированные образы (с чем тоже надо разобраться), а уж там дело пойдет. Дальше надо дома много думать, читать, писать и доводить до компилируемого состояния, потом приходить в универ и в течение пары смотреть на то, как все не работает. Делать выводы, идти домой, много думать... Ну и так далее. Во всяком случае, с SDK1 я работал именно так (даже без эмуляции совсем).


Греби и улыбайся!
Наверх
Сайт
zuuuuk
Вторник 25.09.2007 20:04
ID пользователя #934
Зарегистрирован: Вторник 25.09.2007 14:13
Сообщений: 3
я только начал заниматься этой темой.
не сочтите за глупый вопрос , а как из исходникой собрать фаил прошивки. подскажите ссылку.
после инсталяции получилось много файлов... не понятно


[ Редактирование Вторник 25.09.2007 20:13 ]
Наверх
 

Перейти:     Наверх

Транслировать сообщения этой темы: rss 0.92 Транслировать сообщения этой темы: rss 2.0 Транслировать сообщения этой темы: RDF
Powered by e107 Forum System

© OSRC.info, 2004-2010.
Авторские права на любые материалы, авторы которых явно указаны, принадлежат их авторам. По вопросам публикации таких материалов обращайтесь к авторам.
Авторские права на любые другие материалы принадлежат OSRC.info.
Сайт является помещением библиотеки. Копирование, сохранение на жестком диске или иной способ сохранения произведений осуществляются пользователями на свой риск.
При использовании материалов сайта ссылка на OSRC.info обязательна.