본문 바로가기

컴퓨터구성

집적 회로(IC) - MUX

지난 번에 디코더에 대해 알아보았다. 못 쓴 내용이 조금 있어서 추가적으로 조금만 기술해보도록 하겠다.


디코더엔 input값중에 enable도 있는데 이 값이 0이라면 input에 무관하게 모두 0을 출력한다. 따라서 이 enable을 이용해서 디코더를 확장할 수 있다. 여러 디코더를 연결한 후 하나를 제외한 나머지 enable들을 0으로 만들어주면 output이 단 1개만 될 수 있다.


즉, 간단한 예를 들어 2x4디코더로 4x16디코더를 만드려면 2x4디코더가 5개 필요하다.

출력값이 16개니 당연히 4개는 필요로 하고, 4개의 각 enable값을 판단해줄 디코더 1개까지 합쳐 총 5개이다.


역시 말로 설명하려니 어렵다.. 뭐 대충 위와 같은 그림으로 표현할 수 있을 것이다. 만약 enable이 0이라면 모든 출력 값이 0이니 뒷부분의 enable도 0이 되어 최종적으로 모든 출력값이 0이 된다.

enable이 1이라면 A1,A2의 입력값과 A3,A4의 입력값에 따라서 16가지의 출력값 중 1가지만 1이 된다.

(그림 상의 회로에선 not이 달려있으니 0이 되겠지만 의미를 파악하는데 의의를 두자..)



인코더(encoder)는 디코더의 반대개념이다. 음.. 말로는 어떻게 설명해야할지 모르겠는데.. 아무튼 디코더의 출력값이 입력값이 된다..


그런데 만약 입력값이 여러 개의 1일 경우 정확한 결과가 나오지 않는다.

따라서 우선순위 인코더(priority encoder)라는 개념이 나오게 되었다.

이는 여러 개의 1을 입력하면 우선 순위에 따라서 출력이 달라진다.

위 그림과 같은 모습을 보인다. Input의 숫자가 클 수록 우선 순위가 높은 경우이다. P는 디코더의 enable과 같은 개념이다.



멀티플렉서(multiplexer)는 입력값 중 하나를 골라서 독점하듯이 사용할 수 있도록 해준다.


S(Select)가 제일 중요하다 !! S의 개수에 따라서 입력값의 최대 개수가 결정될 수 있다. 즉, S가 1개뿐이라면 표현 가능한(연결 가능한) 입력 개수는 2개뿐이고 S가 3개라면 최대 입력 개수는 8개이다.


독점하듯이 사용할 수 있게 되므로 당연히 출력값은 1개뿐이다.

설명이 조금 애매한 것 같아서 다시 한번 간단히 말해보자면 S에 따라서 입력값을 선택 한다고 생각하면 된다.


디멀티플렉서(demultiplexer)는 멀티플렉서의 반대 개념이다.



만약에 게이트의 출력값들끼리 연결하면 어떻게 될까 ??

위 그림과 같이 연결을 한다면 ?? 한 쪽은 1 한 쪽은 0이 들어와서 값이 이상해질 수 있다. 즉, 선이 터질 수 있다.


근데 꼭 하지말라면 하려고 한다. 그래서 다음과 같이 2가지 방법을 통해 출력을 연결해보겠다.


1. open-collector

 open-collector는 0일때는 0으로 출력하지만 1일때는 Z(선이 끊어짐)으로 출력한다. 이를 동작 시키려면 외부에서 선을 연결해주어야 한다.

위 그림처럼 저항(resistor)와 전원(5V)을 이용해 연결해주어야 한다.

위 그림의 경우 어느 한쪽이라도 0이 되면 0을, 둘 다 1이되면 1을 즉, AND게이트와 동일한 결과를 보인다.


여기서 조금 정확하게 말하자면 0과 1보단 Low와 High의 개념이다.

만약 High를 1로 보는 positive logic이라면 AND게이트와 같은 효과를 내지만 High를 0으로 보는 negative logic의 경우 같은 회로임에도 OR게이트 효과를 낼 수 있다.


2. tri-state

 얘는 진짜 그림 한 장이면 완벽하게 이해할 수 있다.

딱 보면 알겠지만 B가 0이면 Z(선이 끊어짐)상태이다.

얘도 마찬가지로 출력 2개를 연결할 수 있는데 두 B가 모두 enable이라면 C가 출력된다.


제목 짓기 너무 어렵다..

'컴퓨터구성' 카테고리의 다른 글

메모리 - RAM, ROM  (0) 2020.05.18
집적 회로(IC) - register, counter  (1) 2020.04.20
순서 회로 설계, 디코더  (0) 2020.04.10
조합 회로, 순서 회로  (0) 2020.04.06
식의 간소화 - 카르노맵  (2) 2020.04.01