InhaltVorheriges Kapitel Nächstes Kapitel

3 Datenselektoren

3.2 Dekoder/Demultiplexer




Die Umkehrfunktion eines Multiplexers wird vom einem "Demultiplexer" durchgeführt.

Diesem Demultiplexer verwandt, aber einfacher aufgebaut, ist der sogeannte Dekoder (Dekodierer), der deshalb zuerst behandelt werden soll.

Aufgabe des Dekoders ist es, einen Code, der aus 2n Zuständen besteht, umzuwandeln in eine "1 aus n"-Darstellung. Dieser "1 aus n"-Code wird realisiert durch Aktivierung eines einzigen Signals aus einer vorgegebenen Menge von 2n Signalen. Typisches Beispiel für eine derartige Umwandlung ist die Wandlung einer Binärzahl in einen "1 aus n"-Code.

Mit Hilfe der Wahrheitstafel kann dieser Sachverhalt deutlich gemacht werden:

Beispiel: Decodierung einer 3-Bit-Zahl in einen "1 aus 8"-Code

Binärcode
"1 aus 8" - Code
c
b
a
0
1
2
3
4
5
6
7
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
1
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
0
1
0
1
1
1
0
0
0
0
0
0
0
1

Abb. 3.7: Wandlung des Binärcodes in den "1 aus 8"-Code.

Üblicher ist allerdings die Dekoder-Realisierung mit Ausgangsleitungen, die bei Aktivierung auf "0" geschaltet werden ("active low"):

Binärcode
"1 aus 8" - Code
c
b
a
0
1
2
3
4
5
6
7
0
0
0
0
1
1
1
1
1
1
1
0
0
1
1
0
1
1
1
1
1
1
0
1
0
1
1
0
1
1
1
1
1
0
1
1
1
1
1
0
1
1
1
1
1
0
0
1
1
1
1
0
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
0

Abb. 3.8: Schaltsymbol und Wertetafel des Dekoders.

Dekoder werden häufig zur Auswahl (Selektierung) von anderen Bausteinen eingesetzt (s.u.). Um diese Anwendung zu erleichtern, sind sie meistens mit umfangreichen "Freigabe-Eingängen" ("Enable"-Eingängen) ausgestattet. Bausteine dieser Art arbeiten nur dann als Dekoder, wenn die entsprechende Freigabe-Funktion aktiviert wird.

Beispiel:

Abb. 3.9: Dekoder-Baustein 74LS138 (Schaltsymbol nach ANSI/IEEE, IEC, DIN).





Dieser Baustein hat drei "Enable"-Eingänge; zur Freigabe des Dekoders muß gelten:


Wird nur eine dieser Freigabe-Bedingungen nicht erfüllt, geht der Baustein in seinen passiven Zustand über (UND-Funktion), d.h. alle Ausgänge werden auf "1"-Pegel geschaltet.

Tab. 3.1: Wahrheitstafel für den Dekoder 74LS138.

Enable
Adresse
Ausgänge
c
b
a
0
1
2
3
4
5
6
7
x
1
x
x
x
x
1
1
1
1
1
1
1
1
x
x
1
x
x
x
1
1
1
1
1
1
1
1
0
x
x
x
x
x
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
0
1
1
1
1
1
1
1
0
0
0
1
0
1
1
0
1
1
1
1
1
1
0
0
0
1
1
1
1
1
0
1
1
1
1
1
0
0
1
0
0
1
1
1
1
0
1
1
1
1
0
0
1
0
1
1
1
1
1
1
0
1
1
1
0
0
1
1
0
1
1
1
1
1
1
0
1
1
0
0
1
1
1
1
1
1
1
1
1
1
0



3.2.1 Demultiplexer

Durch eine Änderung kann der Dekoder in einen Demultiplexer umgewandelt werden. Die notwendige Modifikation liegt aber nicht im prinzipiellen Aufbau des Bausteins, sondern in der Interpretation der entsprechenden Ein- und Ausgänge.

Aufgabe des Demultiplexers ist die "Verteilung" einer Information (eines Datums), die auf einer Signalleitung empfangen wird, auf eine von 2n möglichen Ausgangs-Signalleitungen.

Der Dekoder enthält lediglich die zur "Adressen"-Auswahl benötigten n Selektoreingänge (a,b,c). Allerdings ist es möglich, höchstwertigen Selektoreingang als Dateneingang "umzuinterpretieren", z.B. den Eingang c.

Da jetzt nur a und b als Selektoreingänge zur Verfügung stehen, bedeutet dies, daß nur vier Dekoder-Ausgangsleitungen genutzt werden (0 - 3); die Ausgänge (4 - 7) bleiben zunächst ungenutzt.

d
Adresse
Ausgänge
ungenutzt
c
b
a
0
1
2
3
4
5
6
7
0
0
0
0
1
1
1
1
1
1
1
0
0
1
1
0
1
1
1
1
1
1
0
1
0
1
1
0
1
1
1
1
1
0
1
1
1
1
1
0
1
1
1
1
1
0
0
1
1
1
1
0
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
0

Tab. 3.2 Demultiplexer-Wertetafel.

Wenn der höchstwertige Adreß-Eingang des Dekoders als Dateneingang benutzt wird, gilt also:

Die Funktion des gesuchten Demultiplexers ist damit erfüllt.


Eine zweite Möglichkeit den Dekoder als Demultiplexer einzusetzen ergibt sich aus der erweiterten Nutzung von Freigabe-Eingängen:

Wird z.B. der oben definierte invertierende Enable-Eingang als Daten-Eingang beschaltet, während die beiden übrigen Enable-Eingänge aktiviert bleiben, gilt wiederum:


Auch in diesem Fall funktioniert der Dekoder offenbar als Demultiplexer.

Um die Funktion des Demultiplexers zu unterstreichen, wird das Schaltsymbol des Dekoders in dieser Anwendung geringfügig modifiziert:

Beispiel:


Abb. 3.10: Der Baustein 74LS138 als Demultiplexer (DEMUX) (Schaltsymbol nach ANSI/IEEE, IEC, DIN).


3.2.2 Dekoder/Demultiplexer-Anwendungen

Bei vielen Anwendungen (z.B. in Mikroprozessorsystemen) besteht die Notwendigkeit der sogenannten "Adressierung".

Der Begriff Adressierung bezieht sich auf die gezielte Auswahl einer vorgegebenen Baugruppe (Beispiel: Speichereinheit, periphere Einheit, etc.) innerhalb eines größeren Systems, um z.B. eine Informationübertragung vorzubereiten.

Unterschiedliche Baugruppen sind meistens an einen einzigen Kommunikationspfad angeschlossen, über den der gewünschte Datenaustausch vorgenommen wird. Die Verbindung an ein derartiges Bussystem kann u.a. mit Hilfe von Bausteinen durchgeführt werden, die Tristate-Ausgänge besitzen.

Abb. 3.11: Typische Mikroprozessor-Anwendung:


Zur Auswahl (Adressierung) der sendeberechtigten E/A-Einheit muß ein Dekoder eingesetzt werden, der so auszuwählen ist, daß gilt:

m 2n ,
mit: m = Gesamtzahl der E/A-Einheiten,
n = Anzahl der Dekoder-Selektoreingänge.

Damit ergibt sich folgender Dekoder-Einsatz:


Abb. 3.12: Dekoder-Einsatz in Mikroprozessor-Systemen.


3.2.3 Dekoder als universeller Logik Block

Die Symmetrie zwischen Multiplexer und Dekoder/Demultiplexer wird dadurch vervollständigt, daß auch Dekoder als universelle Logik-Blöcke eingesetzt werden können.

Wie die nebenstehende Wertetabelle des "3/8"-Dekoders zeigt, erzeugt jeder der acht Dekoderausgänge eine Maxterm-Funktion M0 - M7. Ein Dekoder mit nichtinvertierenden Ausgängen erzeugt dementsprechend alle Minterm-Funktionen m0 - m7.
c
b
a
0
1
2
3
4
5
6
7
0
0
0
0
1
1
1
1
1
1
1
0
0
1
1
0
1
1
1
1
1
1
0
1
0
1
1
0
1
1
1
1
1
0
1
1
1
1
1
0
1
1
1
1
1
0
0
1
1
1
1
0
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
0
Tab. 3.3: Dekoder (active low).


Aus dieser Feststellung folgt, daß jede Boolesche Funktion mit einem Dekoder-Block realisiert werden kann.

Anwendungsbeispiel:


Abb. 3.13: Dekoder als Logik-Block.

In dieser Anwendungsschaltung erzeugt ein "3/8"-Dekoder mit invertierenden Ausgängen (active low) alle möglichen acht Maxterm-Funktionen. Durch NAND-Verknüpfung dieser Maxterme Mi entsteht eine kDNF:

Dementsprechend erzeugt ein Dekoder mit nichtinvertierenden Ausgängen (active high) alle Minterme mi, die bei ODER-Verknüpfung die gewünschte Funktion als kKNF liefert.





InhaltVorheriges Kapitel Nächstes Kapitel