Forum: Mikrocontroller und Digitale Elektronik µC Taktfrequenz berechnen


von Martin M. (silent_max)


Angehängte Dateien:

Lesenswert?

Hallo liebe Gemeinde.

Ich habe so eben im AVR Tutorial folgendes gelesen:

"So wird z. B. bei den meisten 8051-Controllern die Frequenz intern 
durch 12 geteilt, ein mit 24 MHz getakter 8051 arbeitet also eigentlich 
nur mit 2 MHz."

Im Datenblatt vom ATmega8515L habe ich bei der Over view etwas von 1 
MIPs per MHz gelesen.

Nun zu meinen Fragen:

1.) Von welchem Hersteller ist denn der 8051??
2.) Wenn beim 8051 die Taktfrequenz so berechnet wird, wird die 
Taktfrequenz dann beim ATmega8515L genauso berechnet?
3.) Was bedeutet "MIPS per MHz"?? Ich kann mit dem Begriff "MIPS" nichts 
anfangen...

Danke für die Antworten im Voraus.

Gruß

Max

Edit:

Ist der 8051 auch von der Firma Atmel??

: Bearbeitet durch User
von Karl H. (kbuchegg)


Lesenswert?

Martin Müller schrieb:

> 1.) Von welchem Hersteller ist denn der 8051??

Der wird von vielen Herstellern produziert. 8051 ist mehr eine 
Bezeichnung für eine Prozessorarchitektur.

> 2.) Wenn beim 8051 die Taktfrequenz so berechnet wird, wird die
> Taktfrequenz dann beim ATmega8515L genauso berechnet?

Nein.
Andere Baustelle

> 3.) Was bedeutet "MIPS per MHz"?? Ich kann mit dem Begriff "MIPS" nichts
> anfangen...

MIPS   Million Instructions Per Second

Also Anzahl abgearbeiteter Befehle pro Sekunde.

von Martin M. (silent_max)


Lesenswert?

> Der wird von vielen Herstellern produziert. 8051 ist mehr eine
> Bezeichnung für eine Prozessorarchitektur.

Ah ok... Das ist gut zu wissen.

>> 2.) Wenn beim 8051 die Taktfrequenz so berechnet wird, wird die
>> Taktfrequenz dann beim ATmega8515L genauso berechnet?
>
> Nein.
> Andere Baustelle

Und warum ist das eine andere Baustelle?

> MIPS   Million Instructions Per Second
>
> Also Anzahl abgearbeiteter Befehle pro Sekunde.

Vielen Dank für die Erklärung.

von Tom (Gast)


Lesenswert?

Das heißt soviel wie dass der Prozessor bei einem Megahertz 1 Millionen 
Takte pro sekunde macht und dabei bis zu 1 Million Befehle abarbeiten 
kann. Das ist genau der Vorteil der RISC architektur. Die meisten 
Befehle benötigen nur einen Takt. Es gibt aber auch welche die zwei 
Takte oder mehr benötigen. Das führt dazu, das in Wirklichkeit weniger 
als 1 Millionen Befehle pro Sekunde ausgeführt werden können.

von Joe (Gast)


Lesenswert?

1 MIPS per MHz heißt ein Befehl pro Takt wird abgearbeitet.
Bei Atmega i.a. 1 Befehl pro Takt, d.h. das ist das Gleiche.

Andere Baustelle bedeutet, eine andere CPU-Architektur.

von Joe (Gast)


Lesenswert?

Martin Müller schrieb:
> "So wird z. B. bei den meisten 8051-Controllern die Frequenz intern
> durch 12 geteilt, ein mit 24 MHz getakter 8051 arbeitet also eigentlich
> nur mit 2 MHz."

Die Arbeitsfreuqenz ist für eine mehr oder weniger hohe Stromaufnahme 
verantwortlich.

Reduziert man die Arbeitsfrequenz auf 2 MHz, so ist die Stromaufnahme 
gering.
Gleiche Einstellungen sind auch bei den Atmegas möglich. Kleinste 
Frequenz in der Regel 1 MHz.

von Ulrich (Gast)


Lesenswert?

Die 8051 Typen µC gibt es von verschiedenen Herstellern. Beim 
klassischen Typ wurde durch 12 geteilt - einige neuere Ausführungen 
schaffen aber 1 Befehl in 1 oder 2 Zyklen.

Die AVRs sind statisch und können auch deutlich langsamer als mit 1 MHz 
laufen, nur die Programmierung per ISP geht dann auch langsamer und 
braucht andere Einstellungen beim Programmer. Im Prinzip sollte auch 1 
mHz gehen, aber da fehlt mir die Geduld. 32 kHz als Takt sind nicht so 
abwegig, und 125 kHz als interner Takt sind auch vorgesehen.  Neuere 
AVRs haben einen einstellbaren Teiler für den Takt - da kann der Takt 
geteilt werden für weniger Stromverbrauch, bzw. Betrieb mit geringer 
Spannung.

von Martin M. (silent_max)


Lesenswert?

Und wie berechnet man dann bei den neuere Modellen die Taktfrequenz?

von Mike (Gast)


Lesenswert?

Joe schrieb:
> Gleiche Einstellungen sind auch bei den Atmegas möglich. Kleinste
> Frequenz in der Regel 1 MHz.

Ist es das, was z.B. bei einem ATmega328p gemeint ist, wenn im 
Datenblatt steht:
Oscillator Frequency: Min. 0 MHz, Max. 20 MHz?

oder bei einem AT89C51RC:
Oscillator Frequency: Min. 0 MHz, Max. 36 MHz?

von ConvertsQuestionsToanswers (Gast)


Lesenswert?

Martin Müller schrieb:
> Und wie berechnet man dann bei den neuere Modellen die Taktfrequenz?

Die Art der Berechnung hat sich nicht im Laufe der Zeit und mit den 
Modellen stufenweise für alle gleich fortwentwickelt.

Vielmehr ist es so, das jeder Hesteller seine eigene Takterzeugung und 
Aufbereitung entwickelt hat. So stehen z.B. zum heutigen Zeitpunkt 
Prozessoren nebeneinander, bei den der eine genau den Quarztakt auch 
intern verwendet und bei denen ein anderer den Takt noch durch 
irgendeinen Faktor teilt neben dritten die ihn intern vervielfachen und 
die wiederrum neben solchen, die den Takt, nach Wahl des Benutzers 1:1, 
heruntergeteilt oder vervielfacht verwenden.

D.h. im Ergebnis: Eine feste Regel gibt es nicht.

Natürlich kann man aber für jeden individuellen Typ die Frequenz der 
Ausführung bestimmen. Nur muss man dann in jedes Datenblatt 
hineinschauen.

von Axel S. (a-za-z0-9)


Lesenswert?

Martin Müller schrieb:
> Und wie berechnet man dann bei den neuere Modellen die Taktfrequenz?

Die berechnet man gar nicht, die stellt man ein. Z.B. indem man einen 
entsprechenden Quarz an die beiden dafür vorgesehenen Pins anschließt.

Wenn man keine großen Anforderungen an die Stabilität und Genauigkeit 
der Taktfrequenz hat, dann haben so gut wie alle AVR Controller einen 
internen RC-Oszillator mit typisch 8MHz, der in der Fabrik auf ca. +/-1% 
abgeglichen wird. Details verrät das Datenblatt des jeweils verwendeten 
Controllers.


XL

von Peter R. (pnu)


Lesenswert?

Die Taktfrequenz zu berechnen ist meist nicht notwendig, da sie im 
Allgemeinen vom Anwender vorgegeben wird.

Die Rechengeschwindigkeit ist höchstens interessantere Größe eines 
größeren Systems mit sehr umfangreichen Rechenaufgaben. Ihr Wert wird 
auch mit MIPS (mega-instructions per second) angegeben.

MIPS per MHz ist schon wieder Verkäuferchinesisch. Bei einem 
Mikrokontroller ist eine solche Angabe sowieso ein Witz.

Die Programme bestehen da nur zum Bruchteil aus Rechenarbeit. Bei der 
Entscheidungs- und Verknüpfungsarbeit die da vorwiegt, ist der 
Programmaufbau wesentlich und nicht die Rechengeschwindigkeit.

: Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.