Exp#7. 디지털 논리회로의 응용 – 멀티바이브레이터실험 목표쌍안정 멀티바이브레이터인 래치와 플립플롭에 대해 이해하고 이를 응용한 회로를 구 성할 수 있다.단안정 멀티바이브레이터와 비안정 멀티바이브레이터에 대해 이해할 수 있다.실험 이론RS래치 (latch)래치는 1비트의 정보를 유지, 보관할 수 있는 회로이며 순차회로의 기본 요소이다. 래치의 정보는 전원이 있을때만 보관, 유지가 되며 전원이 차단되면 정보는 사라지게 된다.NOR 게이트를 사용하는 RS래치는 윗 그림과 같다. 입력값인 Set, Reset은 회로의 상태인 Q를 변경할 수 있는 수단을 제공한다. 두개의 입력 R, S가 0이라면 래치는 원래 상태를 유지한다. 이 상태는 Qa=0, Qb=1 이거나 Qa=1, Qb=0인 상태이다.Characteristic tableR=0이고 S=1이면 래치는 Qa=1, Qb=0인 상태로 set된다. R=1이고 S=0이면 래치는 Qa=0, Qb=1인 상태로 reset된다. R=S=1인 상태에서는 Qa=Qb=0인 상태가 된다. 윗 그림의 표는 진리표와 같은 형식이지만 이는 Characteristic table이라 불린다. 왜냐하면 이 표가 출력값이 입력의 전류값에만 의해서 결정되는 복합회로를 설명하지 못하기 때문이다.제어장치가 있는 RS래치(Gated SR Latch)의 경우에는 clk신호에 따라서 래치의 작동이 제어된다. 통제신호인 Clk가 0이 된다면 래치로 들어가는 R, S의 값과 상관없이 입력값인 R’, S’의 값이 0이 된다. 따라서 래치는 Clk=0이면 초기상태를 유지하게 될 것이다. Clk=1이되면 R’과 S’의 값은 R, S의 값과 같게 된다.JK플립플롭 (flip-flop)JK플립플롭은 SR플립플롭과 T플립플롭의 특성을 혼합한 회로이다. 이 회로의 입력값 D는 두개의 입력 J, K에 의해서 나오는데 다음과 같이 나타내어진다. 이 회로는 J=K=1인 경우를 제외하고 J=S, K=R이면 SR플립플롭처럼 작동된다. 나머지 경우에서는 T플립플롭으로 상태가 전환된, 쌍안정의 3가지가 있다.비안정 멀티바이브레이터는 두개의 용량 저항성 결합 네트워크에 의한 양의 피드백 루프에 연결되어있는 두개의 증폭 단계로 구성된다. 이 회로는 가속하는 양의 피드백 때문에 최대의 속도로 바뀌는 두개의 비안정 상태를 가지고 있다. 축전기 사이의 전압이 갑자기 바뀌지 않기 때문에 이것은 즉시 전압변화를 전송하는 결합된 축전기에 의해 구현된다. 각각의 상태에서 한 트랜지스터가 스위치가 켜지면 다른 하나의 스위치는 꺼지게 된다. 따라서 완전히 충전된 축전기는 천천히 방전하며 시간을 빠르게 변화하는 전압으로 변환한다. 동시에 다른 빈 축전기는 빠르게 충전하여 그것의 전하량을 복구시킨다.단안정 멀티바이브레이터에서는 하나의 저항-축전기 네트워크가 저항 네트워크로 대체된다. 이것은 비안정 멀티바이브레이터의 반으로 생각할 수 있다. 입력신호에 의해 트리거 된 경우 단안정 멀티바이브레이터는 일정시간동안 불안정한 상태로 바뀌었다가 다시 안정적인 상태로 돌아간다.쌍안정 멀티바이브레이터에서는 두개의 저항-축전기 네트워크가 저항 네트워크로 전환된다. 이 래치 회로는 충전혹은 방전 시간이 없는 것을 제외하면 비안정 멀티바이브레이터와 유사하다.재트리거가능(retriggerable)/재트리거불가(nonretriggerable)입력 신호가 반복적으로 적용되면 회로가 불안정한 상태로 유지되는 것을 재트리거 가능하다고 한다. 만약 추가 트리거 펄스가 주기에 영향을 미치지 않는다면 회로는 재트리거 불가능이라고 한다.실험 장비 및 재료실험 장비NI ELVIS오실로스코프: PHILIPS 60 MHz Digital Storage Oscilloscope PM3335함수발생기: EZ FG-8002DC power supply실험 재료저항7400, 7402, 7404, 7408, 7432, 7474, 7476, 74121실험 방법쌍안정 멀티바이브레이터 – 래치/플립플롭래치 (latch)는 임시 저장 소자의 한 종류로서 두 개의 안정 상태를 가지고 있으며, 플 립플롭 (flip-flop)미는 클럭 (clock, CLK)이라고 하는 트리거 입력의 특정한 지점에서만 출력 상태가 바뀐다는 것이다.그림 1의 회로들을 구성하고 동작을 확인한다.그림 2의 회로를 구성한다.그림 2는 preset, clear, enable을 가진 RS래치이다. Preset과 clear는 다른 입력에 관계없이 출력을 결정한다. Enable은 ON일 경우에만 RS래치가 동작하게 하고, OFF일 때는 R과 S의 상태가 출력에 영향을 미치지 않는다. 이를 확인하여 작동을 표로 작성한다.에지 트리거 플립플롭 (edge-triggered flip-flop)은 클럭 펄스의 양의 에지 (혹은 상승 에지) 또는 음의 에지 (혹은 하강 에지)에서 상태가 변화하고, 플립플롭의 상태는 클럭이 변화할 때 인가된 입력 상태에 의해 결정된다. 이번 실험에서는 플립플롭 중에서 범용으로 널리 사용되고 있는 J-K 플립플롭에 관한 회로를 구 성해보도록 한다. 그림 3의 회로를 구성하고 입력의 모든 조합에 대해서 LED의 변화를 관찰하여라. 이 때 클럭 펄스의 상태 변화를 오실로스코프로 관측하면서 이 실험을 진행하도록 한다. 관찰한 결과를 진리표로 작성하도록 한다. 클럭 펄스의 경우는 상승 에지 상태와 하강 에지 상태라는 두 가지 경우로 기록하면 된다.그림 4의 회로를 구성하고 클럭 펄스의 변화에 따른 QA와 QB의 변화를 그려본 다. 그림 4의 회로는 리플 카운터 (ripple counter)이다. 카운터에 관한 회로는 다음 실험에서 배우게 되므로 여기서는 이 회로가 어떠한 방식으로 이용되는지 보다는 클럭 펄스의 변화에 따른 출력의 변화를 관찰함으로써 플립플롭에 익숙해지는 것을 그 목표로 하도록 한다.단안정 및 비안정 멀티바이브레이터단안정 (monostable) 멀티바이브레이터 중 하나인 원-샷 (one-shot)은 보통 안정 상 태에 있다가 트리거 신호가 들어오면 불안정 상태로 되는데, 일단 원-숏이 트리거 되 면 미리 정해진 시간 동안 불안정 상태로 있다가 자동적으로 안정 상태로 돌아오는 소자이다. 펴본다.아래의 단계를 참고하여 그림 5의 회로를 구성한다. 회로도에 있지 않아도 7번 핀의 접지와 14번의 Vcc는 항상 연결해야하는 것에 주의한다.74121의 펄스폭은 다음과 같은 식으로 구할 수 있다.0.01μF의 커패시터를 사용하여 50μs의 펄스폭을 얻기 위해 필요한 타이밍 저항 RT를 선택한다.이번 실험에서는 A1과 A2에 0을 인가한다(접지). B에는 10kHz의 사각파를 인가 하고, 출력을 관찰하기 위해 함수발생기와 Q단자에 오실로스코프를 연결한다.출력신호로부터 펄스폭을 측정하고 이를 계산한 값과 비교한다.입력 신호의 duty cycle을 바꾸어보고 결과를 관찰한다.입력신호의 주파수를 50kHz까지 천천히 증가시키면서 출력을 관찰한다. 관찰 내용을 바탕으로 74121이 재트리거 가능한지 아닌지 기술하자.실험 결과쌍안정 멀티바이브레이터 – 래치/플립플롭RS래치 회로7402회로7400회로J-K 플립플롭단안정 및 비안정 멀티바이브레이터결과 분석 및 토의쌍안정 멀티바이브레이터 – 래치/플립플롭RS래치 회로RS래치 회로의 경우 NOR과 NAND를 이용한 회로를 만들어 동작을 확인하였다. NOR을 사용한 경우에서는 두 입력이 모두 0인 경우 1을 출력하고 나머지 경우에 모두 0을 출력한다. 이 회로에서 각 게이트의 출력은 Q, 와 옆 소자의 입력으로 들어가게 된다. R에 0, S에 1이 입력되는 경우, 아래 7403에서 0이 출력되어 위 7402의 입력과 으로 들어가고, 위 7402는 출력값 1을 Q와 아래 7402로 넣어준다. 따라서 출력값 Q, 는 1,0이 된다. S의 입력을 0으로 바꾸는 경우에도 위 7402에서 1을 입력하기 때문에 출력에는 변화가 생기지 않는다. R에 1, S에 0을 넣는 경우에는 반대로 Q, 이 0,1이 된다.NAND를 사용한 7400의 경우에는 두 입력이 모두 1일 때 0, 나머지의 경우에서 1을 출력하므로 7402의 경우와 반대의 경우가 될 것이다.실험의 결과는 진리표와 같다. 예측한 결과가 진리표에 나타난 것을 확인할 수 있고우를 제외하면 RS래치와 실험값이 같을 것이다. 의 경우에는 PRE가 set강요, CLR이 reset을 강요하므로 가 0일 때 Q=1, 가 0일 때 =1이 될 것이다. 두 값이 모두 0인 경우에는 작동하지 않을 것이고, 모두 1인 경우에는 입력신호 J, K에 따라 값이 변할 것이다.실험 결과는 진리표와 오실로스코프를 통해 확인할 수 있다. 진리표는 예상한 것과 같이 SR래치와 유사하게 나왔지만 입력신호가 모두 1인경우만 토글 상태가 되는 것을 확인할 수 있었다. 토글은 오실로스코프를 통해 더욱 자세히 확인할 수 있다. 파란색은 클럭, 노란색은 Q의 상태이다. 클럭의 하강엣지에서 출력값이 반전된 값이 나오는 것을 볼 수 있었다.플립플롭은 1비트의 정보를 저장할 수 있는 휘발성 저장 매체이다. 따라서 이는 기억장치인 램을 구성하는데 사용될 수 있다.단안정 및 비안정 멀티바이브레이터실험에서 74121소자를 이용하여 단안정 멀티바이브레이터의 성질에 대해서 알아보았다. 회로의 주기를 0.5μs로 만들기 위해서 식을 이용해 사용할 저항을 구하였다. 0.01μF의 커패시터를 사용하므로 7.7kΩ을 필요로 하였다. 노란색이 B에 입력한 사각파이고 파란색이 출력값이다. 2번째 사진에서 입력신호를 변화시켰는데도 출력신호는 주기가 일정한 채 유지되는 것을 볼 수 있다. 이 경우를 재트리거 불가능한 상태라고 한다. 또한 이 회로는 입력신호의 상승에지에 따라서 출력신호가 일정한 주기로 발생하기 때문에 상승에지 트리거링이라 볼 수 있다.참고문헌 Hyperlink "https://en.wikipedia.org/wiki/Flip-flop_(electronics)" https://en.wikipedia.org/wiki/Flip-flop_(electronics) Hyperlink "https://en.wikipedia.org/wiki/Monostable_multivibrator" https://en.wikipedia.org/wiki/Monostable_multivibrator Hyperlin00
Exp#6. 디지털 논리회로의 응용 – 가산기/비교기/멀티플렉서/디멀티플렉서실험 목표비교기의 원리를 이해하고 이를 응용한 회로를 구성할 수 있다.디코더와 인코더의 원리를 이해한다.실험 이론2진화 10진수 (binary coded decimal, BCD)디지털 시스템에서 십진수의 각각의 숫자를 이진수로 변환하여 표현하는 것이 가능하다. 이것을 2진화 10진수 표기법이라고 부른다. 십진법에서는 10개의 수가 있으므로 수를 표현하기위해서는 4개의 비트가 필요하다. 표현하는 법은 다음의 표와 같다.(2진화 10진수)BCD에서는 16개의 패턴중에 10개만 사용된다. 나머지 6가지의 패턴은 BCD가 피연산자인 논리회로에서는 작동하지 않아야 한다. BCD표현의 주 장점은 단순한 숫자 중심 디스플레이에 수치 정보가 표시될 때 편리한 형식을 제공해 준다는 것이다. BCD의 단점은 산술 연산을 수행하는 회로가 복잡하다는 것과 6개의 코드 패턴들이 낭비된다는 점이다.두 BCD수의 합은 그 합이 9를 넘어갈 수 있다는 사실 때문에 복잡하다. 9를 넘어가는 경우에는 정정이 필요하게 된다. X=x3x2x1x0이라하고 Y=y3y2y1y0이라하고 둘의 합인 S를 s3s2s1s0이라고 하자. 명백하게 X+Y≤9가 된다면 합은 2개의 4비트 이진수의 합이 된다. 그러나 X+Y>9가 된다면 결과는 두개의 BCD수를 필요로 한다. 게다가 4비트 가산기로 얻은 4비트 합은 아마 부정확하게 된다. 수정이 필요한 경우는 두가지가 있다. 합이 9보다 크지만 자리올림수가 없는 경우, 합이 15보다 커서 자리올림수가 형성되는 경우이다. 이 오류는 VHDL코드를 이용해서 보정할 수 있다.디코더 (decoder)와 인코더 (encoder)디코더는 인코딩된 정보를 해독하는 회로이다. 이진 디코더는 n개의 입력값과 2n개의 출력값을 가지는 회로이다. 한번에 한가지의 출력값만 나오고 각각의 출력값은 입력값 하나에 해당한다.디코더는 En입력을 가지고 있다. En입력은 결과값을 무력화시키는데 사용되는 값이다. En=0이면 디코더의 결과값이 나오지 않는다. En=1이라면 입력값이 결과값이 나오게 한다.인코더는 디코더의 반대 기능을 수행한다. 인코더는 주어진 정보를 컴팩트하게 줄인다.이진 인코더는 2n개를 n-비트 코드로 인코딩한다. 정확하게 입력신호 중 하나는 1의값을 가져야하고 그리고 출력값은 입력값이 1인값을 확인하는 이진수를 제공해야한다. 인코더는 주어진 정보를 표현하기위한 비트의 수를 줄이는데 사용된다. 인코더는 디지털 시스템에서 정보를 전송하는데 상용된다.실험 장비 및 재료실험 장비NI ELVIS오실로스코프: PHILIPS 60 MHz Digital Storage Oscilloscope PM3335함수발생기: EZ FG-8002DC power supply실험 재료저항7404, 7408, 7420, 7432, 7447, 7483, 7485, 7486, 74139, 741517-segment실험 방법비교기비교기의 기본적인 기능은 두 2진수의 크고 작음을 결정하기 위해 두 수의 크기를 비교하는 것이다. 배타적-NOR (XNOR) 게이트를 기본적인 비교기로 사용할 수 있다. 이번 실험에서는 XNOR을 이용한 기본적인 회로는 생략하고 4비트 비교기인 7485 소 자를 바로 다루고자 한다.그림 3과 같은 회로를 구성하고 진리표를 작성한다.그림 4와 같은 회로를 구성하고 진리표를 작성한다. 그림 4의 회로는 2진수를 2진화 10진수 (binary coded decimal, BCD)로 변환을 수행하는 회로이다. 가산기의 입력 부분인 B1~B4 단자에 인가해주는 입력이 이 회로에서 어떠한 역할을 하는지를 진리표를 통해 이해하는 것이 중요하다. BCD는 바로 다음 단계에서 수행하게 될 디코더 (decoder) 관련 실험에서 중요하므로 개념을 확실하게 익히도록 한다.디코더상태 혹은 명령들을 그에 상응한 2진 정보로 변환하는 회로를 인코더 (encoder)라고 하며, 역으로 주어진 2진 정보가 어떠한 상태 혹은 명령을 나타내는가를 해독하는 회로를 디코더 (decoder)라고 한다. 이번 실험에서는 대표적인 디코더 중 하나인 BCD to 7-segement decoder에 대해 다루도록 한다. 그림 5와 같은 회로를 구성하고 입력에 따른 7-segment의 출력 상태를 기록한다. 이 때 단자에는 1의 입력을 넣고, 단자에는 입력이 모두 0인 경우에만 1을 넣고 나머지의 경우에는 0 혹 은 1 중 어떠한 입력이든 무관하다.실험 결과비교기4비트 비교기2진/BCD 코드 변환기디코더결과 분석 및 토의비교기비교기 실험에서는 4비트 비교기를 이용해서 비교기를 알아보았고, 비교기의 성질을 이용해서 2진/BCD코드 변환기를 구성하였다.4비트 비교기의 경우 입력신호 A와 출력신호 B의 크기를 비교해서 출력값을 확인하였다. 회로도 위쪽의 7485의 B값은 0101(2)이므로 10진법에서는 5이다. AB일 때 1을 출력하므로 A값이 10보다 큰 경우 1을 출력하게 된다. 따라서 이 회로는 A가 5보다 작거나 10보다 크면 출력 Y가 1, 5이상 10이하의 경우가 되면 Y=0이 된다. 실험을 통해 작성한 진리표는 이를 잘 따르는 것을 볼 수 있었다.그 후 2진/BCD 회로를 구성하여서 회로를 확인해 보았다. 이 회로에서 7485는 비교기로 7483A는 가산기로 작용한다. 7485의 B값은 1001(2)로 9이고 7485는 A>B인 경우 출력값 1을 가지게 된다. A가 9보다 크게 되면 7485에서 출력값 1이 생기게 되어 이는 7483A의 가산기의 입력 B를 0110(2)로 만들어준다. 이를 이용하여서 BCD수는 보정을 받아서 표현되게 된다. A가 9이하일 경우는 BCD수가 다 표시되므로 보정을 할 필요가 없다. 실험을 통해 확인한 결과, 이를 잘 따라서 표시되는 것을 볼 수 있었다.디코더이 실험에서는 디코더로 작동하는 7447과 그를 표시하는 FND 507을 이용하여 디코더의 작동에 대해서 알아보았다. 7447은 4비트입력 ABCD(2)에 따라서 출력하는 값이 달라진다. 이 출력은 ABCD(2)가 디지털 출력기인 FND507에 표시되게 한다. 따라서 이진법 신호가 디지털 신호로 표시되는 것을 볼 수 있을 것이다. 실험결과 사진들처럼 이진법 신호들이 디지털 신호로 표시되는 것을 볼 수 있었다.참고문헌Stephen Brown, Zvonko Vranesic/Fundamentals of Digital Logic with VHDL Design 3rd editon/Higher Education/pg 299-300 331-332 337-338
Exp#5. 디지털 논리회로의 응용 – 가산기/비교기/멀티플렉서/디멀티플렉서실험 목표반가산기와 전가산기의 원리를 이해한다.비교기의 원리를 이해하고 이를 응용한 회로를 구성할 수 있다.멀티플렉서의 원리를 이해한다.실험 이론가산기가산기는 덧셈을 수행하는 디지털회로이다. 가산기는 여러 진법에 대해서 사용되지만 가장 일반적인 경우 2진수에서 사용된다.좌측의 그림은 반가산기와 반가산기의 진리표이다. 반 가산기는 한자리 수 이진수인 A, B를 더하는 역할을 한다. 반 가산기는 2가지 출력, Sum(S)과 Carry(C)를 가지고 있다. Carry는 자리올림수를 출력한다. 이 회로의 최종값은 2C+S가 된다.전가산기는 한자리 수 이진수를 연산하고 하위의 자리올림수 입력을 포함해서 결과값을 출력하는 가산기이다. 입력이 피연산자인 A, B 2개와 자리올림수인 Cin으로 3개 존재하는 구조이다. 전가산기의 최종값은 2Cout+S의 꼴로 나오게 된다.비교기비교기는 두 입력을 비교하여 결과를 알려주는 회로이다. 비교기는 AeqB, AgtB, AltB라는 3개의 출력값을 가진다. AeqB 값은 A와 B가 같을 경우 1이된다. AgtB 값은 A가 B보다 큰 경우, AltB 값은 A가 B보다 작은 경우 1이 된다.멀티플렉서 (multiplexer)와 디멀티플렉서 (demultiplexer)멀티플렉서(multiplexer)멀티플렉서는 여러 개의 입력 신호 중 하나를 선택해서 출력 신호로 만드는 회로이다.위 그림은 2 to 1 멀티플렉서이다. (a)에서 select부분인 s가 출력을 w0, w1중에서 고르게 된다. (b)의 진리표는 멀티플렉서의 진리표이다. 멀티플렉서는 한 개의 출력, n개의 데이터 입력, 그리고 개의 선택 신호를 가진다. 멀티플렉서 회로의 목적은 n개의 데이터 입력을 선택 신호의 통제하에 한 개의 데이터 출력으로 만드는 것이다.디멀티플렉서(demultiplexor)디멀티플렉서는 멀티플렉서의 반대기능을 하는 회로이다. 디멀티플렉서는 하나의 데이터 출력을 여러 개의 데이터 출력으로 만든다. 디멀티플렉서는 1개의 입력신호를 n개의 선택 신호를 이용하여 2n개의 출력신호로 내보내는 회로이다.실험 장비 및 재료실험 장비NI ELVIS오실로스코프: PHILIPS 60 MHz Digital Storage Oscilloscope PM3335함수발생기: EZ FG-8002DC power supply실험 재료저항7404, 7408, 7420, 7432, 7447, 7483, 7485, 7486, 74139, 741517-segment실험 방법가산기와 감산기가산기는 컴퓨터에서뿐만 아니라 수치 데이터를 처리하는 디지털 시스템에서 매우 중 요한 요소로서, 가산기의 기본 동작을 이해하는 것은 디지털 시스템을 공부하는데 중 요한 기초가 된다.그림 1의 회로를 구성하고 진리표를 작성한다.그림 2의 회로를 구성하고 SW의 상태에 따라 진리표를 작성한다. 이를 통해 가산기와 감산기의 차이점에 대해 이해하도록 한다.멀티플렉서/디멀티플렉서멀티플렉서 (multiplexer)는 여러 개의 데이터 소스로부터 입력되는 디지털 정보들을하나의 출력 단을 통해 공통의 목적지로 전송하는 소자이다. 기본적인 멀티플렉서는 다수의 입력선과 하나의 출력선과 여러 디지털 입력 데이터 중에서 어떤 데이터를 출력할 것인지를 선택하는 데이터 선택 입력을 갖고 있다. 멀티플렉서는 이러한 의미에서 데이터 선택기라고도 한다. 반면, 디멀티플렉서 (demultiplexer)는 하나의 선으로 디지털 정보를 받아서 여러 출력선으로 분배한다. 이러한 의미에서 디멀티플렉서를 데이터 분배기라고도 한다. 이번 실험에서는 시간 관계 상 멀티플렉서와 관련된 회로 만을 다루도록 한다.그림 6의 회로는 멀티플렉서 소자를 이용한 비교기 회로이다. A ≥ B일 경우에 Y 단 자에 1이 W 단자에 0이 출력되도록 D0~D7 단자에 적절한 신호를 인가해야 한다. 아 래의 진리표를 완성하여 그림 6의 회로가 2비트 비교기로 작동할 수 있도록 D0~D7 단자에 0, 1, B1, 중에서 적절한 신호를 인가하여 회로를 완성하도록 한다실험 결과2비트 병렬 가산기4비트 가/감산기가산기감산기멀티플렉서결과 분석 및 토의2비트 가산기그림 1의 회로를 구성하고 그를 이용해 진리표를 작성하였다. 가산기 회로이기에 A0, A1으로 표현되는 A값과 B0, B1으로 표현되는 B값의 합이 S1, S2, C1으로 표현되었다. 회로를 구성해서 얻은 진리표는 이진법의 계산으로 얻을 수 있는 진리표와 같게 나왔다. 이 실험에서 NAND를 사용하였다. NAND를 사용함으로 얻을 수 있는 이익으로는 NOT을 포함하여서 AND보다 표현할 수 있는 것이 많고, 집적도가 높기에 동일공간에 더욱 많은 소자를 넣을 수 있다는 점이 있다.4비트 가/감산기4비트 가/감산기 회로를 구성하여 가산기와 감산기로 작동하는지 확인하였다.그림 2의 회로에서 스위치를 닫는 경우 외부전원인 VCC가 접지로 들어가 입력에 영향을 주지 못하여 C0이 0이 된다. 이로 인해 출력신호는 입력신호 A와 B의 합으로 나타나게 된다. C4는 자리올림수이다.스위치를 여는 경우에는 VCC의 입력이 C0와 B1~B4의 XOR으로 들어가게 된다. 이로 인해 C0의 값은 1이 되고, 입력 B는 B의 보수가 된다. 출력신호는 입력신호 A와 입력 B의 보수를 더해준 값이 된다. 이진수의 보수는 음수를 나타내는 것이므로 결국 입력 A에서 B를 뺀 값이 된다. 출력신호 값이 음수가 되는 경우 C4가 0이 된다.이를 이용해 가산기 감산기 각각을 5가지 경우를 관찰해 보았다. 가산기와 감산기 모두 결과값이 잘 나오는 것을 확인할 수 있었고, 출력이 음수가 되는 경우도 제대로 작동하는 것을 볼 수 있었다.멀티플렉서멀티플렉서를 이용한 비교기를 만들어 그 작동을 확인하였다. A≥B의 경우에 출력값이 나오게 회로를 설정해 주었다. 출력값의 확인은 브레드보드의 LED를 이용하였다. 진리표를 이용하여 (1,0)을 출력하는 경우 를 (1,1)을 출력하는 경우 전압값을 (0,0)을 출력하는 경우는 접지를 주었다. 그 이후 A, B의 입력신호를 다르게 하며 LED의 점등을 관찰하였다. 이 경우 진리표에 작성한 출력값에 맞게 출력신호가 나오는 것을 확인할 수 있었고, 비교기 회로구성이 잘 이뤄졌다 볼 수 있다.참고 문헌 Hyperlink "https://en.wikipedia.org/wiki/Adder_(electronics)" https://en.wikipedia.org/wiki/Adder_(electronics)Stephen Brown, Zvonko Vranesic/Fundamentals of Digital Logic with VHDL Design 3rd editon/Higher Education/pg 318, 335, 340-341
Exp#4. 연산증폭기 (Operational Amplifier) (3)예비 레포트실험 목표연산증폭기를 이용한 특수한 증폭기 회로를 구성하고 그 원리를 이해할 수 있다.연산증폭기를 이용한 능동 필터를 구성하고 이를 RLC를 이용한 수동 필터와 비교하 여 이해할 수 있다.연산증폭기를 이용한 발진기 회로를 구성하고 그 원리를 이해할 수 있다.실험 이론발진기 – 555 타이머: 비안정 멀티바이브레이터의 동작발진기는 직류의 입력신호를 주기적 파형을 가진 출력으로 만드는 회로이다. 출력 전압은 발진기의 종류에 따라서 사인파 혹은 비사인파 일 수 있다.그림.1555 타이머는 그림1처럼 2개의 비교기, 한개의 플립플롭, 방전 트랜지스터, 전압 분배기를 가지고 있다. 플립플롭은 출력이 2가지 상태를 가지는 장치이다. 플릿플롭의 출력은 입력신호에 다르고 출력값은 고전압레벨(set,S), 저전압레벨(reset,R)을 가진다. 전압분배기는 비교기 전압레벨을 정하는데 사용된다. 위 그림의 회로에서3가지 저항이 다 같은값을 가지기 때문에 Upper comparator은 2/3VCC, Lower comparator은 1/3Vcc의 기준전압을 가지게 된다. 비교기의 출력은 플립플롭의 상태를 조절한다. 트리거 전압이 1/3Vcc보다 작게 된다면 플립플롭은 set의 상태가 되어 출력은 고레벨로 가게 된다. Threshold 입력은 보통 외부의 RC timing 회로에 연결되어있다. 외부 커패시터 전압이 2/3VCC를 넘어가게 되면 Upper comparator가 플립플롭을 reset으로 만들어 출력을 저전압레벨로 돌아가게 만든다. 기기의 출력이 낮아지면 discharge transistor(Qd)가 작동하고 외부 타이밍 커패시터에 빠른 방출을 위한 통로를 만들게 된다. 이런 기본 작동이 타이머가 발진기, one-shot, 시간 지연 요소로 구성되게 한다.그림2그림2는 555타이머가 비안정 멀티바이브레이터로 연결되었을 때의 구조이다. 이 경우 Threshold 입력(THRESH)이 트리거 입하면, upper comparator를 저출력 상태로 만들게 된다. 커패시터가 방출하기 시작해 1/3Vcc지점에 도달하게 되면, lower comparator이 고출력으로 바뀌며, 플립플롭을 set하게 된다. 플립플롭의 set은 Q.d의 베이스를 낮추고 트랜지스터를 끄게 한다. 다음번의 charging cycle이 반복되면 전체 과정이 반복된다. 이 과정의 결과는 구형파가 되고, 이 구형파의 duty cycle은 R1, R2의 값에 따라 달라진다. 이 발진기의 발진주파수와 듀티사이클은 다음과 같다. ,계측용 증폭기: 계측용 증폭기와 OPAMP 차동증폭기의 차이그림4계측용 증폭기는 차동 전압증폭기의 한 종류로, 두 입력단자간의 전압 차이를 증폭시킨다. 계측용 증폭기의 주 특성은 높은 입력 임피던스, 높은 공통모드 제거비(CMRR), 낮은 출력 오프셋, 낮은 출력 임피던스이다. 일반적인 계측용 증폭기는 그림4와 같다. A1과 A2는 비반전 증폭기로서, 높은 전압이득과 입력 임피던스를 가진다. A3은 unity-gain 차동증폭기로써 작용되며 같은 값을 가지는 고 정밀 저항을 가진다(R3=R4=R5=R6).그림5그림5에서 보듯이 gain-setting 저항, RG는 외부에 연결되어있다. 연산증폭기 A1은 차동 입력신호 Vin1을 비반전 +입력으로 받고 이 신호를 다음의 전압이득으로 증폭시킨다. A1은 또한 A2와 R2, RG에 의한 통로를 통해서 Vin2를 반전 -입력전압으로 갖는다. 이 때 Vin2는 다음의 전압 이득으로 증폭된다. 이 두식을 이용하여 계측용 증폭기의 폐루프 이득은 가 된다.능동필터연산증폭기를 능동 요소로 상용하는 필터들은 R, L, C만을 사용하는 수동필터 보다 여러 장점을 가지고 있다. 연산증폭기가 증폭시키기 때문에 신호는 필터를 통과할 때 감쇠하지 않는다. 연산 증폭기의 높은 입력 임피던스는 작동원의 과부하를 막고, 낮은 출력 임피던스는 필터가 부하에 영향을 받는 것을 막는다. 능동필터는 또한 원하는 결과를 바꾸지 않고서 넓은 주파수 범위를 게 골라져야 한다. 고역 필터의 차단주파수는 저역 필터의 차단주파수보다 충분히 낮아야 한다. 주파수 fc1은 고역필터의 차단주파수, fc2는 저역 필터의 차단주파수이다. 이상적으로 f0는 fc1과 fc2의 기하적 평균으로 가 된다.능동 대역저지 필터그림9능동 대역저지 필터는 notch, band-reject, band-elimination필터 라고도 불린다. 그림9의 그래프에서 보듯, 대역저지 필터는 대역 통과 필터와 반대로 특정 범위의 주파수만을 차단하고 나머지는 다 통과시킨다.실험 장비 및 재료실험 장비NI ELVIS오실로스코프: PHILIPS 60 MHz Digital Storage Oscilloscope PM3335함수발생기: EZ FG-8002실험 재료저항, 커패시터LM741C 연산증폭기, 555 타이머실험 방법발진기 - 555타이머발진기는 입력 신호 없이 출력 신호를 만드는 전자회로로 여러 가지 응용에서 신호원으로 사용된다. 트랜지스터와 연산증폭기를 사용해서 다양한 발진기를 구성할 수 있 는데, 이번 실험에서는 널리 이용되는 다용도 집적 회로 발진기인 555 타이머에 대해 서 알아본다. 555 타이머는 바이폴라 집적 회로로서 시그네틱스 사에 의해 1972년 처 음 소개된 이래로 다양하게 사용되고 있으며, 세계를 뒤흔든 25개 마이크로칩 중 하 나로 선정되기도 하였다. 555 타이머는 두 개의 비교기, 한 개의 SR 플립플롭, 그리고 스위치로 동작하는 트랜지스터로 구성되어 있으며 5 V의 공급 전압을 갖는 전력 공급 기 하나가 요구된다. (SR 플립플롭에 대해서는 중간고사 이후 디지털 논리회로 부분에 서 다루도록 할 것이다. 여기서는 내부 회로를 이해하기 보다는 555 타이머의 동작과 응용 방법에 초점을 맞추어 공부하도록 한다. 간단하게 설명하자면, 플립플롭이란 높 은 전압 레벨과 낮은 전압 레벨의 두 가지 출력을 내는 소자이며 출력 상태는 입력 신호에 따라 변할 수 있다)그림 1과 같은 회로를 구성한다그림 1은 555 타이머와 두 개의 외부 저항, 이 회로의 출력 파형을 관측하고 이를 기록한다.계측용 증폭기그림 2의 회로에 계측용 증폭기 회로를 추가하여 그림 3과 같은 회로를 구성한 다. 계측용 증폭기와 발진기의 접지는 서로 분리되어 있어야 한다. 계측용 증폭 기는 NI ELVIS에 구성하도록 한다.우선, 계측용 증폭기에 발진기 회로 대신 1 kHz, 0.3 Vpp인 정현파를 연결하여 그 때의 출력 파형을 측정하고 입력 대비 출력의 비를 계산하여 계측용 증폭기의 차동 이득을 구한다. 위의 회로에서 계측용 증폭기의 차동 이득은 이론적으로 아래와 같이 계산할 수 있다.위에서 계산한 차동 이득의 값과 실험적으로 얻어낸 차동 이득의 값을 비교한다.발진기 회로를 연결하고 그 때의 출력 파형을 입력 파형과 비교한다.공통모드 제거가 어떠한 역할을 하는지 알아보기 위해서 그림 4와 같이 가상의 잡음을 가한 후에 그 때의 출력 파형을 관찰한다. R7을 변화시키면서 공통 신호(잡음)가 최소가 되도록 해본다.능동 필터필터를 실현하는 방법은 인덕터와 커패시터를 이용하는 것이며, 그 결과의 회로를 수 동 LC 필터라 한다. 이와 같은 필터는 고주파 대역에서 잘 작동하지만 저주파 대역에 서는 큰 인덕턴스가 요구된다. 하지만 이런 경우 인덕터의 물리적인 부피가 커지고 그것의 특성이 매우 비이상적으로 된다는 문제가 생긴다. 더욱이 인덕터들은 모놀리 식 형태로 제조하기가 불가능하고 전자 시스템을 조립하는 데 사용되는 어떤 기법과 도 양립할 수 없다. 이러한 이유로 인덕터를 사용하지 않는 필터를 실현하기 위한 많 은 노력이 있었으며, 그 결과가 연산증폭기와 트랜지스터를 이용한 능동 RC 필터이다.그림 5와 같은 회로들을 구성한다(대역 통과 필터는 구성한 저역 통과 필터와 고역 통과 필터를 그대로 연결하면 된다).그림 5의 회로들에서의 bode 선도를 측정하고 각각의 경우 차단 주파수를 측 정한다. 차단 주파수는 입력 출력의 0.707배가 되는 지점의 주파수이다. 대역 통과 필터의 경우는 차단 주파수를 통해 Q-factor를 계산한다.위필터1968.44159123.7대역필터1778.27159111.8결과 분석 및 토의발진기 – 555타이머발진기의 작동을 알아보기 위해서 555타이머를 이용한 발진기 회로를 구성하여서 2가지 실험을 하였다. 첫 실험은 듀티사이클을 측정하기 위한 실험이었다. 발진 주파수, TH, TL 및 듀티사이클의 이론값은 매뉴얼의 식을 이용하여서 구하였다. 전체적으로 오차는 5프로 미만으로 나오면서 이 오차는 브레드보드 내부저항과 같은 원인의 영향이라고 생각해 볼 수 있다. 발진기의 파형도 관찰하였는데 사각파의 형태로 나왔다. 이는 직류의 입력신호를 주기적 파형을 가진 출력으로 만드는 회로인 발진기 회로의 특성을 잘 나타낸 결과로 볼 수 있다.계측용 증폭기처음 회로에서 차동이득에 대해 관찰하고 두번째 회로에서 공통모드 신호에서 잡음이 나오는 것과 그 잡음을 제거하는 가변저항값을 관찰하였다. 첫 실험에서 차동이득의 이론값은 매뉴얼의 식을 이용하여 계산하였고 실험값은 직접 측정한 Vout과 Vin을 이용하여 구하였다. 실험의 오차는 모든 경우 5프로 미만으로 나왔다. 이 오차의 원인으로는 증폭기 내부저항과 브레드 보드의 저항을 생각할 수 있다. 그 후 60HZ, 10Vpp의 신호를 주고, 가변저항을 변형하면서 측정하였다. 이 때 R6=7.1kΩ을 이용하여 실험하였다. 이 경우 가변 저항값이 특정 값이 아닌 경우에 잡음이 생기는 모습을 관찰할 수 있었다. 가변저항값이 2.9031kΩ이 된 경우 잡음이 없어지며 출력파형이 일정한 것을 볼 수 있었다. 공통모드의 경우 사용한 가변저항의 저항값을 RZ라 하고 R6+RZ을 RX라 하면 Vout은 다음식과 같다.잡음인 Vout이 0이 되기위해서는 Rx가 R5와 같아야한다. R5=10kΩ, R6=7.1kΩ이므로 이론적인 잡음을 제거하는 가변저항값은 2.9kΩ이 된다. 이론값과 실험값의 오차는 0.1프로로 이론적인 실험결과로 볼 수 있다.능동 필터능동 필터 실험에서는 저항과 커패시터는 변화시키지 않고 회로의 구조만 바꾸면서 고역필터, 저역필터,
Exp#9. 디지털 논리회로의 응용 – D/A, A/D Converter/반도체 기억장치메인 레포트실험 목표디지털-아날로그 변환기와 아날로그-디지털 변환기에 대해 이해할 수 있다.디지털 논리 소자를 이용하여 간단한 반도체 기억장치를 구성하여 그 원리를 이해할 수 있다.실험 이론디지털 아날로그 변환기 (D/A converter)디지털 아날로그 변환기는 디지털 신호를 아날로그 신호로 변환시키는 소자이다. 디지털 신호를 아날로그 신호로 바꾸는 방법은 디지털 신호에 해당하는 값을 그에 대응하는 전압이나 전류로 바꾸는 것이다. 이번 실험에서는 opamp를 이용한 R/2R 래더 변환기를 사용한다. 이 방식은 2개의 저항값만을 사용한다는 점이 장점이다.그림.1D3에 5V가 인가되고 나머지가 0V인 경우를 생각해보자. 이 상태는 이진수 1000인 상태이다. 회로를 분석하면 그림 2-(a)의 회로와 같을 것이다. 기본적으로 반전된 입력이 가상 접지에 있기에 전류가 2R 등가 저항을 통과하지 않는다.그림2-(a)그러므로 R7을 통과하는 전류는 또한 Rf를 통과한다. 그리고 출력 전압은 -5V가 된다. 연산 증폭기가 negative feedback에 의해 반전 입력을 0V 근처로 유지하기 때문에 모든 전류는 반전입력이 아닌 Rf로 흐르게 된다.그림2-(b)그림 2-(b)는 D2에만 5V가 인가되고, 나머지에 0을 인가해 0100인 상태이다. 이 회로를 태브냉 등가에 의해서 변환하면 우리는 테브냉 등가 전압으로 2.5V를 얻게된다. Rf로 흐르는 전류는 2.5V/2R이 되므로 결국 Vout은 -2.5v가 된다.그림 2-(c)그림 2-(d)0010과 0001의 경우는 각각 그림 2-(c), (d)와 같게된다. 이 경우도 각각의 회로를 테브냉 등가를 이용해서 계산하면 출력값이 나오게 된다.아날로그 디지털 변환기 (A/D converter)아날로그 디지털 변환기는 아날로그 신호를 디지털 신호로 바꿔주는 신호이다. 아날로그 신호는 연속적이지만, 디지털은 불연속적이다. 따라서 이를 변환하기 위해서는 아날로그 신호를 sampling해서 디지털 신호로 변환해줘야 한다. 이번 실험에서는 계수형 변환기를 사용한다. 계수형 변환기는 내부에서 D/A 컨버터로 발생시킨 전압이 아날로그 입력보다 커지는 경우까지 비교한다. 내부 비교기는 D/A컨버터의 전압이 아날로그 입력 전압보다 커지는 순간 계수기를 정지시키고, 이 마지막의 값이 디지털로 변환된 출력값이 된다.RAM (random access memory)램은 컴퓨터 메모리의 한 종류로, 컴퓨터 내 데이터의 물리적 위치에 관계없이 거의 동일한 시간내에 데이터 항목을 읽거나 쓸 수 있도록 한다. 램은 전원이 끊어지면 기록된 정보가 사라지는 특성이 있다. 램은 이러한 특성 때문에 컴퓨터의 주기억장치, 프로그램의 일시적인 로딩 및 데이터의 일시적 저장에 사용된다. 램의 종류에는 D램, S램이 있다. D램은 트랜지스터, 커패시터 쌍을 이용하여 데이터를 저장한다. D램은 전원이 연결되어있어도 전하가 방출되기에 데이터가 손실될 수 있다. 이를 방지하기 위해서 외부 메모리 리프레시 회로가 필요하다. D램은 저장 용량이 커 PC의 주요 메모리로 사용된다. S램은 플립플롭을 이용하여 데이터를 저장한다. S램은 D램보다 빠르기에 CPU의 캐시 및 내부 레지스터로 사용된다.실험 재료 및 장비실험 장비NI ELVIS오실로스코프함수발생기: EZ FG-8002DC power supply(2) 실험 재료저항, 커패시터7400, 7403, 7447, 7493, 74191741실험 방법D/A, A/D Converter그림 1과 같은 회로를 구성하고 입력 상태에 따른 출력 전압을 기록한다.그림 2와 같은 회로를 구성한다. ST 단자는 1의 상태로 하여 카운터를 리셋시킨 후 D/A 변환기의 출력 전압이 0 V인 것을 확인한다. 입력 전압을 0 ~ 6.5 V까지 0.5 V 간격으로 변화시키면서 디지털 출력 상태를 기록한다. 이 때 ST 단자는 0의 상태로 하고 clock 입력 단자에는 1 Hz, 5 V의 펄스를 인가하여야 한다.VrefQdQbQcQa00.511.522.533.544.555.566.5반도체 기억장치 – RAM/ROM일반적으로 기억소자는 크게 RAM (random access memory)과 ROM (read only memory)으로 구분된다. RAM은 임의로 기억내용을 읽을 수 있고 다시 기록할 수도 있으나 전원이 끊기면 지금까지의 모든 기억 내용을 잃는다. 이에 비해 ROM은 내용을 기록하는 데는 특별한 방법이 필요하나 한 번 기록된 내용은 전원이 끊어져도 그 내용을 잃지 않는다. 이번 실험에서는 간략한 RAM 회로를 구성해보도록 한다. ROM의 경우는 시간 관계상 실험을 생략하고 학생들의 자발적인 학습에 맡기도록 한다.그림 3과 같은 회로를 구성한다.초기에 모든 write select를 접지와 연결한다.각각의 cell에 기억시키기 위해 다음과 같은 작업을 수행한다. Cell A에 기억시키기 위해서는 WA를 1의 상태로, cell B에 기억시키기 위해서는 WB를 1의 상태로 한다. 만일 각각의 cell에 0을 기억시키고 싶다면 W0을 1의 상태로 하였다가 접지로 연결하면 된다. 반대로 1을 기억시키고 싶다면 W1을 1의 상태로 하였다가 접지로 연결한다. 기록을 종료시키기 위해서는 write와 write select를 접지 측으로 한다.기억된 내용을 읽기 위해서 다음과 같은 작업을 수행한다. RA를 1의 상태로 하고 RB를 0의 상태로 하면 cell A의 내용이 sense 0에 나타난다. 반대의 경우에는 cell B의 내용이 sense 1에 나타난다.위와 같은 작업을 cell A와 cell B에 기록할 수 있는 모든 상태의 경우에 대해 확인하여 기록하고 정리한다.실험 결과D/A, A/D ConverterD/A Converter1000의 경우0100의 경우0010의 경우0001의 경우A/D Converter반도체 기억장치 – RAM/ROM결과 분석 및 토의D/A, A/D Converter컨버터 실험에서는 사다리형 D/A 컨버터, 계수형 A/D컨버터 회로를 구성하여서 실험하였다. D/A 변환기의 경우에는 이론에서 설명했듯이 입력신호를 주는 경우에 따라서 출력전압이 바뀌게 된다. 실험값은 오실로스코프를 이용하여서 관찰하였다. 이론값은 테브냉 등가를 이용하여서 1000, 0100, 0010, 0001의 경우에 해당하는 전압을 계산하였고, 그 외의 값들에 대해서는 이들을 더하여서 계산하였다. 그 결과 오차는 4프로 이하로 나오는 것을 확인할 수 있었다. 이 오차율은 실험에서 사용한 저항의 오차율보다 작아 실험결과가 잘 나왔다고 볼 수 있다.A/D 변환기는 카운터인 7493을 이용한 회로이다. 7493의 출력 신호는 클럭 신호와 함께 7411에 들어가게 된다. 7411의 출력신호는 741으로 들어가게 된다. 7411의 출력신호는 741에 들어가게 된다. 741의 출력은 클럭과 함께 다시 and게이트인 7411에 들어가게 된다. 7411에는 클럭 신호를 통해 1이 들어가고 있고, 741소자에서 특정 기준 이상의 출력 전압이 나오게 된다면 7493에 들어가는 클럭이 제대로 들어가게 된다. 변환기는 0V에서 0010의 값을 가지며 전압을 올릴수록 해당되는 디지털 신호가 커지는 것을 볼 수 있었다. 만약 구간을 더욱 작게 나눠서 측정한다면 모든 디지털 신호에 해당하는 전압구간을 측정할 수 있을 것이다.RAM/ROMRAM 실험에서는 RS래치 회로를 이용하여 회로를 구성하였다. W1과 W0를 통해 입력한 신호를 기억하여서 읽을 때 RA, RB로 1의 신호가 인가될 경우 기억한 신호가 그대로 출력되는 회로이다. 실험 결과로 나온 데이터를 확인했을 때 제대로 쓰기와 읽기가 작동하는 것을 볼 수 있었다.참고문헌 Hyperlink "https://en.wikipedia.org/wiki/Analog-to-digital_converter" https://en.wikipedia.org/wiki/Analog-to-digital_converter Hyperlink "https://en.wikipedia.org/wiki/Random-access_memory" https://en.wikipedia.org/wiki/Random-access_memoryThomas L. Floyd/Electronic Devices Conventional current version 10th edition/pearson/ pg 690-694Brian Holdsworth, Clive Woods/Logic Design 4th edition/newness/pg 294-303