hallo, hat jemand von euch schonmal einen mikrocontroller übertaktet? wenn ja funktionierte er dann noch? was habt ihr für erfahrungen gesammelt? mfg
Ich habe meinen µC mal, rein aus unwissenheit, übertaktet(48MHz anstatt 40MHz). und der haut noch immer hin. aber der controller ist unverwüstlich :D. wies bei den AVRs aussieht, weis ich nicht. ich schätze mal du benutzt einen AVR oder?
bzw. welchen benutzt du und wie schnell soll er denn sein?
die frage war nur mal so interessehalber. wird der µC dann heiß? man könnte ihn ja dann wie eine cpu eines pc's kühlen?! ps: ja AVR mfg
also ich betreibe einen µC mit 17,7Mhz statt den maximalen 16Mhz! Hatte bisher auch keine Probleme damit - aber Finger weg vom EEPROM dann! Viel mehr übertakten würde ich dir nicht empfehlen - da kanns dann schon zu fehlern kommen! kann aber auch gutgehn.... mfg andi
warm ist er bei mir nicht geworden, aber ich glaube, wenn man einen µC anfangen muss zu kühlen, weil er so heiss wird, hat es eh keinen sinn. aber wenn dir die AVRs zu langsam sind, dann steig doch auf DSP-Controller um ;-). die sollten doch für denn anfang reichen, denn immerhin, was ich so gelesen habe, sind die schneller als so mancher Pentium 1 ;-) mfg schoasch
also mein Mega16 wird bei 16MHz leicht warm (so dass man es schon spüren kann) Ich glaube hier irgendwo gelesen zu haben, dass jemand (aus versehen) nen mega 8 mit 20MHz laufen hatte. Ist natürlich nie sicher, ob das funzt, du kannst ja auch nicht jede CPU gleich hoch übertakten.
ape hat mit 18,432MHz, Benedikt mit 24Mhz, bei einem 16MHZ AVR übertaktet, siehe: http://www.mikrocontroller.net/forum/read-10-139739.html#139739 einfach mal nach "MHz" auf der Seite suchen. Viel Spaß beim kühlen, vlt. mal ein AVR mit Wasserkühlung, wäre doch cool? Grüße Quark
Ich lies versehentlich mal einen AT90S1200 statt auf erlaubten 4MHz auf 10MHz laufen und das über mehrere Wochen. Gab keine Probleme und ich konnte auch keine besondere Überhitzung feststellen. Allerdings mußte der Controller auch nur ein paar Pins setzen bzw. einlesen, inwieweit sich die Übertaktung auf Timer etc. negativ auswirkte, kann ich nicht sagen. Gruß Thorsten
Hi Mein AT90S8515 (STK mitgabe), musste aus Quarzmangel auch mit 10MHz laufen anstatt mit den "erlaubten" 8. ISP, Portausgabe und SPI von eine Atmega128 auf den8515 hat noch einwanfrei funktioniert. Wärmeentwicklung konnte ich nach 2 Tagen Dauerbetrieb keine feststellen. Wenn er zu warm wird wird er halt in die Wasserkühlung intergriert ;-) Gruß MISZOU
Der AVR Kern läuft vermutlich auch mit >30MHz noch problemlos. Die meisten auf 16MHz spezifizierten uC laufen auch mit 24MHz, allerding sollte man dann auf solche Sachen wie EEPROM verzichten. Die Geschwindigkeitsgrenze ist nur der Flash Speicher: Ich habe ein einfaches Testprogramm das nur aus 3 Zeilen besteht verwendet: main: lpm r0, Z+ out portd, r0 rjmp main Im Flash befand sich eine Sägezahnkurve, die ich über einen DAC an PortD auf dem Oszi angeschaut habe. Dann die Frequenz langsam hochgedreht. Bei einem 90S2313 ging es bis etwa 18MHz problemlos. Darüber hinaus traten dann Fehler in der Kurve auf, und wenig später hängte sich der uC auf, da er auch einen falschen Befehl gelesen hatte und daher irgendwas anderes ausgeführt hat. Der tiny2313 läuft mit >25MHz, darüber benötigt man allerdings einen externen Takt, da der Quarz dann nicht mehr richtig schwingt, da man über 24MHz nur Oberwellenquarze bekommt.
24MHz mit nem tiny2313? cool ich hab hier noch welche rumliegen muss ma ausprobiern
Ich hab hier auch nen mega128L (also nur bis 8MHz spezifiziert) mit 18,432MHz bei 3,3V laufen und das Programm nutzt so ziemlich alles an Hardware was er hat, nur nicht das EEPROM, aber das werd ich auch mal ausprobieren. Wie Benedikt sagte würde die Logik dieser Chips wahrscheinlich auch noch wesentlich höhere Taktraten verkraften. Engpass sind halt Flash und EEPROM. Ich find die Geschwindigkeit des AVR Flashs sowieso schon recht beeindruckend. Immerhin muss er pro Takt 2 Byte Befehlscode lesen können, das macht bei 16MHz schon 32MB/s.
Die L-Varianten sind bei den ATMegas identisch mit den normalen Versionen, sie werden nur unterschiedlich getestet. Deswegen ist es recht wahrscheinlich, daß eine L-Version auch mit 16MHz läuft. In den Datenblättern sind oft die Verbrauchswerte für Frequenzen über dem nominellen Takt angegeben (beim Mega8 z.B. bis 20MHz). Die liefen also auch schon bei Atmel im Labor mit höherem Takt. Die neuen AVRs (z.B Tiny2313 und Mega88) waren am Anfang mit 24MHz angegeben, aber bevor sie erhältlich waren hat Atmel den Wert auf 20MHz korrigiert. Für mich sieht das so aus, daß sie die 24MHz nicht mit genügend Ausbeute oder nicht stabil genug hinbekommen haben. Damit gibts aber eine gute Chance, daß die trotzdem so schnell laufen. Das Flash ist vermutlich 16bittig, d.h. die 32MB/s werden durch 16 Millioen Lesezugriffe/s realisiert. Markus
Ich hab mal kurz einen AT90S4433 (spezifiziert für 8MHZ) kurz mit 18MHZ betrieben. Zumindest das einfache Testprogramm machte keine Probleme. http://www.mikrocontroller.net/articles/AVR_%FCbertakten und bezüglich x86 übertakten: http://totl.net/Eunuch/index.html
Hallo ich habe einen Mega128 bei 17.7 MHZ am laufen, werde heute mal 18, 20 und 32 mhz probieren. Ich denke das der speicher dann sicher zu langsam wird für 32 mhz aber einen versuch ist es wert.
Man sieht förmlich die stolzgeschwellte Brust all derer, die hier ihre Übertaktung berichten. Bloß ist das keine Aussage für die Serienproduktion und hat somit nicht den allergeringsten praktischen Nutzwert. Wozu also das ganze Brimborium ? Wenn ich nun sehe, daß viel Sachen bei mir mit 1MHz arbeiten oder die CPU bei 8MHz nur 90% Däumchen dreht, dann ist mir erst recht der Sinn solcher "Erfolgsberichte" völlig unklar. Es ist mir allerdings klar, daß eine schlechte Programmplanung selbst einen 100MHz AVR zur lahmen Schnecke machen kann. Peter
Um Peters Beitrag noch zu ergänzen: Der Hersteller macht einen Stempel 8MHz drauf. Was heißt das? Das heißt, dass der Hersteller dafür garantiert, dass das Bauteil im spezifizierten Temperaturbereich bei der angegebenen Takfrequenz korrekt läuft. Du läßt das Bauteil nun einfach bei einer höheren Frequenz laufen und stellst fest, dass es offenbar geht. Was heißt das? - Das heißt: Es geht zumindest bei Deiner Zimmertemperatur und für die Zeit, in der Du es beobachtest. Du weißt nicht, was passieren wird, wenn es etwas wärmer (oder auch kälter) wird und Du weißt nicht, wie lange es geht (ob das Bauteil irgendwann einfach kaputt wegen Überlastung geht). - Du weißt nicht, ob irgendwelche Teilschaltungen des Bauteils nicht mehr vollständig korrekt laufen (das kannst Du so genau gar nicht testen, da hat der Hersteller schon viel Aufwand damit). Was ihr im Hobbybereich mit Einzelstücken (ich würde hier nur gesockelte ICs empfehlen :D ) treibt, ist eine Sache. Versucht sowas nie zu verkaufen! Gruß, Michael
> Wozu also das ganze Brimborium ?
Fun! Warum übertakten viele ihre Athlons und Pentiums? Aus Fun um dann
stolz in Übertakterforen zu berichten, daß sie ihre Athlons 30%
übertakten und wegen der Hitze ne Flüssigkeitskühlung in ihrem Rechner
haben. Nach 3 Monaten dann aber sind die Gesichter groß, wenn der der
Proz den Hitzetod gestorben ist. Naja aber trotzdem schon spannend, was
alles rauszuholen ist.
@Thorsten: Ok! Fun als Argument lass ich gelten. :) Ist zwar nicht mein Geschmack, aber darüber kann man ja bekanntlich nicht streiten. (Jedem das seine!) Gruß, Michael
> Wozu also das ganze Brimborium ? Ganz einfach: Wenn ein AVR mit 16MHz zu langsam ist, man aber sich gerne einen CPLD oder einen anderen CPU sparen will, weil der AVR einfach billiger ist. An den früheren Spezifikationen für den Tiny2313 sieht man, dass Atmel anscheinend diesen problemlos mit 24MHz am laufen hatte, dann aber vermutlich doch der eine oder andere irgendwelche Probleme hatte -> Vermutlich laufen nahezu 100% der Tiny2313 mit 24MHz problemlos, nur die paar wenigen müssen eben auch berücksichtigt werden.
Hi das mit dem PC-Prozessor übertackten hab ich auch mal gemacht: Intel Celeron 300A@450MHz. Der damals preisgümstigste Prozessor lief plötzlich mit 450MHz und damit bei exakt gleichen Takt wie das Pentium2 Topmodell für den vielfachen Preis. Und dank internem Cache rechnet das Teile auch noch schneller als der P2. Hach, das waren noch Zeiten.... ;-) BTW: Der Prozessor tut immer noch seinen Dienst. Matthias
> Bloß ist das keine Aussage für die Serienproduktion und hat somit > nicht den allergeringsten praktischen Nutzwert. Das man sowas in keinem Serienprodukt machen kann, sollte jedem klar sein, für den Hobbyisten sieht das ganze meiner Meinung nach aber schon ganz anders aus. Und um ein paar MP3 Files von einer FAT formatierten SD Karte zu holen und an einen MP3 Decoder weiterzuleiten brauch man auch noch keine 20MHz. Wenn dann aber nebenher noch das vom Decoder erzeugte Audio-Signal gesampelt wird, um anschließend eine FFT rüberlaufezulassen, und das Ergebnis als witziges kleines Balkendiagramm auf einem bunten Display angezeigt wird, nützt mir auch der beste Programmablauf nichts, da sind einfach ein paar mehr MHz notwendig. (Wow, coole Satzkonstruktion :)
ist schon klar, dass es Unterschiede zwischen Hobby- und Berufselektronik gibt. Trotzdem würde ich (je nach Anwendung) auch dem Hobbytechniker zur Vorsicht raten. Wenn Eure Schaltung Euren Labortisch nicht verlässt und eine Vorratskiste mit neuen ICs daneben steht, ist es unkritisch. Sollte man die Schaltung jedoch verschenken, an einem schlecht zugänglichen Ort betreiben oder aus irgendwelchen anderen Gründen eine hohe Zuverlässigkeit benötigen, dann lieber an die Herstellerdaten halten. Gruß, Michael
Wenn ich einen zuverlässigen uC brauche, dann steht der AVR bei mir ziemlich weit hinten auf der Liste... Dass ein uC durch Übertakten kaputt geht halte ich aber für ziemlich unwarscheinlich.
Das sind alles schwammige Aussagen: - Über mangelnde Zuverlässigkeit bei AVRs kann ich mich bisher nicht beklagen. (Welche schlechten Erfahrungen hast Du oder was hast Du gehört?) - Es ist nicht nur eine Frage, ob sie kaputt gehen, es ist auch die Frage, ob sie korrekt funktionieren. Und dass diese korrekte Funktion bei irgend einer Taktfrequenz mal aufhört, ist klar, darüber brauchen wir nicht zu streiten. Ob der uC dabei auch kaputt geht, mag eine andere Frage sein. Ich sage er kann, denn er nimmt unweigerlich mehr Strom auf, wenn er höher getaktet wird. Evtl. wird das mal zuviel... Gruß, Michael (Genug für heute zu diesem Thema :) )
AVRs sind empfindlich gegenüber Spikes o.ä. Der Quarz schwingt nicht stabil, wenn das CKOPT Bit nicht gesetzt ist, wenn z.B. ein CCFL Inverter in der Nähe liegt. Die Warscheinlichkeit, dass sich ein ATmega8515 aufhängt wenn ich meinen Lötkolben ausschalte, ist um ein vielfaches höher, als dass sich z.B. ein AT89C51 aufhängt (in der selben Schaltung, der 8515 ist ja (außer dem Reset Pin) Pin kompatibel zum 8051.
Spike anfällig? Ja, wenn man die externe reset beschaltung vergißt. Die internen pullups reichen bei den meisten AVRs nicht aus. Ein 4k7 half bei meinen schaltungen und seit dem ist (bei mir) das spike problem nich wieder aufgetreten. Nun ja ich persönlich nehme von diesen 'unsicheren' techniken des übertakten eher abstand. Gut optimierter assembler code ist (meist) die antwort auf zeitkritische programm abschnitte. Dies gilt im allgemeinen für alle CPUs. Olaf
Hallo, also MEGA128 läuft bei 20Mhz. Man kann auch übertakten wenn man zum beispiel ein signal verfolgen will, welches "zu schnell ist" weil zwischen den flanken berechnungen bzw vergleiche gemacht werden sollen...
AVR-Empfindlichkeit @Benedikt, @Olaf: Meine AVRs laufen immer mit einem externen 10kOhm Widerstand an Reset. Ich habe noch keine AVR-Abstürze erlebt, auch nicht im EMV-Labor. Gruß, Michael
Zusatz (Mist, dass man hier seine Posts nicht editieren kann!!!) : Ich bin aber (bezügl. AVRs und deren Empfindlichkeit) für jeden Hinweis dankbar! Gruß, Michael
Hat jemand mal ein Testprogramm geschrieben dass überprüft ob Timer und so bei einem übertaktetem µC richtig laufen ? Wie weit gehen denn die µC im Normalfall ? sind 32 MHz noch drinnen (ohne Flash) ? oder gar noch mehr ? Oder muss mann die CPU langsam starten (wenn er den Programmcode aus dem Flash holt) und danach den Speed hochdrehen ?
@Snubnose: Zumindest bei den AVRs wird das Programm immer aus dem Flash ausgeführt, die Frage ohne Flash stellt sich hier also nicht. Interessanterweise besitzt aber der ATTINY26 eine PLL Schaltung, die es wohl erlaubt Timer1 mit 64MHZ zu betreiben.
"Oder muss mann die CPU langsam starten (wenn er den Programmcode aus dem Flash holt) (...)?" Das tut die CPU aber immer, nämlich solange ein Programm läuft ... Bei Prozessoren mit embedded Flash (fast alle AVRs) ist die Zugriffsgeschwindigkeit des Flash die limitierende Größe. Philips' LPC21xx-Reihe bietet daher programmierbare Waitstates für Zugriffe auf's Flash; sonst wären die 60 MHz Taktfrequenz nicht hinzubekommen. Allerdings kann ein ARM auch Code aus dem RAM ausführen, was ein AVR per se nicht unterstützt (mit Ausnahme der USB-AVR-Modelle, die gar kein Flash-ROM haben).
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.