Forum: Mikrocontroller und Digitale Elektronik mal wieder AVR übertakten


von Reiner (Gast)


Lesenswert?

Hallo,

das Thema Übertaktung wurde ja schon öfters recht kontrovers 
diskutiert...
Ich stehe nun vor dem Problem, dass ich die Geschwindigkeit eines 
Systems basierend auf mega8515 erhöhen möchte.
Da der Controller per SPI mit einem Schnittstellenbaustein verbunden 
ist, und ich bereits den kleinstmöglichen SPI Prescaler nutze, kann ich 
die Übertragungsrate nur noch durch Übertakten des AVR erhöhen.
Mein Wunsch wäre, den Takt von 16 auf 20 MHz anzuheben, also 25% 
Übertaktung.
Da die Spannungsversorgung über USB erfolgt, muss sich der Controller im 
Worst Case mit 4.5 Volt begnügen, was natürlich ungünstig für's 
Übertakten ist.
Andererseits weiss ich aber, dass der Controller nie bei Temperaturen 
>35 Grad betrieben wird. Laut Datenblatt ist der 8515 ja bis >100 Grad 
zugelassen. Meiner Erfahrung nach hat die Temperatur massiv Einfluss auf 
die Stabilität des Controllers. Ich hatte mal ein unter Normtakt 
laufendes AVR System in einem Boiler, das mit zunehmender Temperatur 
immer häufiger resettete. Kann ich umgekehrt folgern, dass die Betrieb 
weit unter Maximaltemperatur noch viel Übertaktungsspielraum ist?
Erschwerend kommt in meiner aktuellen Anwendung noch dazu, dass ich das 
EEPROM benötige, was ja in Verbindung mit Übertaktung besonders kritisch 
sein soll. Kann ich dies durch ein Verify absichern, oder muss ich 
befürchten, dass zu schnell geschriebene EEPROM Daten schneller ihren 
Wert verlieren können?

Danke für Eure Meinung,
Reiner

von Benedikt K. (benedikt)


Lesenswert?

Muss es unbedingt eine mega8515 sein? Der mega162 ist nahezu kompatibel, 
besitzt aber einen Clock Prescaler. Damit könnte man zum EEPROM 
schreiben auf 10MHz runter takten.

von Michael G. (linuxgeek) Benutzerseite


Lesenswert?

Reiner wrote:

> die Übertragungsrate nur noch durch Übertakten des AVR erhöhen.
> Mein Wunsch wäre, den Takt von 16 auf 20 MHz anzuheben, also 25%
> Übertaktung.

Dann nimmst Du einen Mega, der das kann, also einen 20MHz-Typ. Die 
normalen Typen so stark zu uebertakten geht sicherlich (zumindest auf 
Dauer) in die Hose und ist auch nicht besonders sinnvoll.

von (prx) A. K. (prx)


Lesenswert?

Da der Controller nicht weiss bei welchem Takt er betrieben wird, kann 
er diesen Takt auch nicht gut als Echtzeituhr für's Timing von EEPROM 
Schreib- und Löschzyklen verwenden. Es liegt nahe, dass dafür eine 
andere Zeitquelle verwendet wird.

von Marcus M. (marcus67)


Lesenswert?

Ist eigentlich immer das Gleiche:

- Ist es eine Bastelei/Spielerei, bei der es nichts macht wenn es nicht 
funktioniert und einmal am Tag abstürzt.

- Ist es ein Produkt, das zuverlässig laufen muß


Bei einer Bastelei kann man es probieren, ansonsten lieber sein lassen.
Vor allem EEPROM schreiben ist problematisch.

Beim Übertakten ist die Temperatur nicht so kritisch - sehr wohl aber 
die Betriebsspannung !

Gruß, Marcus

von Ralf S. (spacedog) Benutzerseite


Lesenswert?

Das Problem beim Übertakten von Mikrocontrollern ist nicht, dass die 
Dinger heiss werden. Die sind beinahe gleich warm, ob bei 1 MHz oder bei 
20 MHz betrieben. Der einschränkende Faktor ist die Lesegeschwindigkeit 
des internen Flashs. Ab einer bestimmten Taktrate kommt der Flash nicht 
mehr mit Instruktionen liefern nach. Wenn du dein Programm aus einem RAM 
heraus ausführen kannst, dürften deine 20 MHz kein Problem sein.

von Benedikt K. (benedikt)


Lesenswert?

Ralf Schwarz wrote:
> Wenn du dein Programm aus einem RAM
> heraus ausführen kannst, dürften deine 20 MHz kein Problem sein.

Nur hat ein AVR dummerweise eine Harvard Architektur...

von Ralf S. (spacedog) Benutzerseite


Lesenswert?

> Nur hat ein AVR dummerweise eine Harvard Architektur...

Au ja, sorry. Beim Lesen von Mega8515 hab ich irgendwie 8051 verstanden 
;-) Wie ich die Dinger hasse, verfolgen mich noch im Schlaf.

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.