Das ALU-Outputregister

  1. Einleitung

    Das ALU-Outputregister stellt einen Teil der Schnittstelle zwischen ALU und internem CPU-Bus dar. Es dient hauptsächlich der Verbindung der ALU-Ausgangsleitungen mit dem internen CPU-Datenbus. Zusätzlich ist diese Schaltung für die ZERO- und SIGN-Erkennung und das Setzen der Datenworte 0x00 und 0xFF auf dem CPU-Datenbus zuständig. Die Schaltung zeigt bei einer so einfachen Aufgabe auch keinerlei Besonderheiten.

  2. Die Schaltung des ALU-Outputregisters

    Auf dem folgenden Bild ist die Schaltung des ALU-Outputregisters dargestellt.
    Das Outputregister besitzt einen 40-poligen Steckverbinder, der das Register zusammen mit den temporären Eingangsregistern zum internen CPU-Datenbus führt. Der zweite Stecker ist ein 10-poliger Pfostenstecker über den das Outputregister mit den ALU-Ausgangsleitungen verbunden ist.

  3. Funktionsweise der Schaltung

    Die Schaltung des Outputregisters ist recht einfach. Die Ausgangsleitungen der ALU werden vom Stecker P2 einfach zum Stecker P1 durchgeschleift und sind damit direkt mit dem internen Datenbus der CPU verbunden. An den Datenbusleitungen sind eine verschiedene Diodenmatrixschaltungen angeschlossen. Die Diode D2 generiert das SIGN-Bit für das Flagregister. Das Datenbit 7 des Datenbusses wird dort abgegriffen und auf das Relais REL1 geführt. Das Relais zieht an, wenn das Datenbit 7 gesetzt ist (Logikpegel 1). Die Leuchtdiode D1 zeigt ein gesetztes SIGN-Bit an.
    Die Dioden D3 bis D10 dient der ZERO-Erkennung. Wenn alle Datenbits des CPU-Datenbusses auf Logikpegel 0 (0V oder hochohmiger Zustand) liegen, so fällt das Relais REL4 ab und gibt am Ausgang Logikpegel 1 aus und signalisiert damit die ZERO-Bedingung. Gleichzeitig dienen die Dioden auch zur Erzeugung des Datenwortes 0x00. Wenn das Relais REL5 anzieht, dann sind die Kontakte REL5[3,4] miteinander verbunden und legen die Kathoden der Dioden auf 0V. Damit liegen alle Datenleitungen des Busses auf Logikpegel 0. Dazu muss der CPU-Datenbus vorher frei geschaltet werden.
    Die Dioden D12 bis D19 legen die datenbusleitungen auf Logikpegel 1, wenn das Relais REL6 angezogen ist. Das kann nur erfolgen, wenn das Relais REL5 abgefallen ist und der Relaiseingang REL6[1] mit Logikpegel 1 angesteuert wird. Dadurch kann das Datenwort 0xFF erzeugt werden.

  4. Anschlussbelegung

    Die Anschlussleitungen an P1 zum CPU-Datenbus haben folgende Bedeutungen:
    PinNameFunktionPegel
    1DB0Datenleitung Bit00V,12V,H
    2freikeine BeschaltungH
    3DB1Datenleitung Bit10V,12V,H
    4freikeine BeschaltungH
    5DB2Datenleitung Bit20V,12V,H
    6freikeine BeschaltungH
    7DB3Datenleitung Bit30V,12V,H
    8freikeine BeschaltungH
    9DB4Datenleitung Bit40V,12V,H
    10freikeine BeschaltungH
    11DB5Datenleitung Bit50V,12V,H
    12freikeine BeschaltungH
    13DB6Datenleitung Bit60V,12V,H
    14freikeine BeschaltungH
    15DB7Datenleitung Bit70V,12V,H
    16freikeine BeschaltungH
    17GNDStromversorgung0V
    18freikeine BeschaltungH
    19GNDStromversorgung0V
    20freikeine BeschaltungH
    21GNDStromversorgung0V
    22freikeine BeschaltungH
    23GNDStromversorgung0V
    24freikeine BeschaltungH
    25+12VStromversorgung+12V
    26freikeine BeschaltungH
    27+12VStromversorgung+12V
    28freikeine BeschaltungH
    29freikeine BeschaltungH
    30freikeine BeschaltungH
    31freikeine BeschaltungH
    32freikeine BeschaltungH
    33freikeine BeschaltungH
    34ZEROAusgang ZERO-Erkennung0V,12V
    35freikeine BeschaltungH
    36SET0Setzeingang 0x000V,12V,H
    37freikeine BeschaltungH
    38ZEROAusgang SIGN-Erkennung0V,12V
    39freikeine BeschaltungH
    40SET1Setzeingang 0xFF0V,12V,H

    Die Anschlussleitungen am Stecker P2 führen zu den ALU-Ausgängen. Hier ist das ALU-Outputregister mit dem 8-bit-ALU-Block verbunden. Die Anschlüsse haben folgende Bedeutung:

    PinNameFunktionPegel
    1OUT0ALU-Ausgang Bit00V,12V,H
    2OUT1ALU-Ausgang Bit10V,12V,H
    3OUT2ALU-Ausgang Bit20V,12V,H
    4OUT3ALU-Ausgang Bit30V,12V,H
    5OUT4ALU-Ausgang Bit40V,12V,H
    6OUT5ALU-Ausgang Bit50V,12V,H
    7OUT6ALU-Ausgang Bit60V,12V,H
    8OUT7ALU-Ausgang Bit70V,12V,H
    9GNDSignalmasse0V
    10GNDSignalmasse0V
  5. Wahrheitstabellen

    In der Wahrheitstabelle sind nun die einzelnen Pegel zur Umsetzung der Befehle aufgelistet, so wie sie sich aus der Funktionsweise der ALU ergeben. Durch die ALU-Steuerung müssen also, je nach den Vorgaben der Befehlsdecodierung, diese Pegel an den Eingangsleitungen der ALU-Blöcke erzeugt werden.
    0=logisch 0-Pegel, entspricht 0V
    1=logisch 1-Pegel, entspricht 12V
    H=hochohmiger Zustand
    X=beliebiger Zustand
    Outputsteuerung
    EingangssignaleAusgangssignal P3Erläuterung
    DB0DB1DB2DB3DB4DB5DB6DB7SET0SET1ZEROSIGN 
    H H H H H H H H 0,H 0,H 1 0Der ZERO-Ausgang erkennt einen hochohmigen Datenbus als 0x00
    0 0 0 0 0 0 0 0 0,H 0,H 1 0Der ZERO-Ausgang erkennt das Datenbyte 0x00 auf dem CPU-Datenbus
    0 0 0 0 0 0 0 0 1 0,H 1 0Durch SET0=1 wird das Datenbyte 0x00 auf dem Bus erzeugt, das ZERO-Bit wird gesetzt
    1 1 1 1 1 1 1 1 0,H 1 0 1Durch SET1=1 wird das Datenbyte 0xFF auf dem Bus erzeugt, das SIGN-Bit wird gesetzt
    0 0 0 0 0 0 0 0 1 1 1 0Bei SET1=1 und SET0=1 wird das Datenbyte 0x00 auf dem Bus erzeugt, das ZERO-Bit wird gesetzt
    X X X X X X X 0 0,H 0,H X 0Durch Datenbit DB7=0 wird SIGN nicht gesetzt, ZERO wird gesetzt, wenn das Datenwort 0x00 ist
    X X X X X X X 1 0,H 0,H 0 1Durch Datenbit DB7=1 wird SIGN gesetzt, ZERO wird nicht gesetzt
  6. Schluss

    Das ALU-Outputregister ist relativ einfach aufgebaut und dient hauptsächlich der ZERO, SIGN-Erkennung und der Generierung der Datenworte 0x00 und 0xFF, die für spezielle ALU-Operationen benötigt werden.




Sollte jemand seine Rechte durch eine Veröffentlichung auf dieser oder einer anderen meiner Seiten verletzt sehen, bitte ich um sofortige Kontaktaufnahme. Ich werde die entsprechenden Inhalte umgehend entfernen. Somit sind sowohl ein anwaltlicher Rat als auch eine kostenpflichtige Abmahnung nicht erforderlich! Weiterhin weise ich darauf hin, dass der Inhalt verlinkter Seiten nicht in meiner redaktionellen Verantwortung liegt.
Vielen Dank

www.schlaefendorf.de 2012

www.linux-web.de