Programmgesteuerter Modellrechner
Programmgesteuerter Modellrechner
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Um einen Modellrechner ablaufen zu lassn, brauchen wir einige Teile:
- Ablaufsteuerung
- Rechnertakt
- Befehlsregister und Speicher
- Rechenwerk
- Befehlsdecoder
- Modellrechner
Werden diese 6 Bauteile aneinandergebaut, kann der Modellrechner in Betrieb
genommen werden. Ich werde mich jetzt erstmal mit den vier verschiedenen
Bauteilen auseinandersetzen:
ABLAUFSTEUEREUNG
- - - - - - - - - - - - - - - -
Die Ablaufsteuerung beherrscht im wesentlichen nur zwei einfache Befehle;
Dies ist zum einem der Befehl ADDIERE und der Befehl SPEICHERE. Beim Befehl
ADDIERE soll der Inhalt des Eingaberegisters in den Akku verschoben werden,
bei dem Befehl SPEICHERE, soll der Inhalt des Akku's an das
Speicherregister weitergegeben werden. Wenn man sich die Schaltung genauer
ansieht, wird man feststellen, das man zwischen den beiden Befehlen mit
Hilfe eines 1bit Befehlsregisters schalten kann. Man kann die Befehle
SPEICHERE und ADDIERE in diesem Register beliebig codieren, ich gehe
jehdoch in meinen weiteren Ãœberlegungen davon aus, das der Befehl SPEICHERE
den Code 1 also Strom fließt bekommt. Der Taktgeber gibt durch eine
Undschaltung den dem Befehl entsprechenden Takt an die übrigen Komponenten
wie Speicher, Akku etc. weiter.
Diese Ablaufsteuerung erfüllt leider nur sehr begrenzte Aufgaben. Um dies
zu ändern, bräuchten wir ein Befehlsregister mit mehreren Stellen. Wir
erweitern es um 1 Stelle, so das es insgesamt 2 hat, und somit 4 Befehle
bearbeiten kann. Diese 4 Befehle sollen, um sich das Leben nachher im
komplexer werdenden Modellrechner zu erleichtern, nicht mehr von Hand
eingegeben werden. Stattdesssen sollen sie aus einem Speicher geholt, und
nacheinander abgearbeitet werden. Um diese 4 Befehle verarbeiten zu können,
werden vier plus einen Takt zur Übernahme benötigt.
RECHNERTAKT
- - - - - - - - - - -
Um der Ablaufsteuerung die benötigten 5 Takte zu geben, verwenden wir die
Schaltung auf Seite 168(Abb. 8.2.1 - 1). Der Binärzähler wird mit jedem
fünftem Takt auf Null durch ein Undelement gesetzt. Das Verzögerungselement
in dieser Schaltung ist von besonderer Wichtigkeit, da ansonsten durch die
Leitungslänge eine Fehlschaltung erfolgen würde.
BEFEHLSREGISTER und SPEICHER
- - - - - - - - - - - - - - - - - - - - - - - - - - - -
Zur Ãœbernahme eines 2bit Befehls aus dem Speicher werden zwei FlipFlops als
Befehlsregister benötigt. Um die entsprechende Speicherstelle zu
addressieren., braucht man ein 4bit Adreßregister. Da unser Modellrechner
nur in 16bit arbeiten soll, d.h. Befehle nur nacheinander abgearbeitet
werden sollen, kann man dieses Adreßregister als Binärzähler aufgebaut
werden, der bei jedem Befehlsübernahmetakt automatisch die nächste
Speicherreihe adreßiert. Das Befehlsregister und das Befehlsadreßregister
dürfen also nur jeden fünften Takt erhalten.
Da wir den Leseanschluss des Rams auf Strom setzen, werden die Daten des
Speichers immer am Datenausgang freigesetzt, und werden so an das
Befehlsadreßregister weitergeleitet. Wird der Leseanschluss des Rams
kurzzeitig Aus - und wieder Eingeschaltet, so wird der nächste Befehl im
Speicher bearbeitet, und an das Befehlsadreßregister weitergegeben.
RECHENWERK
- - - - - - - - - -
Das Rechenwerk besteht aus 4 4bit Schieberegistern, von denen 2 als
Volladdierer und einer als FlipFlop zur Ãœbertragsspeicherung als
Serienaddierwerk fungiert und das 3te Register als Zwischenspeicher
arbeitet. Die Summe aus dem Serienaddierwerk wird in das zweite
Summandenregister übertragen. Jetzt geht der erste Summand scheinbar
verloren, jedoch wird wird er am Ende des Schieberegisters wieder an die
Summe angehängt, was das Serienaddierwerk zu einem Akkumulator macht. Die
Steuerung des Akkumulators erfolgt durch den Befehlsdecoder und durch eine
Und - Oder Schaltung.
Wir müssen jetzt noch lediglich die Verbindung zwischen dem Befehlsregister
und dem Rechwenwerk über den Befehlsdecoder herstellen. Hierfür müssen wir
uns jedoch vorher auf eine einheitliche Codierung festlegen:
Befehl Kurzform Codierung
Taktgeber anhalten STP 00
Inhalt des Eingaberegisters zum Akkumulatorinhalt addieren ADD 01
Akkumulatorinhalt in den Zwischenspeicher übertragen STO 10
Zwischenspeicherinhalt in das EIngaberegister holen GET 11
BEFEHLSDECODER
- - - - - - - - - - - - - -
Bevor man die Decodierschaltung aufbaut, sollte man sich klarwerden, für
welche Zwecke sie genutzt werden soll:
Befehlsanweisung Auswirkungen
STP Taktgeber wird gestoppt, muss jedoch wieder zurückgesetzt werden, damit
er wieder anläuft.
ADD 4 Ausführungstakte müssen geschaltet werden; Das Eingaberegister muss in
diesem Fall als Ringschieberegister arbeiten.
STO Ausführungstakte müssen den Akkumulator erreichen.
GET Taktsignale müssen ins Zwischenspeicherregister und in das
Eingaberegister gelangen
Auf der Seite 173(Abb. 8.2.4 - 1) werden diese Bedingungen realisiert. Es
wurden jedoch noch einige Verzögerer Eingebaut, damit die Taktsignale erst
ankommen, wenn auch die entsprechenden Eingangssignale angekommen sind.
Die Bisher konstruierten Einheiten Rechnertakt,, Befehlsregister und der
Befehlsdecoder bilden das Steuerwerk des Modellcomputers.
Modellrechner
- - - - - - - - - - - - -
Wenn man alle Einzelteile wie in Abbildung 8.2.4 - 1 auf Seite 173 richtig
zusammengeschaltet hat, kann man für den Modellrechner kleinere Peogramme
schreiben, die dieser dann verarbeiten kann. Diese werden dann in das RAM
eingetragen.
917 Worte in "deutsch" als "hilfreich" bewertet