[ARM] Czasy wykonywania instrukcji

Loading thread data ...

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.

Reply to
Maksymilian Dutka

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.

Reply to
Adam Dybkowski

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).

Reply to
Adam Dybkowski

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.