Układy logiczne
6. Multipleksery, demultipleksery, translatory kodów, komparatory
6.3. Komparatory
Komparatory dzielimy na równoległe i szeregowe. Komparatory równoległe to układy kombinacyjne porównujące dwa słowa binarne \(a=a_1a_2...a_n\) i \(b=b_1b_2...b_n\) w kodzie NKB.
Na wejście układu podajemy więc 2 słowa \(a\) i \(b\) i zależnie od wyniku porównania na jednym z 3 wyjść 1-bitowych pojawia się jedynka
Jeśli a = b to na wyjściu oznaczonym symbolem ”=” mamy ”1” (a na pozostałych ”0”).
Jeśli a > b (w kodzie NKB) to na wyjściu oznaczonym symbolem ”>” mamy ”1” (a na pozostałych ”0”).
Jeśli a < b (w kodzie NKB) to na wyjściu oznaczonym symbolem ”<” mamy ”1” (a na pozostałych ”0”).
Komparator szeregowy to układ sekwencyjny porównujący bit po bicie odpowiadające sobie bity słów \(a=a_1a_2...a_n\) i \(b=b_1b_2...b_n\) od strony bardziej znaczących bitów. Bity \(a_i\) i \(b_i\) są wprowadzane na wejście układu w takt zegara. Wynik porównania pojedynczych bitów musi być zapamiętany stąd konieczność zastosowania układu sekwencyjnego. Wynik wsteczny porównania uzyskujemy po n taktach zegara.
Rys. 6. Komparator równoległy porównuje dwa słowa binarne \(a=a_1a_2...a_n\) i \(b=b_1b_2...b_n\) traktując je jak słowa kodowe kodu NKB
Warto zauważyć, że najprostszym komparatorem z jednym wyjściem ”=” (komparatorem porównującym tylko 2 bity) jest zanegowana suma modulo 2.