Wyznaczenie mocy obliczeniowej uC

Cześć. Powiedzcie mi jak się wyznacza moc obliczeniową danego uC. I co oznacza stwierdzenie że "AVR nie ma dostatecznej mocy obliczeniowej i należy zastosować inny uC np ARM" JEst to niby intuicyjne, ale jak się zabieram do tego, to nie za bardzo to rozumiem? Czy jednostką mocy obliczeniowej jest MIPS?

Reply to
slawek7
Loading thread data ...

Zalezy czy sprzedajesz czy kupujesz :-)

Procesorow asynchronicznych na szczescie jeszcze nie ma, wiec wszystkie wykonuja instrukcje zgodnie z zegarem. Czestotliwosc zegara doprowadzona z zewnatrz potrafia sobie przemnozyc. Jedna instrukcja moze zajac kilka cykli, a moga istniec konstrukcje gdzie sie wykonanie naklada i rozpoczynamy kolejna instrukcje gdy poprzednia jeszcze trwa, albo w ogole kilka rownolegle sie wykonuje, czy kilka osobnych procesorow w jednej kosci mamy.

Jak ilosc cykli jest zmienna, to juz wyznaczenie ilosci instrukcji na sekunde jest trudne - sprzedawca uzyje najszybszych :-)

A osobna sprawa to co to za instrukcje. Moze sie okazac ze jedna instrukcja takiego ARM wymaga kilkaset instrukcji 8-bitowego procesorka zeby zrobic to samo. Bo to jest instrukcja mnozenia

32-bitowych liczb, a maly procesorek potrafi tylko dodawac i tylko 8-bitowe.

Sporo wiec zalezy od tego jakie masz potrzeby obliczeniowe w programie.

J.

Reply to
J.F.

Nie jest tak zle. Sa wystandaryzowane benchmarki, na podstawie ktorych podaje sie predkosc.

Eee, troche cie ponioslo :) 32-bitowe mnozenie poskladane z 8-bitowych to nie kilkaset instrukcji :)

Reply to
T.M.F.

Użytkownik T.M.F. napisał:

W ATtiny ? ;-)

Reply to
Grzegorz Kurczyk

W dniu 04.07.2009 12:29, Grzegorz Kurczyk pisze:

A ATTiny ma sprzetowe mnozenie 8-bitowe, o ktorym pisalem?:)

Reply to
T.M.F.

to przemnoz dwie liczby 32 bitowe zapamietane w roznych miejscach pamieci na 6502 na przyklad

bez sprzetowego mnozenia to sa 32 obiegi petli, w kazdym dodawanie 4 do 8 bajtow .. i setka instrukcji wychodzi.

J.

Reply to
J.F.

Oj, w przykladzie byl ARM i AVR, a ty tu z jakims procesorem z epoki procesorow lupanych wychodzisz. ATMegi maja sprzetowe mnozenie 8 bitowe, wiec zrobienie z tego mnozenia 32-bitowego jest krotkie. Natomiast jesli istotnie nie masz wsparcia hardwarowego to dla 32 bitow kilkaset instrukcji wychodzi. Chociaz dodalbym, ze to tylko kilka instrukcji w petli, bo kilkaset instrukcji brzmi powaznie :)

Reply to
T.M.F.

W artykule snipped-for-privacy@4ax.com J.F napisał:

Meaningless Indicator of Processor Speed ;)

Reply to
JS

JS pisze:

;)

IMHO niezłym obiektywnym benchmarkiem procesora jest Dhrystone, dający wynik w jednostkach DMIPS. Da się go odpalić na wielu platformach, a nawet sami producenci procesorów i mikrokontrolerów reklamują wydajność swoich produktów w DMIPS (ew. dużo mówiące o wydajności współczynniki DMIPS/MHz czy o energochłonności DMIPS/mW).

formatting link
Wystarczy wiedzieć, jaka wymagana wydajność jest potrzebna do realizacji konkretnego algorytmu (np. dekodowania MP3) i już wiadomo, jaki procek z założenia trzeba omijać bo nie wydoli.

Reply to
Adam Dybkowski

Jak to mowil znajomy - predkosc, ktora producent gwarantuje ze procesor nie przekroczy :-)

J.

Reply to
J.F.

Adamie - ale przeciez swietnie zdajesz sobie sprawe ze to jakies oszustwo. Innych operacji wymaga MP3, innych dekompresja danych, innych grafika na malym wyswietlaczu, innych na duzym, zmienny przecinek - nie da sie tego jedna liczba opisac.

J.

Reply to
J.F.

Użytkownik T.M.F. napisał:

No właśnie nie ma. Czyli nawet we współczesnych prockach 8-mio bitowych może to być kilkaset instrukcji.

Pozdrawiam Grzegorz

Reply to
Grzegorz Kurczyk

J.F. pisze:

Jasne. Dlatego niezależnie od DMIPS'ów warto zdawać sobie sprawę, do czego można dążyć (np. optymalizując swój kod). Czyli że na ARM7TDMI dekodowanie MP3 128kbps wymaga popędzenia zegarem minimum 30 MHz (liczby przykładowe, wyssane z palca), a na ARM926EJ-S posiadającym trochę nowych instrukcji a'la DSP już tylko 20 MHz.

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.