- posted
18 years ago
[ARM] Czasy wykonywania instrukcji
- Vote on answer
- posted
18 years ago
MichalK napisał(a):
Jakieś 90% Prędkości zegara (większość wykonuje się w jednym cyklu). To jeszcze chyba zależy od tego czy pracuje w trybie 16bit czy 32bit, i w jakim stopniu program wykorzystuje instrukcje 1-cyklowe. W .pdf-ie do AT91SAM7S (on ma to samo jądro co Twój Philips) pisze iż pracując przy zegarze 55MHz w najgorszym wypadku instrukcje będą się wykonywać w takcie 30MHz.
- Vote on answer
- posted
18 years ago
Jest cykl chyba 5 czy 6 PDFow do sciagniecia ze strony firmy ARM, opisujacych m.in. asembler ARM i asembler Thumb, w tym czasy wykonania instrukcji. Czasy wykonania wielu rozkazow zaleza od kilku czynnikow, m.in. czasow dostepu (waitstate'y), trybow pobierania danych z pamieci, AFAIR takze wykonania warunkowego.
- Vote on answer
- posted
18 years ago
Tu akurat chyba nie doczytales. Atmel pisze, ze program wykonywany w trybie ARM z wewnetrznej pamieci Flash nie pojdzie szybciej niz na 30 MHz. Wynika to z wolnej pracy pamieci Flash. Program wykonywany natomiast z RAMu chodzi bez problemu z maksymalna czestotliwoscia zegara (az 55 MHz nie probowalem, bo uzywam AT91SAM7S256 caly czas na 48 MHz ze wzgledu na USB). I to nie zalezy od jadra (7TDMI), ale od czasow dostepu do pamieci. Seria AT91SAM7Sxx ma optymalizer dostepow do Flasha w trybie Thumb i wtedy mozna wykonywac program z max. czestotliwoscia zegara (55 MHz), bo z pamieci sa pobierane slowa 32-bitowe a wykonywane 16-bitowe (jak to w trybie Thumb).