Encoder

Ein Encoder ist ein Bauteil für Schaltungen, welches über 2^{n}2n2^{n} Eingänge und genau nnn Ausgänge verfügt. Dabei ist immer nur genau einer der Eingänge gleichzeitig aktiviert. Der binär-codierte Wert dieses Eingangs liegt dann an den Ausgängen an.


Erklärung

Ein Encoder ist ein Bauteil für Schaltungen mit 2^{n}2n2^{n} Eingängen und nnn Ausgängen. Dabei liegt an den Ausgängen immer genau die binär-codierte Nummer des Eingangs an, welcher gerade aktiv ist. Ein Eincoder arbeitet dabei mit einem One-hot-Code.

Durch seine Funktionsweise stellt der Encoder also genau das Gegenstück zum Decoder dar.

One-hot-Code / 1-aus-n-Code

Ein Encoder verwendet bei seinen Eingängen die One-hot-Kodierung (auch 1-aus-n-Kodierung genannt).

Im Gegensatz zur Binärkodierung wird bei der One-hot-Kodierung einer jeden Dezimalzahl ein eigenes Bit zugeordnet. Die Umrechnung arbeitet dabei mit der Position dieses Bits im Code.

Als Beispiel soll nun die Zahl 555 aus dem Dezimalsystem in einen One-hot-Code umgewandelt werden. Dafür muss ein Binärcode erstellt werden, welcher nur an fünfter Stelle eine 111 besitzt. An allen anderen Stellen steht eine 000.

Um immer einen Binärcode gleicher Länge zu haben, werden führenden Nullen verwendet. Der folgende One-hot-Code stellt die Zahl 555 dar:

000100010001 000000000000

Um zum Beispiel den Code

010001000100 000000000000

zurück in eine Dezimalzahl zu verwandeln, wird der Stelle ausgelesen. Die 111 steht hier an siebter Stelle. Also entspricht obiger One-hot-Code der Dezimalzahl 777.

Der größte Nachteil der One-hot-Kodierung ist ihre Länge. Während eine Binärschreibweise der Zahl 151515 dem Binärcode 111111111111 entspricht, so wäre dies in One-hot-Kodierung eine 111 gefolgt von vierzehn Nullen.

Aufbau und Funktion

Der Encoder verwendet nun die One-hot-Kodierung, um je nach Eingang eine Binärcodierung dieser Zahl an den Ausgängen auszugeben.

Bei einem Encoder darf zu jedem Zeitpunkt immer nur genau ein einziger Eingang gleichzeitig aktiv sein! Es ist nicht zulässig, dass mehrere Eingänge gleichzeitig aktiv sind.

Die ist die Wahrheitstabelle eines 444 to 222 Encoders:

S3S3S3
S2S2S2
S1S1S1
S0S0S0
Y1Y1Y1
Y0Y0Y0
000
000
000
111
000
000
000
000
111
000
000
111
000
111
000
000
111
000
111
000
000
000
111
111
000
000
000
000
xxx
xxx

Vollfunktional sieht dies wie folgt aus:

S0
S1
S2
S3

No Input Problem

Wie vielleicht schon aufgefallen ist, ist die Ausgabe eines Encoders beim Eingang S0 = 1S0=1S0 = 1 und bei keinen bewussten Werten an den Eingängen in beiden Fällen 000.

Dies bedeutet, dass nicht unterschieden werden kann, ob S0S0S0 oder Nichts an den Eingängen anliegt.


Priority Encoder

Bei einem normalen Encoder darf nie mehr als ein einziger Eingang gleichzeitig 111 sein.

Um dieses Problem zu lösen wurde der Priority Encoder entwickelt. Hier wird jeweils immer der höchstwertige Eingang weitergegeben. Ein xxx in der Wahrheitstabelle steht dabei für "ist für die Ausgabe egal".

S3S3S3
S2S2S2
S1S1S1
S0S0S0
Y1Y1Y1
Y0Y0Y0
000
000
000
111
000
000
000
000
111
xxx
000
111
000
111
xxx
xxx
111
000
111
xxx
xxx
xxx
111
111
000
000
000
000
xxx
xxx
Next topic:
Multiplexer

Continue
Multiplexer

Jetzt unlimited holen!

Mit simpleclub unlimited bekommst du Vollzugang zur App: Du boostest deine Noten, hast mehr Freizeit und gehst sicher in jede Klausur!

Jetzt unlimited holen

Jetzt simpleclub Azubi holen!

Mit simpleclub Azubi bekommst du Vollzugang zur App: Wir bereiten dich in deiner Ausbildung optimal auf deine Prüfungen in der Berufsschule vor. Von Ausbilder*innen empfohlen.

Jetzt simpleclub Azubi holen