Station - Register

Orientierung - Datenspeicherung mit einem Register

In einem Rechner müssen immer wieder Daten zwischengespeichert werden. Ein Register ist eine Speichereinheit, die diese Aufgabe in einem Rechner übernimmt. Ziel dieser Station ist es, Register-Bausteine kennen zu lernen.

Ein einfacher Register-Baustein

Wir werden Register hier mit geeigneten Hades-Bausteinen simulieren. Die folgende Abbildung zeigt einen sehr einfachen Register-Baustein.

Register
register.hds

Aufgabe 1

(a) Teste den Registerbaustein. Klicke hierzu auf die Schaltflächen und beobachte das Verhalten der Schaltelemente. Welche Funktion hat der D-Eingang / Q-Ausgang / CLK-Eingang des Registerbausteins?

(b) Wenn du mit der Maus auf eines der Schaltelemente fährst und dann die rechte Maustaste drückst, dann kannst du mit [edit] bestimmte Einstellungen verändern. Probiere z.B. verschiedene Darstellungsformate aus (dec, hex, bin). Was verbirgt sich hinter diesen Formatbezeichnern?

(c) Unter number of bits ist hier der Wert 16 eingetragen. Was bedeutet dieser Wert hier?

Ein komplexer Register-Baustein

Die folgende Abbildung zeigt ein Register mit weiteren Steuereingängen.

Register
register.hds

Aufgabe 2

Teste auch diesen Registerbaustein. Welche Funktion haben die zusätzlichen Steuereingänge des Registerbausteins?

Hades-Info

Die gezeigten Bausteine können mit Hades wie folgt erzeugt werden: [rechte Maustaste][Create By Name ...][Klassenbezeichner].

Den einfachen Register-Baustein erhält man mit dem Bezeichner hades.models.rtlib.register.Latch, den komplexeren Register-Baustein man mit dem Bezeichner hades.models.rtlib.register.RegRE. Der D-Eingang ist der Dateneingang, der Q-Ausgang ist der Datenausgang. Der CLK-Eingang ist der Takteingang: Nur bei einer steigenden Taktflanke übernimmt das Register den Wert am Dateneingang. Der ENA-Eingang ist der Enable-Eingang: Nur wenn dieser aktiviert ist, kann der Baustein Daten übernehmen. Der NR-Eingang ist der Reset-Eingang: Wenn man ihn deaktiviert, dann wird das Register mit dem Wert 0 initialisiert.

Die Ein- und Ausgabeeinheiten erhält man mit den Bezeichnern hades.models.rtlib.io.IpinVector und hades.models.rtlib.io.OpinVector.

X

Fehler melden

X

Suche