006
10.11.2024, 17:52 Uhr
Ordoban
|
So. KES nummer 1: Bei der schlägt der 5. Selbsttest fehl, das ist der DMA-Test. Ab und zu läuft die auch gar nicht, oder meldet mehrere Fehler. Also als erstes mal den Addressbus mit dem Logikanalyzer beobachtet, und mit der Aufzeichnung einer funktionierenden KES verglichen. Und tatsächlich: der erste Unterschied ist, wenn die KES zum Test Daten mit dem DMA-Kontroller hin und her kopiert. Normalerweise bleibt die CPU solange stehen, bis der DMA fertig ist. Bei dieser KES läuft die CPU voll weiter, und der DMA macht nichts. Also hab ich mal an den Signalen zum DMA-Kontroller gelauscht:
Der DMA-Kontroller macht also schon etwas - der aktiviert das BUSRQ, aber dann nix mehr. Und das BAI (Antwort der CPU auf das BUSRQ) sieht irgendwie komisch aus. Schaun wir mal genauer hin:
Man sieht an den CS impulsen, wie der DMA mit Parametern gefüttert wird, und mit dem letzten Parameter sollte der dann starten. Macht der auch, der setzt das BUSRQ. Dann sollte eigendlich die CPU sehr schnell den Bus freigeben, und BAI setzen. Das BAI kommt auch, aber sehr viel später, und zappelt dann rum. Ja, ich weiß, was ihr jetzt denkt: das BAI-Signal ist unsauber, und der Logikanalyzer misst hier Müll. Hab ich auch gedacht, und nochmal mit dem Oszi gemessen. Der zeigt ein etwas schwaches (ca. 4V), aber ansonsten gutes digitales Signal, genau solche komischen Schwingungen. Es fällt auch noch auf, dass die CPU erst stehen bleibt, wenn das BAI dauerhaft aktiv ist. Kann es vielleicht sein, dass das BUSRQ nicht richtig zur CPU durchkommt? Hab ich direkt mit dem Oszi gemessen: 0V, und die KES ist komplett tot. Der Selbsttest bricht nach dem ersten Fragezeichen ab. Ohne Oszi am BUSRQ der CPU läuft die KES. Hab ich in der Doku gewühlt und das hier gefunden:
Da ist eine kleine Logikschaltung im BUSRQ zwischen CPU und DMA. Das letzte NAND-Gatter ist dieser Russe hier:
Ist das... ist das etwa Rost?
Jap. Rost. Sonst sehen diese beiden KES absolut perfekt aus. Gemessen: Ja, das Gatter ist defekt. IC getauscht, KES läuft! -- Gruß Stefan |