logo

디지털 로직의 인코더

인코더는 일련의 이진 입력을 고유한 이진 코드로 변환하는 디지털 회로입니다. 바이너리 코드는 입력 위치를 나타내며 활성화된 특정 입력을 식별하는 데 사용됩니다. 인코더는 일반적으로 디지털 시스템에서 병렬 입력 세트를 직렬 코드로 변환하는 데 사용됩니다.

인코더의 기본 원리는 가능한 각 입력에 고유한 이진 코드를 할당하는 것입니다. 예를 들어, 2-4 라인 인코더에는 2개의 입력 라인과 4개의 출력 라인이 있으며 2^2 = 4개의 가능한 입력 조합 각각에 고유한 4비트 이진 코드를 할당합니다. 인코더의 출력은 일반적으로 낮은 활성 상태입니다. 즉, 주어진 시간에 하나의 출력만 활성(낮음)이고 나머지 출력은 비활성(높음)입니다. 액티브 로우 출력은 액티브 입력에 할당된 바이너리 코드를 기반으로 선택됩니다.



100만개

각 입력에 우선 순위를 할당하는 우선순위 인코더와 이진 가중치 시스템을 사용하여 입력에 이진 코드를 할당하는 이진 가중치 인코더를 포함하여 다양한 유형의 인코더가 있습니다. 요약하면 인코더는 일련의 이진 입력을 입력 위치를 나타내는 고유한 이진 코드로 변환하는 디지털 회로입니다. 인코더는 병렬 입력을 직렬 코드로 변환하기 위해 디지털 시스템에서 널리 사용됩니다.

인코더는 조합 회로 의 반대 작업을 수행하는 디코더 . 그것은 최대 2^n 입력 라인 그리고 'n' 출력 라인 , 따라서 2^n 입력의 정보를 n비트 코드로 인코딩합니다. 이는 활성 High인 입력과 동일한 이진 코드를 생성합니다. 따라서 인코더는 2^n 입력 라인을 'n' 비트로 인코딩합니다.

인코더



인코더 유형

아래에 언급된 다양한 유형의 인코더가 있습니다.

  • 4-2 인코더
  • 8진수-2진수 인코더(8-3 인코더)
  • BCD 인코더에 대한 10진수
  • 우선순위 인코더

4-2 인코더

4-2 인코더는 다음으로 구성됩니다. 4개의 입력 Y3, Y2, Y1 & Y0, 2개의 출력 A1 & A0 . 출력에서 해당 이진 코드를 얻으려면 언제든지 이 4개의 입력 중 하나만 '1'이 될 수 있습니다. 아래 그림은 4:2 인코더의 논리 기호를 보여줍니다.

4-2 인코더

4-2 인코더



4 대 2 인코더의 진리표는 다음과 같습니다.

입력 출력
Y3 Y2 Y1 Y0 A1 A0
0 0 0 1 0 0
0 0 1 0 0 1
0 1 0 0 1 0
1 0 0 0 1 1

A1 및 A0에 대한 논리식:

A1 = Y3 + Y2 A0 = Y3 + Y1>

위의 두 부울 함수 A1과 A0은 두 개의 입력 OR 게이트를 사용하여 구현할 수 있습니다.

자바의 객체 배열
OR Gate를 이용한 구현

OR Gate를 이용한 구현

8진수-2진수 인코더(8-3 인코더)

8-3 인코더 또는 8진수-2진 인코더는 다음으로 구성됩니다. 8개 입력 : Y7 ~ Y0 및 3개의 출력 : A2, A1 & A0. 각 입력 라인은 각 8진수에 해당하며 세 개의 출력은 해당 이진 코드를 생성합니다. 아래 그림은 2진 인코더에 대한 8진수 논리 기호를 보여줍니다.

8진수-2진수 인코더(8-3 인코더)

8진수-2진수 인코더(8-3 인코더)

8대3 인코더의 진리표는 다음과 같습니다.

입력 출력
Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 A2 A1 A0
0 0 0 0 0 0 0 1 0 0 0
0 0 0 0 0 0 1 0 0 0 1
0 0 0 0 0 1 0 0 0 1 0
0 0 0 0 1 0 0 0 0 1 1
0 0 0 1 0 0 0 0 1 0 0
0 0 1 0 0 0 0 0 1 0 1
0 1 0 0 0 0 0 0 1 1 0
1 0 0 0 0 0 0 0 1 1 1

A2, A1, A0에 대한 논리식입니다.

A2 = Y7 + Y6 + Y5 + Y4 A1 = Y7 + Y6 + Y3 + Y2 A0 = Y7 + Y5 + Y3 + Y1>

위의 두 부울 함수 A2, A1, A0은 4개의 입력을 사용하여 구현할 수 있습니다. OR 게이트 .

OR Gate를 이용한 구현

OR Gate를 이용한 구현

BCD 인코더에 대한 10진수

10진수-2진수 인코더는 일반적으로 다음으로 구성됩니다. 10개의 입력 라인 그리고 4개의 출력 라인 . 각 입력 라인은 각 십진수에 해당하고 4개의 출력은 BCD 코드에 해당합니다. 이 인코더는 디코딩된 10진수 데이터를 입력으로 받아들이고 이를 출력 라인에서 사용할 수 있는 BCD 출력으로 인코딩합니다. 아래 그림은 BCD 인코더에 대한 십진수의 논리 기호를 보여줍니다.

BCD 인코더에 대한 10진수

BCD 인코더에 대한 10진수

십진수에 대한 진리표 BCD 인코더 다음과 같다.

자바 목록 방법
입력 출력
Y9 Y8 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 A3 A2 A1 A0
0 0 0 0 0 0 0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0 1 0 0 0 0 1
0 0 0 0 0 0 0 1 0 0 0 0 1 0
0 0 0 0 0 0 1 0 0 0 0 0 1 1
0 0 0 0 0 1 0 0 0 0 0 1 0 0
0 0 0 0 1 0 0 0 0 0 0 1 0 1
0 0 0 1 0 0 0 0 0 0 0 1 1 0
0 0 1 0 0 0 0 0 0 0 0 1 1 1
0 1 0 0 0 0 0 0 0 0 1 0 0 0
1 0 0 0 0 0 0 0 0 0 1 0 0 1

A3, A2, A1, A0에 대한 논리식입니다.

 A3 = Y9 + Y8 A2 = Y7 + Y6 + Y5 +Y4 A1 = Y7 + Y6 + Y3 +Y2 A0 = Y9 + Y7 +Y5 +Y3 + Y1>

위의 두 가지 부울 함수는 OR 게이트를 사용하여 구현할 수 있습니다.

OR Gate를 이용한 구현

OR Gate를 이용한 구현

우선순위 인코더

4 대 2 우선 순위 인코더는 4개의 입력 : Y3, Y2, Y1 & Y0 및 2개의 출력 : A1 & A0. 여기서 입력 Y3에는 최우선 순위 , 입력 Y0에는 다음이 있습니다. 가장 낮은 우선순위 . 이 경우, 동시에 2개 이상의 입력이 '1'이더라도 출력은 입력에 해당하는 (바이너리) 코드가 되며, 이는 다음과 같습니다. 더 높은 우선순위 . 우선순위 인코더의 진리표는 다음과 같습니다.

입력 출력
Y3 Y2 Y1 Y0 A1 A0 안에
0 0 0 0 엑스 엑스 0
0 0 0 1 0 0 1
0 0 1 엑스 0 1 1
0 1 엑스 엑스 1 0 1
1 엑스 엑스 엑스 1 1 1

A1의 논리식은 아래와 같습니다.

논리식

논리식

A0의 논리식은 아래와 같습니다.

논리식

논리식

위의 두 가지 부울 함수는 다음과 같이 구현될 수 있습니다.

우선순위 인코더

우선순위 인코더

자바를 잡아보세요

인코더에서 일반적으로 발생하는 몇 가지 오류가 아래에 언급되어 있습니다.

  • 인코더의 모든 출력이 0과 같을 때 모호성이 있습니다.
  • 둘 이상의 입력이 High로 활성화된 경우 인코더는 출력을 생성하며 이는 올바른 코드가 아닐 수 있습니다.

따라서 이러한 어려움을 극복하려면 인코더의 각 입력에 우선순위를 할당해야 합니다. 그런 다음 인코더의 출력은 우선 순위가 더 높은 활성 높은 입력에 해당하는 코드가 됩니다.

인코더의 응용

  • 인코더는 모든 디지털 시스템에 사용되는 매우 일반적인 전자 회로입니다.
  • 인코더는 덧셈, 뺄셈, 곱셈 등과 같은 이진 기능을 수행하기 위해 십진수 값을 이진수로 변환하는 데 사용됩니다.
  • 특히 우선순위 인코더를 위한 다른 애플리케이션에는 마이크로프로세서 애플리케이션의 인터럽트 감지가 포함될 수 있습니다.

디지털 로직에서 인코더 사용의 장점

  • 줄 수 감소: 인코더는 여러 입력에서 단일 출력으로 정보를 전송하는 데 필요한 라인 수를 줄여 시스템 설계를 단순화하고 구성 요소 비용을 줄일 수 있습니다.
  • 향상된 신뢰성: 인코더는 여러 입력을 단일 직렬 코드로 변환함으로써 정보 전송 시 오류가 발생할 가능성을 줄일 수 있습니다.
  • 향상된 성능: 인코더는 여러 입력에서 단일 출력으로 정보를 전송하는 데 필요한 시간을 줄여 디지털 시스템의 성능을 향상시킬 수 있습니다.

디지털 로직에서 인코더 사용의 단점

  • 복잡성 증가: 인코더는 일반적으로 인코더에 비해 더 복잡한 회로입니다. 멀티플렉서 , 구현하려면 추가 구성 요소가 필요합니다.
  • 특정 애플리케이션으로 제한됨: 인코더는 병렬 입력 세트를 직렬 코드로 변환해야 하는 애플리케이션에만 적합합니다.
  • 제한된 유연성: 인코더는 고정된 수의 입력을 고정된 수의 출력으로만 인코딩할 수 있으므로 유연성이 제한됩니다.
  • 결론적으로 인코더는 장점과 단점이 있는 유용한 디지털 회로입니다. 인코더 사용 여부는 시스템의 특정 요구 사항과 복잡성, 신뢰성, 성능 및 비용 간의 균형에 따라 선택됩니다.

GATE CS 코너 질문

다음 질문을 연습하면 지식을 테스트하는 데 도움이 됩니다. 모든 질문은 지난 몇 년 동안 GATE 또는 GATE 모의 테스트에서 질문되었습니다. 연습해 보시는 것이 좋습니다.

  1. GATE CS 2013, 질문 65
  2. GATE CS 2014(세트 3), 질문 65