i

Erkundung Mikroprogrammausführung

Automatisierte Aktivierung von Steuersignalen

Das Mikroprogramm dient dazu, den Steueralgorithmus umzusetzen. Im letzten Abschnitt wurde die Befehlsausführung genauer betrachtet. Offen ist noch, wie die im Steueralgorithmus vorkommende Wiederholung und Fallunterscheidung im Mikroprogramm realisiert werden.

Wiederhole:
    # Befehl holen
    10                      PC -> ABus
    ...
    # Befehl decodieren und ausführen
    Falls op(IR):
        1 (inc):
            12              adr(IR) -> ABus
            ...
        2 (dec):
            12              adr(IR) -> ABus
            ...
        3 (jmp):
            12, 9           adr(IR) -> ABus -> PC
            ...
        4 (tst):
            12, 13          adr(IR) -> ABus; incPC
            ...
        5 (hlt):

Experimente mit dem Bonsai-Simulationsprogramm

Bonsai-Logo Du kannst den Simulator auch etwas größer direkt in einem separaten Fenster öffnen: Bonsai-Simulator
Zum Ausdrucken gibt es auch eine Übersicht des Simulators mit seinen Steuerleitungen.

Aufgabe 1

(a) Initialisiere den Bonsai-Simulator, indem du die aktuelle Seite neu lädst. Mit der Takt-Schaltfläche rechts unten (erkennbar am Handsymbol) kannst du einen Taktimpuls auslösen. Führe das mehrfach aus und beobachte das MPC-Register, den Mikroprogrammspeicher und die Steuerwörter im Controlboard. Was wird im MPC-Register verwaltet?

manueller Takt[1]

Aufgabe 2

(a) Initialisiere erneut den Bonsai-Simulator. Steppe noch einmal mit der Takt-Schaltfläche mindestens die beiden ersten Programm-Befehle (30003 und 40008) durch und beobachte dabei insbesondere den Befehlsdecoder. Zu welchen Zeitpunkten wird er aktiv? Wie übersetzt er einen Operationscode in eine Adresse des Mikroprogrammspeichers?

(b) Öffne den Befehlsdecoder-Editor. Hier erkennst du, dass der Befehlsdecoder eine einfache Tabelle ist, die einem Opcode eine zweistellige Zahl zuordnet. Diese zweistellige Zahl ist die Einsprungadresse im Mikroprogramm. Dem Opcode 2 (der für einen dec-Befehl steht) wird also die Einsprungstelle 20 im Mikroprogramm zugeordnet. Probiere einmal aus, wie sich die Ausführung eines Programms ändert, wenn du im Befehlsdecoder dem Opcode 2 die Einsprungstelle 10 zuordnest. Hast du eine Erklärung hierfür?

Controlboard Ausschnitt[2]
(c) Initialisiere erneut den Bonsai-Simulator. Führe einige Takte durch, indem du die Takt-Schaltfläche anklickst. Im MPC-Register sollte irgendeine Zahl größer als 10 / 20 / 30 / 40 stehen.
Aktiviere gezielt das Steuersignal 2 im Controlboard und beobachte, wie sich der Wert des MPC ändert.

Aufgabe 3

Controlboard Ausschnitt[3]
(a) Initialisiere erneut den Bonsai-Simulator. Führe einige Takte durch, indem du die Takt-Schaltfläche anklickst. Im MPC-Register sollte irgendeine Zahl ungleich 0 stehen. Aktiviere jetzt gezielt das Steuersignal 1 im Controlboard. Wie ändert sich der Wert im MPC-Register?

(b) Initialisiere erneut den Bonsai-Simulator. Steppe mit der Takt-Schaltfläche einige Befehle durch und beobachte, wann das Steuersignal 1 aktiviert wird. Welche Funktion hat die Aktivierung des Steuersignals 1?

Quellen

Suche

v
12.3.4.2.5
dev.inf-schule.de/rechner/bonsai/cpu/steuerwerk/mikroprogrammausfuehrung
dev.inf-schule.de/12.3.4.2.5
dev.inf-schule.de/@/page/DAh4WG5dj2oBuJWk

Rückmeldung geben