<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=1-aus-n-Decoder</id>
	<title>1-aus-n-Decoder - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=1-aus-n-Decoder"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=1-aus-n-Decoder&amp;action=history"/>
	<updated>2026-05-28T13:03:13Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=1-aus-n-Decoder&amp;diff=775847&amp;oldid=prev</id>
		<title>imported&gt;MovGP0: + /* Implementierung in Verilog */ + /* Implementierung in VHDL */</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=1-aus-n-Decoder&amp;diff=775847&amp;oldid=prev"/>
		<updated>2024-07-13T21:41:51Z</updated>

		<summary type="html">&lt;p&gt;+  &lt;span class=&quot;autocomment&quot;&gt;Implementierung in Verilog: &lt;/span&gt; +  &lt;span class=&quot;autocomment&quot;&gt;Implementierung in VHDL&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Datei:1-aus-n-Decoder.svg|framed|Schaltung eines 1-aus-n-Decoders&amp;lt;br/&amp;gt;Bei monolithischen [[Integrierter Schaltkreis|integrierten Schaltkreisen]] werden statt der [[Und-Gatter]] häufig [[NAND-Gatter]] verwendet.]]&lt;br /&gt;
&lt;br /&gt;
Ein &amp;#039;&amp;#039;&amp;#039;1-aus-n-Decoder&amp;#039;&amp;#039;&amp;#039; ist eine Schaltung mit &amp;#039;&amp;#039;n&amp;#039;&amp;#039; Ausgängen und [[Logarithmus#Bezeichnungen|log&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;(&amp;#039;&amp;#039;n&amp;#039;&amp;#039;)]] Eingängen. In der Praxis muss aber die Anzahl der Eingänge auf die nächste ganze Zahl aufgerundet werden, wenn log&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;(&amp;#039;&amp;#039;n&amp;#039;&amp;#039;) keine ganze Zahl ist. Der jeweils adressierte Ausgang geht dann auf High, wenn die [[Dualzahl]] &amp;#039;&amp;#039;A&amp;#039;&amp;#039; am Eingang der Nummer &amp;#039;&amp;#039;J&amp;#039;&amp;#039; des betreffenden Ausgangs &amp;#039;&amp;#039;y&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;J&amp;lt;/sub&amp;gt; entspricht. Die anderen Ausgänge werden dann nicht angesteuert und bleiben auf Low.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Wert&lt;br /&gt;
!rowspan=&amp;quot;6&amp;quot;|&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;| Eingang&lt;br /&gt;
!rowspan=&amp;quot;6&amp;quot;|&lt;br /&gt;
!colspan=&amp;quot;4&amp;quot;| Ausgang&lt;br /&gt;
|-&lt;br /&gt;
! A=J&lt;br /&gt;
! a&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;&lt;br /&gt;
! a&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&lt;br /&gt;
! y&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;&lt;br /&gt;
! y&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;&lt;br /&gt;
! y&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;&lt;br /&gt;
! y&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0||0&lt;br /&gt;
| 0||0||0||1&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0||1&lt;br /&gt;
| 0||0||1||0&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| 1||0&lt;br /&gt;
| 0||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| 1||1&lt;br /&gt;
| 1||0||0||0&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Bausteine==&lt;br /&gt;
&lt;br /&gt;
Die 1-aus-n Codierung wird direkt in handelsüblichen Bauelementen realisiert.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable  sortable&amp;quot;&lt;br /&gt;
|+ Gebräuchliche [[Integrierter Schaltkreis|IC]]-Bausteine&lt;br /&gt;
|- class=&amp;quot;hintergrundfarbe6&amp;quot;&lt;br /&gt;
! Familie&lt;br /&gt;
! [[Complementary Metal Oxide Semiconductor|CMOS]]&lt;br /&gt;
! [[HCMOS]]&lt;br /&gt;
! [[Transistor-Transistor-Logik|TTL]]&lt;br /&gt;
! Funktion&lt;br /&gt;
|-&lt;br /&gt;
| 74xx138&lt;br /&gt;
|&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74HC138 74HC138]&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74LS138 74LS138] &lt;br /&gt;
| 3 zu 8 Dekoder/Demultiplexer&lt;br /&gt;
|-&lt;br /&gt;
| 74xx147&lt;br /&gt;
|&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74HC147 74HC147]&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74LS147 74LS147]&lt;br /&gt;
| 10 zu 4 (Dezimal zu BCD) Encoder&lt;br /&gt;
|-&lt;br /&gt;
| 74xx148&lt;br /&gt;
|&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74HC148 74HC148]&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74LS148 74LS148]&lt;br /&gt;
| 8 zu 3 Prioritäts-Encoder&lt;br /&gt;
|-&lt;br /&gt;
| 74xx151&lt;br /&gt;
|&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74HC151 74HC151]&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74LS151 74LS151]&lt;br /&gt;
| 8 zu 1 Multiplexer&lt;br /&gt;
|-&lt;br /&gt;
| 74xx238&lt;br /&gt;
|&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74HC238 74HC238]&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74LS238 74LS238]&lt;br /&gt;
| 3 zu 8 Dekoder/Demultiplexer&lt;br /&gt;
|-&lt;br /&gt;
| 74xx42&lt;br /&gt;
|&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74HC42 74HC42]&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74LS42 74LS42]&lt;br /&gt;
| 10 zu 4 (Dezimal zu BCD) Dekoder&lt;br /&gt;
|-&lt;br /&gt;
| 74xx4538&lt;br /&gt;
|&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74HC4538 74HC4538]&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74LS4538 74LS4538]&lt;br /&gt;
| 4 zu 16 Dekoder/Demultiplexer&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| 74xx4028&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=CD4028 CD4028]&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74HC4028 74HC4028]&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74LS4028 74LS4028]&lt;br /&gt;
| 10 zu 4 (Dezimal zu BCD) Dekoder&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=CD4532B CD4532B]&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| 8 zu 3 Prioritäts-Encoder&lt;br /&gt;
|-&lt;br /&gt;
| 74xx4514&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=CD4514B CD4514B], [https://www.alldatasheet.com/view.jsp?Searchword=CD4514B CD4515B]&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74HC4514 74HC4514]&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74LS4514 74LS4514]&lt;br /&gt;
| 10 zu 4 (Dezimal zu BCD) Encoder&amp;lt;br/&amp;gt;(Teil eines größeren Dekoder/Multiplexer-Systems)&lt;br /&gt;
|-&lt;br /&gt;
| 74xx4051&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=CD4051B CD4051B], CD4052B, CD4053B&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74HC4051 74HC4051]&lt;br /&gt;
| [https://www.alldatasheet.com/view.jsp?Searchword=74LS4051 74LS4051]&lt;br /&gt;
| 3 zu 8 Encoder&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Diese Logikfunktion wird darüber hinaus in komplexen integrierten Logikbauelementen verwendet. Beispielsweise wird diese Funktion als Zeilendecoder und Spaltendecoder zur Adressierung der Zeilen und Spalten in Speicherbauelementen ([[Random-Access Memory|RAM]], [[Festwertspeicher|ROM]], [[Electrically Erasable Programmable Read Only Memory|EEPROM]], …) verwendet. Darüber hinaus kann diese Logikfunktion auch in einer [[Programmierbare logische Schaltung|programmierbaren logischen Schaltung]] (PLD) oder einem [[Field Programmable Gate Array|FPGA]]-Bauelement oder einem [[Anwendungsspezifische integrierte Schaltung|ASIC]]-Bauelement realisiert werden.&lt;br /&gt;
&lt;br /&gt;
== Implementierung in Verilog ==&lt;br /&gt;
&lt;br /&gt;
Das folgende Beispiel zeigt einen 2-zu-4 Bit Kodierer in [[Verilog]]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;verilog&amp;quot;&amp;gt;&lt;br /&gt;
module one_hot_encoder (&lt;br /&gt;
    input [1:0] binary_in,&lt;br /&gt;
    output reg [3:0] one_hot_out&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
always @(*) begin&lt;br /&gt;
    case (binary_in)&lt;br /&gt;
        2&amp;#039;b00: one_hot_out = 4&amp;#039;b0001;&lt;br /&gt;
        2&amp;#039;b01: one_hot_out = 4&amp;#039;b0010;&lt;br /&gt;
        2&amp;#039;b10: one_hot_out = 4&amp;#039;b0100;&lt;br /&gt;
        2&amp;#039;b11: one_hot_out = 4&amp;#039;b1000;&lt;br /&gt;
        default: one_hot_out = 4&amp;#039;b0000;&lt;br /&gt;
    endcase&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
endmodule&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der zugehörige 4-zu-2 Bit Dekodierer kann wie folgt implementiert werden:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;verilog&amp;quot;&amp;gt;&lt;br /&gt;
module one_hot_decoder (&lt;br /&gt;
    input [3:0] one_hot_in,&lt;br /&gt;
    output reg [1:0] binary_out&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
always @(*) begin&lt;br /&gt;
    case (one_hot_in)&lt;br /&gt;
        4&amp;#039;b0001: binary_out = 2&amp;#039;b00;&lt;br /&gt;
        4&amp;#039;b0010: binary_out = 2&amp;#039;b01;&lt;br /&gt;
        4&amp;#039;b0100: binary_out = 2&amp;#039;b10;&lt;br /&gt;
        4&amp;#039;b1000: binary_out = 2&amp;#039;b11;&lt;br /&gt;
        default: binary_out = 2&amp;#039;b00; // Default case to handle invalid one-hot inputs&lt;br /&gt;
    endcase&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
endmodule&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Implementierung in VHDL ==&lt;br /&gt;
&lt;br /&gt;
Das folgende Beispiel zeigt einen 2-zu-4 Bit Kodierer in [[Very_High_Speed_Integrated_Circuit_Hardware_Description_Language|VHDL]]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;vhdl&amp;quot;&amp;gt;&lt;br /&gt;
library IEEE;&lt;br /&gt;
use IEEE.STD_LOGIC_1164.ALL;&lt;br /&gt;
&lt;br /&gt;
entity one_hot_encoder is&lt;br /&gt;
    Port ( binary_in : in STD_LOGIC_VECTOR (1 downto 0);&lt;br /&gt;
           one_hot_out : out STD_LOGIC_VECTOR (3 downto 0));&lt;br /&gt;
end one_hot_encoder;&lt;br /&gt;
&lt;br /&gt;
architecture Behavioral of one_hot_encoder is&lt;br /&gt;
begin&lt;br /&gt;
    process(binary_in)&lt;br /&gt;
    begin&lt;br /&gt;
        case binary_in is&lt;br /&gt;
            when &amp;quot;00&amp;quot; =&amp;gt; one_hot_out &amp;lt;= &amp;quot;0001&amp;quot;;&lt;br /&gt;
            when &amp;quot;01&amp;quot; =&amp;gt; one_hot_out &amp;lt;= &amp;quot;0010&amp;quot;;&lt;br /&gt;
            when &amp;quot;10&amp;quot; =&amp;gt; one_hot_out &amp;lt;= &amp;quot;0100&amp;quot;;&lt;br /&gt;
            when &amp;quot;11&amp;quot; =&amp;gt; one_hot_out &amp;lt;= &amp;quot;1000&amp;quot;;&lt;br /&gt;
            when others =&amp;gt; one_hot_out &amp;lt;= &amp;quot;0000&amp;quot;; -- Default case, though it shouldn&amp;#039;t occur&lt;br /&gt;
        end case;&lt;br /&gt;
    end process;&lt;br /&gt;
end Behavioral;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der zugehörige 4-zu-2 Bit Dekodierer kann wie folgt implementiert werden:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;vhdl&amp;quot;&amp;gt;&lt;br /&gt;
library IEEE;&lt;br /&gt;
use IEEE.STD_LOGIC_1164.ALL;&lt;br /&gt;
&lt;br /&gt;
entity one_hot_decoder is&lt;br /&gt;
    Port ( one_hot_in : in STD_LOGIC_VECTOR (3 downto 0);&lt;br /&gt;
           binary_out : out STD_LOGIC_VECTOR (1 downto 0));&lt;br /&gt;
end one_hot_decoder;&lt;br /&gt;
&lt;br /&gt;
architecture Behavioral of one_hot_decoder is&lt;br /&gt;
begin&lt;br /&gt;
    process(one_hot_in)&lt;br /&gt;
    begin&lt;br /&gt;
        case one_hot_in is&lt;br /&gt;
            when &amp;quot;0001&amp;quot; =&amp;gt; binary_out &amp;lt;= &amp;quot;00&amp;quot;;&lt;br /&gt;
            when &amp;quot;0010&amp;quot; =&amp;gt; binary_out &amp;lt;= &amp;quot;01&amp;quot;;&lt;br /&gt;
            when &amp;quot;0100&amp;quot; =&amp;gt; binary_out &amp;lt;= &amp;quot;10&amp;quot;;&lt;br /&gt;
            when &amp;quot;1000&amp;quot; =&amp;gt; binary_out &amp;lt;= &amp;quot;11&amp;quot;;&lt;br /&gt;
            when others =&amp;gt; binary_out &amp;lt;= &amp;quot;00&amp;quot;; -- Default case to handle invalid one-hot inputs&lt;br /&gt;
        end case;&lt;br /&gt;
    end process;&lt;br /&gt;
end Behavioral;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[1-aus-n-Code]]&lt;br /&gt;
* [[Liste von integrierten Schaltkreisen der 74xx-Familie]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Digitale Schaltungstechnik|#:1-aus-n-Decoder]]&lt;/div&gt;</summary>
		<author><name>imported&gt;MovGP0</name></author>
	</entry>
</feed>