<?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=Komparator_%28Digitaltechnik%29</id>
	<title>Komparator (Digitaltechnik) - 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=Komparator_%28Digitaltechnik%29"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Komparator_(Digitaltechnik)&amp;action=history"/>
	<updated>2026-06-26T00:42:04Z</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=Komparator_(Digitaltechnik)&amp;diff=780634&amp;oldid=prev</id>
		<title>imported&gt;MovGP0: /* Identitäts-Komparator */ Link auf Transistor-Transistor-Logik</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Komparator_(Digitaltechnik)&amp;diff=780634&amp;oldid=prev"/>
		<updated>2024-07-13T17:06:57Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Identitäts-Komparator: &lt;/span&gt; Link auf Transistor-Transistor-Logik&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Belege fehlen|Fachliteratur fehlt}}&lt;br /&gt;
Ein &amp;#039;&amp;#039;&amp;#039;Komparator&amp;#039;&amp;#039;&amp;#039; in der [[Digitaltechnik]] ist ein elektronischer Schaltkreis, der zwei digitale Werte vergleicht.&lt;br /&gt;
&lt;br /&gt;
== Identitäts-Komparator ==&lt;br /&gt;
[[Datei:Identity Comparator2.svg|mini|Aufbau eines Identitäts-Komparators]]&lt;br /&gt;
Identitäts-Komparatoren ({{enS|Identity Comparator}}) testen zwei Bits auf Gleichheit, was mit Hilfe eines [[XNOR-Gatter]]s erfolgt. Für den Vergleich von [[Byte]]s werden je zwei gleichwertige Bits miteinander verglichen und das Ergebnis mit einem [[Und-Gatter]] verknüpft.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ einfache Komparatoren&lt;br /&gt;
|- class=&amp;quot;hintergrundfarbe6&amp;quot;&lt;br /&gt;
! Vergleicht !! Familie !! Bezeichnung&lt;br /&gt;
|-&lt;br /&gt;
| 2×8-bit-Byte || [[Transistor-Transistor-Logik|TTL]] || SN74LS688 (von [[Texas Instruments|TI]])&lt;br /&gt;
|-&lt;br /&gt;
| 2×9-bit-Byte || [[Transistor-Transistor-Logik|TTL]] || AM29809 (von [[AMD]])&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Größen-Komparator ==&lt;br /&gt;
[[Datei:Magnitude Comparator.svg|mini|Aufbau eines 1-Bit Größen-Komparators]]&lt;br /&gt;
Größen-Komparatoren (engl. &amp;#039;&amp;#039;Magnitude Comparator&amp;#039;&amp;#039;) können zusätzlich zur Gleichheit auch auf die Relationen Größer und Kleiner testen. Um den Größenvergleich durchführen zu können, müssen die beiden Zahlen auf die gleiche Weise codiert sein. Zusätzlich muss der Größen-Komparator auf den jeweils verwendeten Code ausgelegt werden.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Wahrheitstabelle für 1-Bit-Größen-Komparator&lt;br /&gt;
|- class=&amp;quot;hintergrundfarbe6&amp;quot;&lt;br /&gt;
! &amp;#039;&amp;#039;a&amp;#039;&amp;#039; !! &amp;#039;&amp;#039;b&amp;#039;&amp;#039; !!&lt;br /&gt;
! y&amp;lt;sub&amp;gt;a&amp;amp;gt;b&amp;lt;/sub&amp;gt; !! y&amp;lt;sub&amp;gt;a=b&amp;lt;/sub&amp;gt; !! y&amp;lt;sub&amp;gt;a&amp;amp;lt;b&amp;lt;/sub&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|0||0||&lt;br /&gt;
|0||1||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||&lt;br /&gt;
|0||0||1&lt;br /&gt;
|-&lt;br /&gt;
|1||0||&lt;br /&gt;
|1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||&lt;br /&gt;
|0||1||0&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== n-bit-Größen-Komparator ===&lt;br /&gt;
Ein n-bit-Größen-Komparator beruht auf der Grundlage, dass die Differenz aus den zu vergleichenden Größen gebildet wird und das Ergebnis auf 0, &amp;lt;0, &amp;gt;0 geprüft wird. Das [[Subtraktion|Addierwerk]] beruht im Dualcode auf der Addition des [[Zweierkomplement]], also (-B) ist dasselbe wie (+!B + 1). Bei der Addition einer Zahl mit ihrer invertierten Zahl (zum Beispiel 1001101 + 0110010 = 1111111) sind im Ergebnis alle Bits 1. Wird eine Zahl von sich selber abgezogen, (A − A = A + (!A + 1) = 0, carry=1) ist das Ergebnis 0, mit Übertrag 1.&lt;br /&gt;
&lt;br /&gt;
Soll A mit B verglichen werden, dann gilt:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- class=&amp;quot;hintergrundfarbe6&amp;quot;&lt;br /&gt;
! Bedingung !!Hinweis !! Äquivalent !! Zwischenergebnis!! Carry !! Ergebnis&lt;br /&gt;
|-&lt;br /&gt;
| A == B || A = B || B +!B + 1 || b&amp;#039;1..11 + 1 || 1 || 0&lt;br /&gt;
|-&lt;br /&gt;
| A &amp;gt; B  || A = B + d || B + d +!B + 1 || b&amp;#039;1..11 + 1 + d || 1 || d&lt;br /&gt;
|-&lt;br /&gt;
| A &amp;lt; B  || A = B - d || B - d +!B + 1 || b1..11 + 1 -d || 0 || -d&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Datei:Größen Komparator.jpg|gerahmt|Schematischer Aufbau eines n-Bit Größenkomparators]]&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Größen-Komparatoren für [[Binärcode|Dualcode]]&lt;br /&gt;
|- class=&amp;quot;hintergrundfarbe6&amp;quot;&lt;br /&gt;
! Vergleicht !! Familie !! Bezeichnung&lt;br /&gt;
|-&lt;br /&gt;
| 2×5-bit-Byte || [[Emittergekoppelte Logik|ECL]] || MC10166&lt;br /&gt;
|-&lt;br /&gt;
| 2×8-bit-Byte || [[Transistor-Transistor-Logik|TTL]] || SN74LS682 bis SN74LS689&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Erweiterung ===&lt;br /&gt;
&lt;br /&gt;
Zum Vergleich von Bytes, die mehr Stellen aufweisen, als dies vom Komparator-Baustein vorgegeben ist, kann man mehrere Komparatoren seriell oder parallel verschalten. Die parallele Lösung hat hierbei bei Bytes mit vielen Stellen den Vorteil einer geringeren [[Latenzzeit (Technik)|Latenz]], wodurch eine höhere Geschwindigkeit resultiert. Der serielle Aufbau empfiehlt sich lediglich, wenn dadurch weniger Komparator-Bausteine verwendet werden müssen.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|[[Datei:Serial Magnitude Comparator.svg|gerahmt|Serieller Aufbau eines 7-Bit-Byte-Größen-Komparators]]&lt;br /&gt;
|[[Datei:Parallel Magnitude Comparator.svg|gerahmt|Paralleler Aufbau eines 8-Bit-Byte-Größen-Komparators]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Implementierung in Verilog ===&lt;br /&gt;
&lt;br /&gt;
Das folgende Beispiel zeigt die Implementierung eines 8-bit Größen-Komparators in [[Verilog]]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;verilog&amp;quot;&amp;gt;&lt;br /&gt;
module comparator_2x8bit(&lt;br /&gt;
    input [7:0] A,     // A: 8-bit Eingabewert&lt;br /&gt;
    input [7:0] B,     // B: 8-bit Eingabewert&lt;br /&gt;
    output reg A_gt_B, // Ausgabebit für A &amp;gt; B&lt;br /&gt;
    output reg A_eq_B, // Ausgabebit für A == B&lt;br /&gt;
    output reg A_lt_B  // Ausgabebit für A &amp;lt; B&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
always @(*) begin&lt;br /&gt;
    // Ausgabe auf 0 setzen&lt;br /&gt;
    A_gt_B = 0;&lt;br /&gt;
    A_eq_B = 0;&lt;br /&gt;
    A_lt_B = 0;&lt;br /&gt;
&lt;br /&gt;
    if (A &amp;gt; B)&lt;br /&gt;
        A_gt_B = 1;&lt;br /&gt;
    else if (A == B)&lt;br /&gt;
        A_eq_B = 1;&lt;br /&gt;
    else if (A &amp;lt; B)&lt;br /&gt;
        A_lt_B = 1;&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 die Implementierung eines 8-bit Größen-Komparators 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;
use IEEE.STD_LOGIC_ARITH.ALL;&lt;br /&gt;
use IEEE.STD_LOGIC_UNSIGNED.ALL;&lt;br /&gt;
&lt;br /&gt;
entity comparator_2x8bit is&lt;br /&gt;
    Port (&lt;br /&gt;
        A : in  STD_LOGIC_VECTOR (7 downto 0); -- A: 8-bit Eingabewert&lt;br /&gt;
        B : in  STD_LOGIC_VECTOR (7 downto 0); -- B: 8-bit Eingabewert&lt;br /&gt;
        A_gt_B : out STD_LOGIC; -- Ausgabebit für A &amp;gt; B&lt;br /&gt;
        A_eq_B : out STD_LOGIC; -- Ausgabebit für A == B&lt;br /&gt;
        A_lt_B : out STD_LOGIC -- Ausgabebit für A &amp;lt; B&lt;br /&gt;
    );&lt;br /&gt;
end comparator_2x8bit;&lt;br /&gt;
&lt;br /&gt;
architecture Behavioral of comparator_2x8bit is&lt;br /&gt;
begin&lt;br /&gt;
    process(A, B)&lt;br /&gt;
    begin&lt;br /&gt;
        if A &amp;gt; B then&lt;br /&gt;
            A_gt_B &amp;lt;= &amp;#039;1&amp;#039;;&lt;br /&gt;
            A_eq_B &amp;lt;= &amp;#039;0&amp;#039;;&lt;br /&gt;
            A_lt_B &amp;lt;= &amp;#039;0&amp;#039;;&lt;br /&gt;
        elsif A = B then&lt;br /&gt;
            A_gt_B &amp;lt;= &amp;#039;0&amp;#039;;&lt;br /&gt;
            A_eq_B &amp;lt;= &amp;#039;1&amp;#039;;&lt;br /&gt;
            A_lt_B &amp;lt;= &amp;#039;0&amp;#039;;&lt;br /&gt;
        else&lt;br /&gt;
            A_gt_B &amp;lt;= &amp;#039;0&amp;#039;;&lt;br /&gt;
            A_eq_B &amp;lt;= &amp;#039;0&amp;#039;;&lt;br /&gt;
            A_lt_B &amp;lt;= &amp;#039;1&amp;#039;;&lt;br /&gt;
        end if;&lt;br /&gt;
    end process;&lt;br /&gt;
end Behavioral;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Digitale Schaltungstechnik]]&lt;/div&gt;</summary>
		<author><name>imported&gt;MovGP0</name></author>
	</entry>
</feed>