디코더와 인코더는 디지털 논리회로에서 중요한 역할을 하는 두 가지 기본 장치입니다. 이들은 정보의 변환 및 해석에 사용되며, 다양한 전자 장치 및 컴퓨터 시스템에서 중요한 기능을 수행합니다.
디코더 (Decoder)
- 기본 기능: 디코더는 입력선에 나타나는 n비트 2진 코드를 최대 2^ 가지 정보로 변환하는 조합 논리회로입니다. 간단히 말해서, 디코더는 부호화된 데이터를 해독하여 원래의 정보를 찾아내는 역할을 합니다.
- 동작 원리: 디코더의 출력 중 하나만 논리적으로 1이 되고, 나머지 출력은 모두 0이 됩니다. 예를 들어, 2x4 디코더는 2비트 입력을 받아 4개의 출력 중 하나를 활성화합니다.
- 용도 및 응용: 디코더는 다양한 전자장치에서 다중 선택, 데이터 라우팅, 메모리 주소 지정 등에 사용됩니다. 특정 유형의 디코더에는 인에이블 단자가 있어서 디멀티플렉서로도 사용될 수 있습니다. 또한, 디코더를 사용하여 전가산기와 같은 더 복잡한 논리 회로를 설계할 수도 있습니다.
인코더 (Encoder)
- 기본 기능: 인코더는 디코더의 반대 기능을 수행하는 조합 논리회로로, 여러 신호를 입력 받아 축약된 출력 신호를 생성합니다. 즉, 신호 2^개를 받아서 출력 신호 n개를 만듭니다.
- 동작 원리: 인코더는 여러 입력 중 하나를 선택하여 이를 축약된 형태의 출력으로 변환합니다. 예를 들어, 키보드와 같은 입력 장치에서 숫자나 문자 입력을 2진 코드로 변환하는 데 사용됩니다.
- 용도 및 응용: 인코더는 정보 전송을 위한 암호화, 신호 변환 등에 사용됩니다. 예를 들어, RGB 정보를 TV에서 수신 가능한 NTSC 신호로 변환하거나, 10진수를 BCD 부호나 2진수로 변환하는 데 사용됩니다. 인에이블이 있는 인코더는 멀티플렉서 기능으로도 활용될 수 있습니다.
차이점
- 기능적 차이: 디코더는 복호화(Decoding) 과정을 담당하며, 주어진 이진 코드를 다양한 출력으로 전환합니다. 반면, 인코더는 여러 입력을 받아 이를 하나의 압축된 형태로 출력하는 역할을 합니다.
- 용도 및 응용 차이: 디코더는 데이터 분배, 주소 지정, 메모리 선택 등의 과정에서 중요한 역할을 하며, 인코더는 데이터의 암호화, 신호 변환, 정보 압축 등에 사용됩니다.
이러한 디코더와 인코더의 원리와 기능은 디지털 시스템의 효율적인 설계 및 운영에 필수적입니다.
즉. 디코더는 입력선에 나타나는 n비트 2진 코드를 최대 2^2n가지 정보로 바꿔주는 조합논리회로임.
부호화된 데이터를 해독하여 정보를 찾아내는 역할.
출력 중 단지 한 개만이 논리적으로 1이되고 나머지 출력은 모두 0이 된당.
인코더와 항상 같이 쓰이진 않음!
(인에이블 단자를 가지고 있는 디코더(=>디멀티플레석로 사용됨) , 각종 코드를 상호 변환하는 디코더)
n X 2^n 디코더 필요한 AND게이트 수: n개 !
디코더로 전가산기도 만들 수 있음 책 참조하자 (논리회로)
=> 설계에 필요한 IC는 3x8디코더 1개, 4입력 OR게이트 2개.
인코더는 디코더의 반대 기능을 수행하는 조합논리회로, 신호 2^n개를 입력 받아 출력신호 n개를 만듦.
인코더는 정보 전송을 암호로 변환하는 장치, RGB정보를 TV에서 수신할 수 있는 ntsc 방식의 신호로 변환하여 주는 장치 키보드와 같은 입력장치에서 사용됨. (숫자나 문자등의 키보드 입력을 2진코드로 부호화한다.)
0~9까지의 10진수를, BCD 부호 또는 2진수로 변환함.
인코더도 인에이블을 가지면 멀티플레서의 기능으로 사용할 수 있음.
0과 1의 조합에 의하여 어떠한 기호라도 표현할 수 있도록 부호 화하는 역할을 하며, OR게이트로 이루어져있다.
(디지털논리회로, 한빛아카데미)
'프로그래밍 > CS' 카테고리의 다른 글
[운영체제] 스케줄링 (0) | 2020.12.23 |
---|---|
[운영체제] 멀티 프로세스/멀티 쓰레드 시간분석 비교 프로그래밍 (2) | 2020.12.23 |
[논리회로] 병렬가산기, 비교기 (0) | 2020.12.23 |
[논리회로] 조합논리회로, 전가산기 (0) | 2020.12.23 |
[자료구조] [C] 퀵 정렬 (quick sort) (0) | 2020.12.23 |