Bit-Toggle-Benchmark mit GCC

Bei diesem Vergleich wird ein einzelnes Bit (digitaler Output-Port) per Software so schnell wie möglich im logischen Pegel verändert. Die anderen Bits des entsprechenden Ports werden nicht tangiert. Die Programmierung erfolgt in ANSI-C mit den C-Compilern ECO-C-11, WinECO-C und ECO-C-arm.

Targets

SBC Controller Takt Programmspeicher C-Quelle
IC11B MC68HC11A1 (HC11) 2MHz 8Bit Datenbus ext. RAM ansehen
ZWERG332A MC68332 (CPU32) 25MHz 8Bit Datenbus ext. RAM ansehen
MEGA332A MC68332 (CPU32) 25MHz 16Bit Datenbus ext. RAM
oder fast termination ext. RAM
ansehen
LC7024 AduC7024 (ARM7) 45MHz 16Bit Datenbus int. FLASH ansehen
NET2106 LPC2106 (ARM7) 60MHz 32Bit Datenbus int. FLASH ansehen
S2103 LPC2103 (ARM7) 70MHz 32Bit Datenbus int. FLASH ansehen

Ergebnisse

SBC Periodendauer Frequenz Oszillogramm Assembleroutput
C-Compiler
IC11B 8,5us 0,117MHz ansehen ansehen
ZWERG332A 1,28us 0,819MHz ansehen ansehen
MEGA332A
fast termination
1,12us
1us
0,892MHz
1MHz
ansehen
ansehen
ansehen
LC7024 0,6us 1,66MHz ansehen ansehen
NET2106 0,29us 3,45MHz ansehen ansehen
S2103 0,1us 10MHz ansehen ansehen

Schlussfolgerungen

Die am jeweiligen Output zu messende Frequenz hängt in erster Line vom Prozessortakt und den Zugriffszeiten auf den Programmspeicher ab. Der LPC2106 hat aufgrund seines sehr schnellen Zugriffs auf das interne FLASH einen Vorteil.

Die Systemleistung kann sich aber - abhängig von der Applikation - ganz anders darstellen. Die Hardwareausstattung spielt eine wesentliche Rolle. Das Timmersystem, PWM-Ausgänge usw. können die CPU erheblich entlasten und die Gesamtleistung deutlich verbessern.

Der MC68332 kann fast schon als Multiprozessorsystem angesehen werden. Die TPU kann z.B. eigenständig Motoren ansteuern und Quadratur-Encoder auswerten.

www.mct.de