AT89C51: Wie schnell?

Gast #131485
Lesenswert?

Kommt auch drauf an, welchen Typ Prozessor du hast. Es gibt die
Prozessoren auch mit X2 Core von Atmel, Phillips, Dallas etc ,- z.B.
die Rx2,- AC2 serie,-
die braucht nur 6 Takte anstatt 12 pro Zyclus.

Internen Oszillator haben die leider nicht,- pass aber auf, wenn du
einen Quarz dranhängst, das es ein Grundton Quarz ist. Bei reichelt
sind die Normalen Quarze ab 24 Mhz 3.Oberton Quarze und da schwingt der
interne Oszillator ohne externe Zusatzbeschaltung nur auf dem Grundton
(s. Atmel Application Node: third tone crystal). Da bin ich mal drauf
reingefallen. Da ist fertiger Quarzoszillator mit Anschluß an XTAL1
besser.

greetz,- Black
Gast #131487
Lesenswert?

@dirk:
naja, das wäre zumindest die höchste Geschwindigkeit, die ein
"normaler" 8051 erreichen kann, wenn er nur mit 1-Zyklus-Befehlen
betreiben wird (z.B. NOPs...).
Beim AVR gibt man die auch so an...
Vielleicht hätte ich "bis zu" noch hinzufügen sollen...
Gast #131489
Lesenswert?

Mit normalem Core schon. wenn er aber bei der frequenz auch x2 macht hat
er 10 mips.
Falls du diese zahl jedoch mit den 16-24 mips der avr familie
vergleichen willst musst du bedenken, dass der 8051 ein cisc und der
avr ein risc prozessor ist. dadurch hat der 8051 bei selben mips einen
vorzug gegenueber dem avr, da seine instruktionen sehr viel maechtiger
sind und vom avr in mehrere kleiner geteilt werden muessen. Genaue
zahlen kann ich dir jedoch nicht geben.

Gruß Tobias
#131490
Lesenswert?

@Bernd,

"Hab ich das richtig verstanden?
Wenn ich einen High Speed ???51 mit 60MHz nehme, schaft der gerade mal
5MIPS?"


Laste das erstmal aus, dann reden wir weiter.

Ich benutze oft einen Standardquarz 11,0592MHz, also lächerliche
0,9MIPS, habe aber noch nie Zeitprobleme gehabt, die sich nicht mit
etwas besserer Strukturierung lösen ließen.

Oder anders gesagt, bei grottenschlechter Programmplanung kriegst Du
auch einen C8051F120 (100MIPS) zum Qualmen.


Peter
Gast #131492
Lesenswert?

read modify write befehle auf ports und register zum bleistift....

laß hier aber nicht in das dogma enden, die 51er sind besser oder die
avr sind besser.... jede family hat ihre vorzüge,- gibt
programmalgorithmen, wo ein 51er einen avr stehen läßt,- umgekehrt auch
algorithmen, wo ein 51er  dann alt ausschaut.

Bei etwas größeren projekten greife ich eigentlich immer zu meinem
favoriten, 89c51Rx2, und selbst wenn ich dann mit dem RTX arbeite,-
ist der kleine immer noch satt schnell.
die entscheidung ist allerdings keine reine
geschwindigkeitsentscheidung,- sondern die unterstützung des
Multitaskting Echtzeit OS durch den Keil Compiler.
Gast #131494
Lesenswert?

ähm, ich glaub, ich kenn die Befehlssätze auch...

SBI beim AVR setzt ein bit,- ok, das geht beim 51er mit set.

mit read modify write ist gemeint zum bleistift:
anl p1,[register],[konstante],[speicher]
direktes AND auf dem Portbyte mit argument entweder register, konstante
oder speicherinhalt und zurückschreiben an P1.

oder ANL P1.0,[Register][bitspeicher]
direktes AND des Portbits mit bitregister oder inhalt aus bitspeicher
und zurückschreiben in den Port

Das ganze funzt mit Ports und speicher.
#131495
Lesenswert?

@Michael,

"...und bring bitte ein Beispiel, was zieht."

z.B.:

8051:

djnz 70h, label
....
label:

= 3 Byte

AVR:

lds r16, 0x70
dec r16
sts 0x70, r16
brne label
....
label:

= 12 Byte


Das Thema wurde hier schon oft besprochen, da findest Du noch mehr
Beispiele.

Aber so riesengroß sind die Unterschiede in der Summe nicht, AVR-Code
ist in realen Programmen nur etwa 20% größer als 8051-Code, egal ob in
C oder Assembler.

Der größte Nachteil der AVRs sind die fehlenden Interruptprioritäten.


Peter
Gast #131496
Lesenswert?

@Peter

dein beispiel ist auch gut,- aber ich wollt hier net in Dogmen
verfallen. Beide Controller sind gut und haben ihre Vor und Nachteile.
Bei den 51er´n gehts dann mit der Performance in den Keller,- sobald
ich soviel Speicher habe, das ich im PDATA oder noch schlimmer in XDATA
Segment arbeiten muß.

Das Gewurschtel mit dem oder den (je nach Hersteller bis zu 4 Stück)
DPTR Register,- um auf XDATA zugreifen zu können,- das ist dann halt
Nachteil des 51er Cores...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren