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