Facharbeit "Bau eines Relaiscomputers"
von Kilian Leonhardt
Email: mail@kilian-leonhardt.de

Zurück zum Inhaltsverzeichnis

Programmierung: Prinzip

Abgesehen von der in 3.1 beschriebenen „zählen“- „ausführen“-Reihenfolge, muss der Sprung berücksichtigt werden. Zu dem Prinzip hier eine kleine Skizze:

Die Befehle für die einzelnen Module, die sich in der Skizze befinden, sind diejenigen Befehle, welche von einer weiteren Steuerung automatisiert werden müssen. Direkt mit dem Datenbus verbunden ist NUR der Zwischenspeicher, der Binärzähler und der Datenschalter.
Ausführung des Programms bedeutet also in der Maschine ständig „ausführen und zählen“, bei verbundenem Datenschalter. Soll gesprungen werden, muß zunächst vom Programm die Zielzeile in den Zwischenspeicher geladen werden. Wenn dies geschehen ist, und ein Sprungbefehl kommt, werden zunächst die Datenleitungen der Speicherchips vom Daten- und Befehlsbus getrennt, dann wird der gespeicherte Wert aus dem Zwischenspeicher in den Binärzähler geschrieben, und der Zwischenspeicher gelöscht. Dann kann es weitergehen mit „ausführen und zählen“.

Dies ist in der Steuerung, die vom Aufbau her gleich den Steuerungen für die internen Programme ist, realisiert. Deshalb gibt es hier nur das Diagramm für die Befehlsreihenfolge mit ein paar Anmerkungen:

Ich werde nun den Zweck der kleinen Zusatzschaltung erläutern. Die Zustände werden, wie weiter oben beschrieben, bei der fallenden Taktflanke von Zelle zu Zelle (also von Schritt zu Schritt) weitergegeben. Würde man den Sprungbefehl direkt an Relais 3 anschließen, so gäbe es Probleme, da der Sprungbefehl auch ein Befehl ist, der vom Befehlsdecoder decodiert wird. Daher ist er nur so lang, wie der Befehlstakt, der aber von Schritt 1 überhaupt erzeugt wird. Der Sprungbefehl tritt also nur in Schritt 1 auf, ist also bei der fallenden Flanke bei aktivierter Zelle 2 (Schritt 2) schon längst vergessen. Deshalb dieses kleine Flipflop, welches sich „merkt“, daß ein Sprungbefehl gekommen ist. Wenn die Schaltung in den „Sprungteil“ (Schritte 3-6) eingeschert ist, wird dieses Flipflop wieder auf 0 gesetzt.

Diese Steuerung kann jederzeit mit einer Befehlsleitung deaktiviert (Ein Relais unterbricht die Stromversorgung der Steuerung) und aktiviert werden. Außerdem gibt sie über einen Ausgang an, ob sie aktiv ist. (für die interne Programmsteuerung, siehe 2.3.2.7.3)


Zurück zum Inhaltsverzeichnis