PREVIEW
Encoder (4-to-2)

Encoder (4-to-2)

Encoders/Decoders signal_cellular_alt_2_bar Intermediate schedule 18 min

Interactive Circuit

Codierer

Übersicht

  • Zweck: Der Codierer ist ein 4-zu-2-Prioritätscodierer – eine kombinatorische Digitalschaltung, die aktive Eingangssignale in einen Binärcode umwandelt, der den Eingang höchster Priorität repräsentiert. Er führt die Umkehroperation eines Decodierers aus und reduziert 4 Eingangsleitungen auf einen 2-Bit-Binärcode.
  • Symbol: Der Codierer wird als rechteckiger Block mit 4 Eingangsleitungen (D0, D1, D2, D3) und 2 Ausgangsleitungen (Q0, Q1) dargestellt.
  • Rolle in DigiSim.io: Dient als grundlegender Baustein für Prioritätserkennung, Adresserzeugung und Eingangscodierung in Digitalschaltungen.

Codierer Komponente

Funktionsbeschreibung

Logikverhalten

Der Codierer ist ein Prioritätscodierer, der den Binärcode des aktiven Eingangs mit der höchsten Priorität ausgibt. Sind mehrere Eingänge gleichzeitig aktiv, gibt der Codierer den Code für den höchstnummerierten aktiven Eingang aus – Eingänge mit niedrigerer Priorität werden als „beliebig" (X) behandelt.

Wahrheitstabelle (4-zu-2-Prioritätscodierer):

D3 D2 D1 D0 Q1 Q0
0 0 0 1 0 0
0 0 1 X 0 1
0 1 X X 1 0
1 X X X 1 1

Eingänge und Ausgänge

  • Eingänge:

    • 4 Dateneingänge (D0, D1, D2, D3): Vier Eingangsleitungen, wobei D3 die höchste und D0 die niedrigste Priorität besitzt.
  • Ausgänge:

    • 2 Binärausgänge (Q0, Q1): 2-Bit-Binärcode, der den Eingang höchster Priorität darstellt.

Konfigurierbare Parameter

  • Prioritätshandhabung: Der Codierer verwendet eine Prioritätsauflösung – sind mehrere Eingänge aktiv, hat der höchstnummerierte Eingang Vorrang.
  • Laufzeitverzögerung: Die Zeit, die die Ausgänge benötigen, um nach einer Eingangsänderung zu wechseln.

Visuelle Darstellung in DigiSim.io

Der Codierer wird als rechteckiger Block mit 4 Eingangspins (D0–D3) auf einer Seite und 2 Ausgangspins (Q0, Q1) auf der gegenüberliegenden Seite dargestellt. In einer Schaltung zeigt die Komponente durch Farbänderungen auf den Verbindungsleitungen die aktiven Eingänge sowie den resultierenden Binärcode an den Ausgängen visuell an.

Pädagogischer Wert

Schlüsselkonzepte

  • Binäre Codierung: Veranschaulicht, wie mehrere Signale in eine kompakte Binärform codiert werden können.
  • Datenkomprimierung: Zeigt, wie sich mehrere Signalleitungen auf weniger Leitungen reduzieren lassen.
  • One-Hot-zu-Binär-Wandlung: Verdeutlicht den Zusammenhang zwischen One-Hot- und Binärdarstellungen.
  • Entwurf kombinatorischer Logik: Führt den Entwurf von Logikschaltungen für Codierfunktionen ein.

Lernziele

  • Verstehen, wie mehrere Eingangssignale in ein Binärformat codiert werden können.
  • Den Zusammenhang zwischen Codierern und Decodierern als komplementäre Komponenten erlernen.
  • Den Unterschied zwischen einfachen Codierern und Prioritätscodierern erkennen.
  • Codierer beim Entwurf von Eingangsverarbeitungssystemen und Adressgeneratoren anwenden.
  • Erfassen, wie Codierer die Anzahl der Signalleitungen in digitalen Systemen effizient reduzieren können.

Anwendungsbeispiele/Szenarien

  • Tastenfeld-Codierung: Umwandlung von Tastendrücken in Binärcodes.
  • Prioritätserkennung: Identifikation des aktiven Eingangs mit der höchsten Priorität in Systemen mit Prioritätsanforderungen.
  • Adresserzeugung: Erstellen binärer Adressen aus One-Hot-Auswahlsignalen.
  • Eingangsverarbeitung: Umwandlung verschiedener Eingangsformate in standardisierte Binärcodes.
  • Steuerungssysteme: Codierung mehrerer Statussignale zu einer kompakten Form für die Verarbeitung.

Technische Hinweise

  • Der DigiSim.io-Codierer ist ein Prioritätscodierer: Sind mehrere Eingänge aktiv, gibt er den Binärcode des aktiven Eingangs mit der höchsten Priorität (höchste Nummer) aus.
  • Die 4-zu-2-Konfiguration nutzt 4 Eingänge (D0–D3) und liefert einen 2-Bit-Binärausgang (Q0, Q1).
  • In DigiSim.io reagiert der Codierer unmittelbar auf Eingangsänderungen und modelliert so das kombinatorische Logikverhalten von Prioritätscodierern.

Eigenschaften

  • Eingangsgröße: 4 Eingangsleitungen (D0–D3)
  • Ausgangsgröße: 2 Ausgangsleitungen (Q0, Q1)
  • Laufzeitverzögerung: Zeitdifferenz zwischen Eingangsänderung und stabilem Ausgang
  • Fan-In: Anzahl der Eingangsleitungen, die der Codierer verarbeiten kann
  • Fan-Out: Anzahl der Logikgatter, die jeder Ausgang treiben kann
  • Eingangsvalidierung: Optionale Funktion zur Erkennung gültiger/ungültiger Eingaben
  • Aktivierungssteuerung: Manche Codierer enthalten Aktivierungseingänge zur Betriebssteuerung
  • Eingangspriorität: Ob der Codierer eine Priorität zwischen den Eingängen berücksichtigt
  • Stromverbrauch: Energieverbrauch im Betrieb

Arten von Codierern

  1. Einfache Codierer

    • Schlichter Codierer ohne Prioritäts- oder Validierungsfunktionen
    • Setzt voraus, dass jeweils nur ein Eingang aktiv ist
  2. Prioritätscodierer

    • Lösen mehrere aktive Eingänge nach Priorität auf
    • Geben den Code des Eingangs mit der höchsten Priorität aus
    • Verfügen häufig über ein „Valid Input"-Ausgangsflag
  3. Dezimal-zu-BCD-Codierer

    • 10-zu-4-Codierer für die Umwandlung von Dezimal- in BCD-Werte
    • Werden in numerischen Anzeigen und Tastenfeldanwendungen verwendet
  4. Oktal-zu-Binär-Codierer

    • 8-zu-3-Codierer für die Umwandlung von Oktal- in Binärcode
    • Häufig in Computersystemen
  5. Hexadezimal-zu-Binär-Codierer

    • 16-zu-4-Codierer für die Umwandlung von Hexadezimal- in Binärcode
    • In Adressdecodieranwendungen verwendet
  6. Tastatur-Codierer

    • Spezialisierte Codierer für Tastenfeld- oder Tastatureingaben
    • Wandeln Tastendrücke in Binärcodes um

Anwendungen

  1. Adresserzeugung

    • Umwandlung von One-Hot-Signalen in binäre Adressen
    • Speicheradressierung in digitalen Systemen
  2. Eingangsperipherie

    • Tastatur- und Tastenfeld-Eingangscodierung
    • Umwandlung von Schalter-Arrays in Binärwerte
  3. Befehlsdecodierung

    • Codierung von Befehlsmustern in CPUs
    • Opcode-Erzeugung
  4. Steuerungssysteme

    • Statuscodierung für Steuerungsanwendungen
    • Codierung der Modusauswahl
  5. Digitales Multiplexen

    • Adressauswahl für die Multiplexer-Steuerung
    • Kanalauswahl in Kommunikationssystemen
  6. Datenkomprimierung

    • Reduzierung mehrerer Signalleitungen auf weniger Leitungen
    • Umwandlung paralleler Daten in kompaktere Formate

Implementierungsmethoden

  1. Logikgatter-Arrays

    • Verwendung von OR-Gattern zur Kombination der Eingänge gemäß den Ausgangsbitmustern
    • Realisierbar mit diskreten Bauelementen oder als IC
  2. Integrierte Schaltungen

    • 74148: 8-zu-3-Prioritätscodierer
    • 74147: 10-zu-4-Dezimal-zu-BCD-Prioritätscodierer
    • 74LS348: 8-zu-3-Prioritätscodierer mit Aktivierung
  3. HDL-Entwurf

    • Case-Anweisungen oder bedingte Zuweisungen
    • Priorisierte If-Else-Ketten für Prioritätscodierer
    • Leicht parametrisierbar für unterschiedliche Größen
  4. ROM-basierte Implementierung

    • Verwendung von in ROM gespeicherten Lookup-Tabellen
    • Geeignet für komplexe Codierschemata

Schaltungsimplementierung (4-zu-2-Prioritätscodierer)

Ein 4-zu-2-Prioritätscodierer kann mit OR-Gattern und Prioritätslogik realisiert werden:

graph LR
    D1[D1] --> OR0[OR Gate]
    D3[D3] --> OR0
    OR0 --> Q0[Q0 Output]

    D2[D2] --> OR1[OR Gate]
    D3 --> OR1
    OR1 --> Q1[Q1 Output]

Logik: Q0 ist HIGH, wenn D1 oder D3 der aktive Eingang mit der höchsten Priorität ist. Q1 ist HIGH, wenn D2 oder D3 der aktive Eingang mit der höchsten Priorität ist.

Boolesche Gleichungen (4-zu-2-Prioritätscodierer)

Für den 4-zu-2-Prioritätscodierer:

Q0 = D1·D̄2·D̄3 + D3
Q1 = D2·D̄3 + D3

Vereinfacht (die Prioritätslogik stellt sicher, dass der höchstnummerierte aktive Eingang gewinnt):

Q0 = D3 + D1·D̄2
Q1 = D3 + D2

Wobei + das logische ODER, · das logische UND und D̄ das logische NICHT bezeichnet

Verwandte Komponenten

  • Decodierer: Führen die inverse Operation aus (Binär zu One-Hot)
  • Multiplexer: Werden zusammen mit Codierern für die Datenauswahl verwendet
  • Demultiplexer: Werden zusammen mit Decodierern für die Datenverteilung verwendet
  • Prioritätsarbiter: Ähnlich wie Prioritätscodierer, jedoch mit anderem Ausgangsformat
  • Codewandler: Konvertieren zwischen verschiedenen Codierschemata
  • Binärzähler: Verwenden häufig Codierer zur Zustandserkennung
  • Komparatoren: Werden gelegentlich nach Prinzipien von Codierern realisiert
  • Adressdecodierer: Inverse Operation, in Speichersystemen genutzt

school Lernpfad

arrow_back Voraussetzungen

arrow_forward Nächste Schritte

help_outline Häufig gestellte Fragen

Was ist ein Prioritätsencoder?

Ein Prioritätsencoder gibt den Binärcode des aktiven Eingangs mit der höchsten Priorität aus. Wenn mehrere Eingaben aktiv sind, wird nur die höchstnummerierte kodiert.

Wo werden Encoder verwendet?

Interrupt-Prioritätssysteme, Tastaturkodierung, Positionserkennung und Umwandlung von One-Hot-Darstellungen in Binär.

play_arrow Live-Schaltung ausführen

Weitere Komponenten ansehen