Ich bin der Meinung in diesem Forum schon mal einen Thread gelesen zu haben, bei dem es darum ging ein EPROM auf Vergesslichkeit hin zu überprüfen. Wenn ich mich recht erinner, wurde das EPROM zunächst mit der normalen Versorgungsspannung mit Hilfe eines EPROM Brenners ausgelesen und die Daten in einer Datei gespeichert. Dann wurde die Versorgungsspannung gesenkt (über einen Adapter... meiner Meinung nach über eine Diode) und das EPROM erneut ausgelesen und die Daten wieder gespeichert. Im Nachgang wurden beide Dateien verglichen und bei Abweichungen war klar... EPROM ist vergesslich. Lieg ich damit richtig und wenn ja war das wirklich über eine Diode, sprich Versorgungsspannung aus EPROM Brenner reduziert um ca. -0,7V über die Diode? Danke
Man sollte das EPROM nicht nur bei normaler und verringerter Spannung auslesen, sondern zusätzlich auch noch bei erhöhter Betriebsspannung, da sich ggf. interne Komparatorschwellen ändern. Durch Vergleich der drei ausgelesenen Daten kann man dann auch besser rekonstruieren, welches ggf. die ursprünglichen Daten waren bzw. denen am ehesten entspricht. Bessere EPROM-Brenner erlauben eine Feinjustage der Betriebs- und Programmierspannungen.
Torsten K. schrieb: > Wenn ich mich recht erinner, wurde das EPROM zunächst mit der normalen > Versorgungsspannung mit Hilfe eines EPROM Brenners ausgelesen und die > Daten in einer Datei gespeichert. Dann kannst Du doch gleich die Daten neu speichern und hast dann wieder zehn Jahre Ruhe.
Danke für das bisherige Feedback. Natürlich kann ich den EPROM Inhalt ggf. neu brennen um Ruhe zu haben, sofern mir diese Datei im Original vorliegt. Mir geht es hier erstmal darum mögliche Fehler einzugrenzen. Sprich wenn etwas ausfällt wo so ein EPROM drin ist zu prüfen ob z.B. das EPROM die Fehlerquelle für einen Ausfall sein kann. Daher die Frage nach einer Testmöglichkeit und welche Spannungsabweichungen von der normalen Versorgungsspannung hier genutzt werden können/sollten und ob diese oben beschriebene Prozedur auch tatsächlich angewendet wurde oder ggf. noch wird. Dient also auch ein wenig meinen Kenntnisstand zu erweitern. Danke
Torsten K. schrieb: > Mir geht es hier erstmal darum mögliche Fehler einzugrenzen. Dann nutze die Vorschläge von Andreas. Wenn Du eine Spannung gefunden hast, bei der Du gültige Daten auslesen kannst, würde ich trotzdem konplett neu einschreiben.
Aber bitte auf einen neuen EPROM! Wir hatten hier schon mal das Elend, dass er das auf den Originalen brennen wollte und das schief gegangen ist. Das Gejammer war groß.
Torsten K. schrieb: > Lieg ich damit richtig und wenn ja war das wirklich über eine Diode, > sprich Versorgungsspannung aus EPROM Brenner reduziert um ca. -0,7V über > die Diode? Professionelle Programmiergeräte haben eine Verify High/Low-Funktion. Da wird bei 4,5 und 5,5 V gegengelesen. Wenn Du bei 5,0 V ausliest und bei 4,5 und 5,5 V gegenliest, kannst Du (fast immer) der Mehrheit glauben. Ob das EPROM jetzt bei Unter- oder Überspannung Mist ausgibt hängt vom Aufbau der sense amplifier ab. EPROMs mit verblasstem Inhalt werden langsamer. Es kann also gut sein, dass die Daten bei 100 kHz im EPROMMer fehlerfrei sind und in der Applikation bei 4 MHz troztdem ausfallen. Die Hersteller sehen es nicht so gerne, aber man kann EPROMs bei identischem Inhalt auch programmieren ohne sie vorher zu löschen. So müssen historisch wertvolle Aufkleber, Seriennummern etc nicht entfernt werden.
Man könnte natürlich auch ein Prüfbyte einführen, z.B. ist jedes 5 Byte auf dem EPROM ein Prüfbyte dass sich aus den 4 vorherigen Bytes berechnen lässt. Passt das Prüfbyte nicht mehr zu den vorherigen Bytes weiß man, dass das EPROM etwas vergessen hat.
M. K. schrieb: > Man könnte natürlich auch ein Prüfbyte einführen, z.B. ist jedes 5 Byte > auf dem EPROM ein Prüfbyte dass sich aus den 4 vorherigen Bytes > berechnen lässt. Passt das Prüfbyte nicht mehr zu den vorherigen Bytes > weiß man, dass das EPROM etwas vergessen hat. Dazu passend patcht man den Microcode des Controllers, so dass er beim fetch jede fünfte Operation auslässt. Spass beiseite, Prüfsummen sind Stand der Technik seit den '70ern. Üblicherweise nimmt man hierfür das letzte oder die letzten beiden Bytes. Wegen begrenzter Rechenleistung reichte es aber meist nur für eine Modulo-Addition, so dass Mehrfachfehler u.U. nicht erkannt werden.
soul e. schrieb: > Spass beiseite, Prüfsummen sind Stand der Technik seit den '70ern. Natürlich ist das Stand der Technik seit Jahrzehnten aber nicht jeder implementiert es und nicht jeder, der es implementiert, prüft wirklich. Da hatte ich vor ein paar Monaten mit dem Uart eine nette Diskussion wo es um was ähnliches ging. Paritätsbit war zwar implementiert (8O1 war eingestellt), wurde aber nicht geprüft. Naja, dann braucht man auch kein Paritätsbit definieren.
Es gab Ende der Achtziger mal einen Versuch, die Fehlerhäufigkeit von RAMs durch Weltraumstrahlung zu messen. Der Amateurfunksatellit Uosat 11 hatte mehrere RAMs an Bord, die auf Bitfehler überprüft wurden. http://digitalcommons.usu.edu/cgi/viewcontent.cgi?article=2386&context=smallsat Über Südamerika gibt es einen hot spot, der durch den Verlauf der Magnetfeldlinien bedingt ist. Gefunden mit "Uosat 11 SEU anomaly" SEU heißt single event upset
soul e. schrieb: > Die Hersteller sehen es nicht so gerne, aber man kann EPROMs bei > identischem Inhalt auch programmieren ohne sie vorher zu löschen. Das setzt aber voraus, daß "kippende" Zellen in Richtung "gelöscht" (d.h. 1) kippen, und nicht andersrum (in Richtung "programmiert", also 0). Beim Programmieren eines EPROMs kann nur aus einer 1 eine 0 gemacht werden, andersrum geht das nur mit der UV-Lampe.
soul e. schrieb: > Prüfsummen sind Stand der Technik seit den '70ern. Vorteil war, daß man gleich auf dem EPROM die Prüfsumme mit gebrannt hat und sie vom System öfter mal geprüft wurde. Wenn man natürlich 2 verschiedene Verfahren benutzt, wird die Zahl der Fehler, die durch "zufällige Ergänzung wieder richtig wurde", wesentlich reduziert. Ein Vorteil der Systemprüfung ist natürlich auch, daß die Daten mit der ECHTEN System-Geschwindigkeit abgerufen werden und nicht mit der Geschwindigkeit irgendeines lahmen Programmiergeräts.
Rufus Τ. F. schrieb: > Das setzt aber voraus, daß "kippende" Zellen in Richtung "gelöscht" > (d.h. 1) kippen, und nicht andersrum (in Richtung "programmiert", also > 0). Ich habe noch nie erlebt, dass bei einem EPROM mit verblassenden Daten (egal ob durch Sonnenlicht oder Alterung) sich diese in Richtung 0 verändern. Eigentlich nimmt immer die Anzahl der Einsen zu. Im Gate fliesst Ladung ab, damit nähern wir uns dem gelöschten Zustand.
soul e. schrieb: > noch nie erlebt Ja, üblicherweise sind die leeren Zellen FF. Bei krankem EPROM hatte ich auch schon zwischendurch Fehler wo etwas war. Es gab aber neben Datenfehlern auch noch Adressfehler, die aber weniger auf "Vergesslichkeit" zurückzuführen sind.
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.