faecher:informatik:oberstufe:techinf:mikroprogrammierung:mikroprogramme:start

Mikroprogramme

Im oberen linken Fensterbereich können sogenannte "Mikroprogramme" gespeichert werden. Ein Mikroprogramm besteht aus einer Reihe von Angaben, welche Tore geöffnet werden sollen, jede Zeile entspricht dabei einem ALU Takt. Um Mikroprogramme auszuführen muss man links unten die Option "Automatisch aus MPS" wählen.

Mikroprogramme können gespeichert und Geladen werden, dafür sind die Menüpunkte MPS laden und MPS speichern im Datei Menü zuständig.

beispiel01.zip


Beispiel 1

Lade die Datei beispiel01.zip herunter, entpacke sie und lade sie in Mikrosim.

Untersuche das Verhalten des Mikroprogramms.

  • Einstellung: Torsteuereung automatisch aus MPS.
  • Mit könne alle Register auf 0 zurückgesetzt werden und das Programm beginnt beim ersten Mikrobefehl.
  • Mit der Schaltfläche kannst du einen ALU Takt ausführen.
  • Mit kannst du das ganze Mikroprogramm ablaufen lassen. Um das Programmende zu signalisieren, muss der Wert in der Spalte FA beim letzten Befehl des Mikroprogramms auf 00 geändert werden.

(A1)

  • Setze RAM, den Mikroprogrammspeicher und die Register zurück.
  • Schreibe ein Mikroprogramm, das in die Zelle RAM[00] den Wert 01, in RAM[01] den Wert 03 und in RAM[02] den Wert 05 schreibt.
  • Erweitere das Programm, so dass es in RAM[03] die Summe RAM[00]+RAM[01]+RAM[02] schreibt. Die Summe soll dabei vom Programm berechnet werden, nicht von dir.
  • Versuche, mit möglichst wenigen Zeilen auszukommen.

Lösungsvorschlag


(A2)

  • Setze RAM, den Mikroprogrammspeicher und die Register zurück.
  • Speichere zwei unterschiedliche Werte in Zelle RAM[00] und RAM[01].
  • Schreibe ein Mikroprogramm, das die Werte in Speicherzelle 00 und 01 vertauscht, ohne dabei eine weitere RAM-Speicherzelle zu benutzen. Register dürfen hingegen benutzt werden.

Lösungsvorschlag


(A3)

  • Setze RAM, den Mikroprogrammspeicher und die Register zurück.
  • Schreibe den Wert 07 in die RAM-Zelle 00.
  • Schreibe ein Mikroprogramm, das den Wert aus Speicherzelle 00 mit 8 multipliziert und das Ergebnis in die Zelle 01 schreibt. Der RAM darf während der Multiplikation nicht benutzt werden, die Register hingegen schon. Tipp: Eine Multiplikation mit 8 kann als mehrfache Verdoppelung realisiert werden! Wie kannst du wiederum mit den vorhandenen Mitteln einen Wert verdoppeln?! Das Programm lässt sich mit sehr wenigen Zeilen realisieren!
  • Überprüfe das Ergebnis (denke daran, dass das Ergebnis in Hexadezimal angegeben ist).

Lösungsvorschlag


(A4)

  • Schreibe ein Mikroprogramm, das die ersten Zahlen der Fibonacci-Reihe in den RAM speichert. Die Fibonacci-Reihe beginnt mit den Zahlen 0 und 1, jede weitere Zahl ergibt sich aus der Summe ihrer beiden Vorgänger. Zur Kontrolle: 0, 1, 1, 2, 3, 5, 8
  • faecher/informatik/oberstufe/techinf/mikroprogrammierung/mikroprogramme/start.txt
  • Zuletzt geändert: 02.06.2024 13:36
  • von Marco Kuemmel