Informatik / TAMS / Applets / Jython Console / T1: Überprüfung digitaler Schaltungen
Beschreibung
Diese Seite demonstriert die Einbindung des Hades-Frameworks zur Simulation digitaler Schaltungen in die interaktiven Skripte. Die Grundidee ist es, den Hades-Simulator entweder als Applikation oder im Applet-Modus vom Skript aus zu starten und fernzusteuern. Da aus signierten Applets heraus auch Dateien auf der lokalen Festplatte des Anwenders geladen und gespeichert werden dürfen, können die Studierenden problemlos ihre eigenen Schaltungen sichern und für die Überprüfung laden.

Die Applets auf dieser Seite verwenden wieder die digital-signierte Version unserer interaktiven Jython-Console und laden bei Bedarf kleinere Jython-Skripte direkt vom Webserver nach. Abhängig von den Sicherheitseinstellungen Ihres Browsers bzw. ihres JREs bekommen Sie eventuell eine Nachfrage und Warnung. Bitte bestätigen Sie die Ausführung des signierten Applets. Achtung: Wegen des zusätzlichen Downloads des Hades-Simulators ist ein Download über Modem-Verbindungen nicht zu empfehlen.

Hades-Simulator
Starten des Hades-Simulators

Beim Ausführen (Doppelklicken) des folgenden Skripts wird der Hades-Simulator gestartet und es wird eine Testschaltung in den Editor geladen. Dieses Vorgang lädt mehrere hundert Java-Klassen und kann durchaus einige Sekunden dauern. Bitte warten Sie ab, bis das Fenster mit dem Graphikeditor erscheint. Bei der Schaltung im Editor handelt es sich um einen 4-bit Binärzähler mit Enable-Eingang und Carry-Ausgang; dieses ist gleichzeitig eine korrekte mögliche Lösung für die Aufgabe T1.5.5.

Sobald die Schaltung geladen ist, können Sie eine interaktive Simulation durchführen. Durch Anklicken der Eingangs-Schalter (links unten) ändert sich jeweils der Ausgangswert eines Schalters von 0 nach 1 bzw. wieder 0 und die resultierenden Werteänderungen der Schaltung werden berechnet und graphisch dargestellt. Zusätzlich kann die Schaltung auch während der Simulation verändert werden, etwa durch Löschen oder Hinzufügen von Leitungen und Gattern. Das Hades-Tutorial enthält eine ausführliche Anleitung zur Bedienung des Editors und Simulators; die Kurzanleitung fasst auf 2 Seiten (PDF-Format) alle Grundfunktionen zusammen. Weitere Informationen finden sich auf unseren Webseiten zum Hades-Simulations-Framework.


Überprüfung
Das folgende Skript überprüft, ob die aktuelle Schaltung im Hades-Editor bereits die Anforderungen von Aufgabe T1.5.5 erfüllt. Dazu wird der Inhalt der Editors in eine temporäre Datei gesichert und dann eine Simulation dieser Schaltung gestartet. Während der Simulation wird aus den Ausgangswerten der Schaltung eine digitale Signatur berechnet, die nur für die korrekte Schaltung mit dem vorgegebenen Master-Wert der Signatur übereinstimmt. Falls Sie zuerst das vorige Applet ausgeführt haben, sollte die Überprüfung das Resultat 'korrekt' liefern. Anders sieht es aus, wenn Sie möglicherweise bereits Änderungen an der Schaltung vorgenommen haben (z.B. eine Leitung gelöscht haben):


Überprüfung
Beim Ausführen des folgenden Applets wird eine noch nicht korrekte Fassung der Schaltung von Aufgabe T1.5. in den Editor geladen. Falls Sie die aktuelle Schaltung im Editor modifiziert haben, sollten Sie diese möglicherweise speichern.

Das folgende Skript überprüft, ob die aktuelle Schaltung im Hades-Editor bereits die Anforderungen von Aufgabe T1.5.5 erfüllt. Falls Sie zuvor das obige Applet ausgeführt haben, werden Sie die Schaltung zunächst überprüfen und reparieren müssen, damit die Überprüfung eine korrekte Lösung bestätigt:


Hilfestellung
Leider liefert die Signaturanalyse während der Simulation nur eine Aussage darüber, ob eine Schaltung schon der geforderten Spezifikation entspricht. Dies gilt genau dann, wenn die berechnete und erwartete Signatur übereinstimmen. Aus Abweichungen der Signaturen lässt sich dagegen praktisch nicht auf die eigentliche Fehlerursache zurückschließen.

Hier bietet allerdings der Hades-Editor selbst einige Hilfsfunktionen. Zum Beispiel kann eine Schaltung mit "Options->Check-Design" auf strukturelle Fehler überprüft werden, die dann auch graphisch hervorgehoben werden. Die größte Hilfe allerdings ergibt sich durch direkte Beobachtung der Schaltung während der interaktiven Simulation.

Trotzdem kann auch die Signaturanalyse eingeschränkt als Hilfestellung eingesetzt werden. Das folgende Beispiel berechnet nicht eine einzelne, sondern fünf separate Signaturen für jeden einzelnen Ausgang der Zählerschaltung. Dies erlaubt es, schon funktionierende Teilschaltungen zu erkennen und die Fehlersuche schnell einzugrenzen. Dies erkennt man am folgenden Beispiel, wo immerhin einige Ausgänge der Schaltung schon funktionieren:



19.07.2004 Impressum
http://tams-www.informatik.uni-hamburg.de/applets/jython/index.html