Was ein Decoder macht
Ein Decoder wandelt einen binären Code in ein „One-Hot"-Signal um: Bei N Eingangsbits aktiviert er genau einen von 2^N Ausgängen — denjenigen, dessen Index dem Binärwert der Eingänge entspricht. Ein 2:4-Decoder hat 2 Eingänge und 4 Ausgänge; ein 3:8-Decoder hat 3 Eingänge und 8 Ausgänge.
Aufbau eines 2:4-Decoders aus Gattern
Mit den Eingängen A und B ist jeder Ausgang einfach das AND der passenden Kombination aus A, B und ihren Komplementen:
- Out0 = ¬A·¬B (aktiv bei A=0, B=0)
- Out1 = ¬A·B (aktiv bei A=0, B=1)
- Out2 = A·¬B (aktiv bei A=1, B=0)
- Out3 = A·B (aktiv bei A=1, B=1)
Was ein Encoder macht
Ein Encoder ist das Spiegelbild: Bei 2^N One-Hot-Eingängen gibt er die N-Bit-Binäradresse desjenigen Eingangs aus, der aktiv ist. Ein 4:2-Encoder nimmt 4 Eingänge und erzeugt einen 2-Bit-Code, der angibt, welcher davon hoch ist.
Prioritäts-Encoder
Ein einfacher Encoder geht davon aus, dass jeweils genau ein Eingang aktiv ist — werden zwei Eingänge gleichzeitig hoch, ist der Ausgang undefiniert. Ein Prioritäts-Encoder löst dies, indem er stets den Code des Eingangs mit der höchsten Priorität (meist dem höchsten Index) ausgibt und Eingänge mit niedrigerer Priorität ignoriert. Genau das tut ein Interrupt-Controller: Mehrere Geräte können gleichzeitig Aufmerksamkeit anfordern, und der Prioritäts-Encoder entscheidet, welches zuerst bedient wird.
Wo sie vorkommen
Decoder wählen einen Speicherchip oder eine RAM-Zeile über einen Adressbus aus; Encoder komprimieren Sensor- oder Interrupt-Leitungen zurück in einen kompakten Binärcode. Boolflow bietet fertige Blöcke Decoder 2:4 / 3:8, Decoder 2:4+EN, Encoder 4:2 und Priority Encoder 8:3 — laden Sie ein Decoder-Beispiel und schalten Sie die Adressbits um, um zu sehen, wie genau ein Ausgang zur Zeit aufleuchtet.