pld embedded - port pld dla arm9
Pawel Sikora
pluto w agmk.net
Pon, 8 Sie 2005, 22:12:18 CEST
On Monday 08 of August 2005 11:40, Radosław Kintzi wrote:
> Wydaje mi się, że najlepszym rozwiazaniem byłoby stworzenie miniportu
> PLD dla ARMa. Coś takiego jak [5]. Oto oprogramowanie jakie potrzebuję
> (chciałbym w tym widzieć):
> (...)
> - gcc-3.3.5
seria 3.3.x sie nie nadaje dla ARM-a, bo ma skoszona obsluge
__attribute__ ((interrupt ("IRQ/FIQ/etc."))) i jeszcze kilki
innych rzeczy. jesli chcesz uzywac gcc na armie, to w wersji
min. 3.4.latest. generalnie polecam doglebna lekture
http://www.inf.u-szeged.hu/gcc-arm/index.php
> - newlib lub uClibc (nie wiem czy to pierwsze się nadaje)
to pierwsze sie nadaje, ale jest dosyc duze jak na systemy
micro-embbeded (z 32/64kB ram-u). dla takowych najlepsze jest
chyba dietlibc+wlasna implementacja (badz zaslepienie) syscall-i linuxa.
jesli zas masz juz te kilka MB zewnetrznej pamieci ram podpietej
do arm-a + flash dysk, to spokojnie uzywaj newliba.
> Mam teraz kilka pytań na temat cross-kompilacji i towrzenia portów
> embedded (zaznaczam, że moje doswiadczenie w tym temacie jest raczej
> żadne, a wiedza to kilka dni googlowania):
>
> 1. Jak wygląda proces tworzenia cross-kompilatora?
crossarm-gcc.spec jest do wgladu. aktualnie wspiera tyko c/c++,
albo mozna spokojnie wlaczyc jave i wykorzystac sprzetowy
akcelerator jazelle.
> 2. Czy newlib nadaje się jako biblioteka libc dla Linuksa embedded?
> To pytanie ma związek z tym co napisałem w poprzednim akapicie.
newlib nadaje sie nawet dla systemow bez OS-a, ale jest z reguly
wtedy duzo wiekszy niz sama aplikacja.
> 3. Crt0/Startup code. Czy to jest potrzebne również w przypadku kiedy
> używamy Linuksa na docelowej maszynie, czy tylko w sytuacji, kiedy
> uruchamiamy program bez systemu operacyjnego?
startup-code jest zawsze potrzebny. jesli nie masz OS-a, to musisz go sam
napisac/wygooglac i zadbac o to, zeby programik ustawil sam sprzet, stos
i inne cuda. jesli masz juz OS-a na pokladzie, to zwykle jakas implementacja
biblioteki standardowej C dostarcza odpowiedni loader.
> 4. Co jest jeszcze potrzebne, żeby przygotować builder pod taki port
> PLD? Ile czasu może to zająć (osobie, która nie ma doświadczenia) i czy
> mogę liczyć na Waszą pomoc (głównie chodzi o konsultacje niż o pracę
> przy poprawianiu specy). Myślę, że uda mi się wyciągnąć od firmy maszynę
> na taki builder, pod warunkiem, że takie przedsięwzięcie będzie miało
> szansę realizacji (w rozsądnym czasie)
ja cos moge podpowiedziec, ale fizycznie juz sie od arm-a odcialem
(czyt. zlozylem wypowiedznie w firmie dla ktorej robilem arma 7-ke).
> Linki (proszę uzupełnić):
[1] www.arm.com
[2] http://www.montereylinux.com/datasheets/arm_inj-ds-20040109.pdf
[3] http://www.iar.com/
ps).
IAR ma swietny kompilator i bardzo dobra implementacje embedded c++
ale niestety kosztuje sporo (u polskiego przedstawiciela >= 10'000pln).
--
The only thing necessary for the triumph of evil
is for good men to do nothing.
- Edmund Burke
Więcej informacji o liście dyskusyjnej pld-devel-pl