공대생과 공부하기/전기공학 실험 보고서

[전기전자공학 실험] 디코더와 인코더 (Decoder & Encoder) : 예비보고서

전기과 팡팡이 2019. 7. 25. 19:30
728x90

 


1. 실험명

   디코더와 인코더

 

2. 개요

 1) 코드의 개념을 이해하고 이진코드와 BCD코드가 무엇인지를 숙지한다.

 2) 디코더의 원리와 구성방법을 이해한다.

 3) 인코더의 원리와 구성방법을 이해한다.

 4) 디코더와 인코더를 응용하여 간단한 실용적 목적을 지닌 회로를 설계하는 연습을 한다.

 

3. 관련 이론

코드의 기본개념

 1) Binary 코드

   디지털 세계에서 0 1이라는  개의 기호만으로 조합하여 코드를 나타내게 된다. 이를

   Binary code, 혹은 이진코드라 한다. 일반적으로 n개의 자리수로 이루어진 이진코드는 2ⁿ

   가지의 대상을 구별하여 나타낼  있다.

 2) BCD 코드

     자리수의 이진코드로 숫자를 나타내는 것이 BCD(Binary-Coded Decimal) 코드이

   . 가능한 코드의 개수는 모두 16개이지만 0에서부터 9 해당하는 1001까지의 조합만이

   코드로 사용되고  이상의 조합,  1010에서 1111까지의 여섯 개는 코드로 사용되지 

   는다. 유의할 점은  코드는 숫자라는 기호를 대신하는 코드일 뿐이며 수치가 아니다.

    BCD 코드에 의한 산술 연산이 가능하며, 가산법에서는  가지 조건이 적용된다.

    첫째, BCD 수를 가산한 결과,  자릿수의 4비트가 10개의 BCD (0000~1001) 포함

   되어 있으면  자체가 BCD값이 된다.

    둘째,  자릿수의 4비트가 10개의 BCD 수에 포함되어 있지 않거나 자리올림이 발생하

     값에 6(0110) 더해 주어야만 BCD값이 된다.

   이는 BCD 코드에 포함되지 않는 여섯 개의 4비트 때문이다.

 3) ASCII 코드

   십진수 숫자, 영문자 그리고 몇몇 기호들을 이진코드로 나타내는 표준 코드이다.  문자

    7비트로 표현하므로  128(=2⁷)개의 문자를 표현할  있다.

   *유니코드 : 여러 특수 문자  각국의 문자를 포괄하기 위해 국제 표준으로 16비트로 

               루어진 코드를 사용하여 모두 2¹⁶=65536 개의 문자를 구분할  있다.

 

디코더(decoder)

 1) 데이터를 어떤 부호화된 형으로부터 다른 형으로 바꾸기 위한 회로와 장치를 가리킨다.

    입력 신호의 조합에 따라 하나 또는  이상의 출력을 선택할  있는 매트릭스로 되어 

    있는 경우가 많다.

 2) 소프트웨어 분야에서는 프로그래밍 언어의 경우이며, 어셈블러에서의  명령의 간략 

     코드로 변화하는 역할을 하는 프로그램의 것을 디코더라고 하는 경우가 있다. 여러 

     입력 단자와 출력단자를 가진 장치로 입력 단자의 어느 조합 신호가 가해졌을 ,  

    조합에 대응하는 하나의 출력 단자에 신호가 나타나는 것이다. 디코더의 작용은 부호기 

    작용과 반대이다. 임의의 개수로 신호가 보내지는 복수의 입력선과 동시에   이상의 

    신호가 보내지는 일이 없는 복수의 출력선과의 사이에 일대일의 대응이 있는 기구.

 

 

인코더(encoder)

 여러 개의 입력 단자와 여러 개의 출력 단자로 이루어져 있으며, 어느 1개의 입력 단자에 1이라는 신호가 주어지면  입력 단자에 대응하는 출력 단자의 조합 각각에 1 신호가 나타난다. 대표적인 것으로는 10진수를 2진수로 변환시키는 102진인코더, 10진수를 2진화10진코드(BCD code) 변환시키는 10-BCD인코더 등이  알려져 있다.

 예를 들어 1~9 수를 나타내는 10개의 입력단자가 있고   1개에 5 나타내는 입력 단자에 1이라는 신호를 주면 5=2²+2⁰=4+1 2² 2⁰ 나타내는 2개의 출력 단자에 1 출력을 발생한다. 7 입력하면 2², 2¹, 2⁰ 3군데에 출력이 나온다. 다이오드메트릭스게이트나 논리회로의 조합으로 구성되며 대표적인 기능을 갖는 것은 집적회로화되어 있다. PCM통신에서는 아날로그 디지털 변환기를 코더라 한다.

 

4. 예비보고서 문제풀이

 1) 2비트의 이진수 입력에 대한 디코더 회로를 작성하라.

B

A

O0

O1

O2

O3

0

0

1

0

0

0

0

1

0

1

0

0

1

0

0

0

1

0

1

1

0

0

0

1

 진리표로 나타내면 위와 같고, 이를 식으로 나타내면 O0=B′A′, O1=B′A, O2=BA′, O3=BA

 나타낼  있으므로 회로도는 아래와 같다.

 

2) A, B, C  개의 입력에 대해 X=AB+(A+B)C 출력을 갖는 회로를 그림 2 같은 3입력

   디코더 회로와 OR 게이트를 사용하여 만드는 회로도를 작성하라.

 A+A′=1이라는 부울 대수식을 이용하여 A′B+(A′+B)C A′B(C+C′)+A′C(B+B′)+BC(A+A′) 

 바꿀  있으며 이식을 간단화시키면 A′BC′+A′B′C+A′BC+ABC 된다.A′BC′=O2 A′B′C=O4

 A′BC=O6 ABC=O7 바꿀  있다. 이것을 디코더 회로로 나타내면 아래와 같다.

 

3)  2)항의 회로를 74138 디코더와 7400 2-input NAND 게이트만을 사용하여 구현하는

   회로도를 작성하라.

 74138디코더는 EN-ABLE값을 3개를 추가를 입력해줘야 한다. 그리고 NAND OR게이트로 

 바꾸려면 NAND게이트 입력 값에 NOT 넣어주면 된다. 그리고 2입력 OR 게이트 3개로 4

 입력 OR게이트를 구현할  있기 때문에 위에 회로도를 아래 회로도처럼 바꿀  있다.

 

4) 74138 디코더를 2 사용하여 4입력 16출력 디코더 동작을 하는 회로를 작성하라.

 3입력 디코더를 두개 연결해서 4입력 디코더를 만들기 위해서는 각각 디코더에 A, B, C값을 

 입력하고 D NOT게이트를 달아서  디코더에 EN값에 입력해주고 나머지 D 아래 디코

  EN값에 입력해주면  디코더에서는 O0-O7까지 출력 값이 나오고 아래 디코더에서는 

 O8-O15출력 값이 나오는 4입력 디코더를 만들  있다.

 

5) 그림 7에서 인코더의 이벽단자  E1 무슨 역할을 하는지 설명하라. 그리고 출력단자에

    EO GS 무엇을 위한 단자인지 조사하라. 

 74148인코더에 대해서 얘기하는 건데 E1 역할은 E1 입력 값에 따라 출력 값이 나올  

 있고  나올  있기 때문에 인코더의 조절기 역할을 하고 있다. E1 H 때는 입력 값에 

 어떤 값을 넣던 간에 결과 값은  H 나오고 E1 L 때는 입력 값에 따른 결과 값이 

 나온다. 그리고 입력 값에 따라 GS E0 값이 출력되는데 입력 값이 없을 때는 GS 

 력이 되고 입력 값이 하나라도 있을 시에는 E0값이 출력된다.

  

5. 실험기기/부품

 테스터, 직류전원장치(dual), 오실로스코프, 만능기판, 만능기판용 전선, 스트리퍼

  IC

 NAND 게이트      74LS00   3

 NOT 게이트        74LS04   2

 디코더             74LS138  2

 인코더             74LS148  1

 7-segment 디코더  74LS47   1

 스위치(푸쉬버튼, 혹은 똑딱이)  9

 저항, 트랜지스터, LED        다수

 

6. 실험

 1) 다음 회로를 구성하고 입력의 변화에 대한 출력값을 확인하라.

B

A

O0

O1

O2

O3

공칭값

측정값

공칭값

측정값

공칭값

측정값

공칭값

측정값

0

0

1

 

0

 

0

 

0

 

0

1

0

 

1

 

0

 

0

 

1

0

0

 

0

 

1

 

0

 

1

1

0

 

0

 

0

 

1

 

 


2)
예비보고서 3)항에서 준비한 회로를 구성하고 진리표를 작성하여  동작을 확인하라.

 A

B

C

O0

O1

O2

O3

O4

O5

O6

O7

공칭값

측정값

공칭값

측정값

공칭값

측정값

공칭값

측정값

공칭값

측정값

공칭값

측정값

공칭값

측정값

공칭값

측정값

0

0

0

0

 

1

 

1

 

1

 

1

 

1

 

1

 

1

 

0

0

1

1

 

0

 

1

 

1

 

1

 

1

 

1

 

1

 

0

1

0

1

 

1

 

0

 

1

 

1

 

1

 

1

 

1

 

0

1

1

1

 

1

 

1

 

0

 

1

 

1

 

1

 

1

 

1

0

0

1

 

1

 

1

 

1

 

0

 

1

 

1

 

1

 

1

0

1

1

 

1

 

1

 

1

 

1

 

0

 

1

 

1

 

1

1

0

1

 

1

 

1

 

1

 

1

 

1

 

0

 

1

 

1

1

1

1

 

1

 

1

 

1

 

1

 

1

 

1

 

0

 

 


 

유익하셨다면 좋아요와 구독 꾹 부탁드립니다 ㅎㅎ