차동 증폭기의 동작차동 증폭기는 아날로그 집적 회로에서 가장 폭넓게 사용되는 회로 블럭으로 다음과 같이 두 개의 트랜지스터 이미터를 연결하여 구성한다. 외형적으로는 두 개의 입력 단자를 가지며 단일 출력인 경우에는 한 개의 출력 단자를 가지고 차동 출력인 경우에는 두 개의 츨력 단자를 가진다. 두 입력 단자에 공통으로 인가되는 전압은 공통 모드 전압 (common-mode voltage)이라 하고 차이 나는 신호를 차동 모드 (difference-mode) 또는 차동 신호 (differential signal)라 한다. 공통 모드 전압에 대해서는 차동 증폭기가 둔감하고 차동 신호에 대해서는 민감한 특성을 가진다.BJT 차동 증폭기의 대신호와 소신호 동작이 아래의 스라이드에 정리되어 있다.다음 애플릿은 차동 증폭기의 전달 특성으로 차동 신호 vd = vB1 - vB2의 크기가 약 4VT = 100 mV이내에서 증폭기로 동작함을 알 수 있다.If your browser recognized the applet tag, you would see an applet here.다음 애플릿은 차동 증폭기의 공통 모드 전압을 vcm = vB1 = vB2로 인가하고 그것의 크기를 변화시킬 때 Q1의 컬렉터 노드와 이미터 노드의 전압 변화를 바이어스 전류원 I의 출력 저항 Ro의 크기에 따라 관측하기 위한 것이다.공통 모드 전압의 증가분이 이미터 전압의 상승과 Q1과 Q2의 VCE 강하로 흡수되어 Q1과 Q2의 컬렉터 전압은 일정하게 유지되는 특성을 관찰할 수 있다. 그러나 공통 모드 전압이 컬렉터 노드의 전압 5 V를 초과하면 트랜지스터가 포화 영역으로 진입하여 이미터와 컬렉터 노드의 전압이 동반 상승하게 된다. 공통 모드 전압이 강하할 때에는 이상적인 전류원으로 바이어스되어 있어서 이미터 전압이 공급 전압보다도 더 낮아지고 있다. 실제적으로는 전류 거울로 바이어스되므로 공급 전압 이하로는 낮아지지 않을 것이다.바이어스 전류원 I의 출력 저항이 작아지면 공통 모드 전압의 증가로 인한 총 바이어스 전류의 증가로 두 트랜지스터의 컬렉터 전압은 일정하지 않고 다소 감소하게 된다. 그러므로 바이어스 전류원의 출력 저항이 크면 공통 모드 전압에 대한 컬렉터 전압의 변화가 적어진다.If your browser recognized the applet tag, you would see an applet here.위의 애플릿에 필요한 시뮬레이션 데이터를 얻기 위한 회로 파일은 다음과 같으며, 바이어스 전류원 Ib의 출력 저항은 Ro이다. 그리고 트랜지스터의 모델은 수동 해석에서 사용하는 단순한 것이다.A BJT differential amplifier.options nopage nomod.width out=80.dc vcm -10 10 0.2.print dc v(4) v(3)Vcc 6 0 dc +10VVee 7 0 dc -10Vvcm 1 0 dc 0V ac 1VQ1 4 1 3 QnpnQ2 5 1 3 QnpnRc1 6 4 10kRc2 6 5 10kIb 3 7 dc 1mARo 3 7 50k.model Qnpn NPN (Is=15fA Bf=100 Vaf=100V).end차동 증폭기의 소신호 특성바이폴라 차동 증폭기의 소신호 차동 모드와 공통 모드 특성이 다음 슬라이드에 정리되어 있다.집적회로 바이어싱과 전류거울집적회로의 바이어싱은 제조 단가가 저렴하고 정합 특성이 양호한 트랜지스터를 주로 사용하며, 용량이 큰 커패시터와 다수의 저항을 사용하는 것을 피해야 한다. 그래서 집적회로에서는 정전류원을 사용하여 바이어스하게 되며, 이 전류원은 전원 공급기의 전압, 주변 온도, 그리고 공정의 변화에 둔감하도록 설계되어야 한다. 다음 스라이드에는 전류 거울과 위들러 전류원에 관한 입력 전류와 출력 전류의 관계식이 정리되어 있다.능동 부하를 가진 BJT 차동 증폭기전자회로의 부하로 사용되는 트랜지스터를 능동 부하라고 하며, 트랜지스터가 저항보다 실리콘 면적을 작게 차지하고 정합 특성이 양호하여 저항대신 사용되게 된다. 다음 회로는 능동 부하를 사용한 BJT 차동 증폭기이며 능동 부하는 전류 거울로 구현되어 바이어스 전류를 공급하면서 부하 작용을 한다. Q5와 Q6이 능동 부하이며 Q3과 Q4는 바이어스 전류원이다. 바이어스 전류의 크기는 저항 RB의 조절을 통해 변경할 수 있다. 그리고 차동 신호는 종속 신호원을 사용하여 두 입력 단자에 대칭적으로 인가되어 있다.
S 파라미터란?S (scattering) 파라미터는 RF에서 가장 널리 사용되는 회로결과값이다. S 파라미터의 정의는 극히 간단한데, 주파수분포상에서 입력전압대 출력전압의 비를 의미한다. 예를 들어 S21 이라하면, 1번 포트에서 입력한 전압과 2번 포트에서 출력된 전압의 비율을 의미한다.즉 1번으로 입력된 전력이 2번포트로는 얼마나 출력되는가를 나타내는 수치이다.S 파라미터의 분류S 파라미터의 각 element들을 분류하자면 크게 4가지 특성파라미터로 분류할 수 있다. 이것은 절대적인 분류가 아니며, 사용자가 설계하려는 구조의 목적에 따라 설계자 본인이 판단하는 것이다.분류설명Transmission입력 포트대 출력포트의 비. 입력신호를 전송하고자하는 포트까지 얼마나 도달하느냐를 평가한다. 2포트 소자라면 S21이 그에 해당한다.Reflection각각의 입/출력력포트의 자체 반사값. S11, S22, S33과 같이 입력과 출력포트가 같은 경우이며, 자기가 입력하고 출력하여 돌려받은 값이므로 결국 반사된 값을 의미한다.coupling전송하고자 하는 포트 이외의 포트로 유출된 전력. isolation과는 달리 coupling 자체를 이용하는 경우도 있으므로 가장 애매한 용어임. 일반적으로 연결되어 있지 않은 선로로의 간섭이나 원하지 않아도 유출되는 전력을 의미한다.isolation전력을 종단시키는 포트로 유출된 전력. 4포트 하이브리드 커플러에서 S41의 경우.S 파라미터의 판독RF에서 S 파라미터는 가장 중요한 결과라고 해도 과언이 아니다. 거의 모든 RF 장비나 부품의 spec은 S 파라미터를 기준으로 만들어져 있기 때문에, 특성을 잘 이해하고 그래프를 잘 판독할 수 있어야 한다. 대부분의 S 파라미터는 dB 스케일로 나타낸다. dB 스케일에서 0dB란 입력된 기준전력을 의미하며, 비선형소자가 추가되어 전력증폭이 되지 않는 한 출력된 전력은 0보다 낮은 - 값으로 내려가는 것이 정상이다.RF 초심자의 경우 S 파라미터 판독에 어려움을 겪는 경우를 종종 보게 되타내었다.LPF (Low Pass Filter) BPF (Band Pass Filter)LPF : 주파수가 증가할수록 반사계수 S11(빨간색)은 증가하여 입력전력을 되돌려보내고, S21(파란색)은 주파수가 내려갈수록 증가하여 낮은 주파수에서 더욱 많은 전력을 출력포트까지 보내고 있다.BPF : 통과대역에서 S21은 0dB에 가까운 값으로 상승하며, 나머지 대역에서는 억제되어 매우 낮은 값을 기록해야 한다. S11은 정 반대의 양상으로 통과대역에서 가장 낮은 값을 보임으로써, 입력된 전압이 반사되지 않고 최대한 전송된다는 것을 알 수 있다.예 2) 안테나안테나의 경우 multi-port를 제외하고 일반적으로 입력포트만 존재하기 때문에 S11만 출력된다. 보통 특정 주파수대역에서 S11이 뚝 떨어지는 형상을 취하게 되는데, 방사주파수에서 S11이 크게 떨어진다는 의미는 그 주파수에서 입력전압이 반사되지 않고 최대한 외부로 방출된다는 의미이다. S11이 크게 떨어질수록 SWR도 작아져서 안테나의 방사특성이 좋다는 의미가 되며, 떨어지는 그래프의 폭이 넓으냐 좁으냐에 따라 협대역이냐 광대역이냐가 구분된다.광대역 (Broadband) 협대역 (Narrowband)예 3) 전송선로전송선로의 전송성능을 해석한 경우이다. 이 경우 1번포트에서 2번포트로 전송하는 구조인데, 나머지 포트로 가는 S파라미터들은 불필요한 coupling coefficient를 의미한다. 이를통해 각 선로의 삽입손실, 전달능력, 선로 커플링 등을 체크해볼 수 있다.예 4) 증폭기/발진기 (Amplifier / Oscillator)능동회로의 S파라미터 특징은 입력전압이 증폭되기 때문에 0dB 이상의 값을 가진다는 것이다. 증폭기와 발진기는 원래 설계방식도 유사하고 S 파라미터형상도 유사하지만, 증폭기는 넓은 주파수대역폭을 가지는 반면 발진기는 특정 주파수의 발진을 목표로 하기 때문에 샤프한 막대기처럼 나타난다.증폭기 (AMP ; Amplifier) 발진기 (OSC ; Oscillator)Normali떤 정규화 과정이 하나 있다는 것을 기억하시죠?바로 해당 임피던스 값을 특성 임피던스(Characteristic Impedance)로 나누어주는 것입니다. 일반적으로 우리는 이 특성임피던스 값을 50옴을 사용하는데, 우선 스미스차트 좌표상에 올리기 전에 50으로 나누고 나서 그 값을 올리게 됩니다. 예를 들어 70 + j12 에 해당하는 임피던스를 스미스차트 상에 찍어볼려면 50으로 나눈 1.4 + j 0.24 에 해당하는 좌표값에 점을 콕 찍게 됩니다. 왜일까요???그것은, 특성임피던스가 꼭 50옴이지는 않기 때문입니다. 상황에 따라 75옴이 될 수도 있고, 또 어떤 특정 임피던스를 사용할지, 또는 아예 임의의 임피던스값을 잡던 사용자 맘대로 하기 위해서는 normalize를 해야 합니다.이점을 이해하기 위해 우선 알아두어야 할 것은, 스미스차트의 중심점이 곧 특성임피던스를 의미하게 된다는 것입니다. 스미스 차트 중심점의 좌표는 1+j0 이기 때문이죠. 50+j0 옴의 특성 임피던스를 normalize하면 바로 1+j0입니다.스미스차트 좌표는 어떤 특성임피던스에서도 동일하게 적용할 수 있으려면, 중심점이 50, 66, 75와 같은 어떤 특정한 하나의 임피던스좌표를 지칭해서는 안되겠죠. 그래서 스미스차트는 1이라는 임피던스 점을 기준으로 만들어놓고, 해당 임피던스점들을 각각의 회로와 시스템 특성에 맞는 임피던스로 나누어 쓰게 하는 것입니다. 결국 이것도 편하자고 이러는 것입니다.스미스 차트에 점찍기기초부터 시작하는 마음으로.. 스미스 차트 상에 점을 찍으려면 우선 스미스차트 좌표의 구조와 특성부터 이해해야겠죠. 먼저 복소 임피던스를 찍으려면 실수좌표계와 허수좌표계를 이해해야 할 것입니다.흠~ 뭐 좌표계가 좀 야리꾸리하게 생기긴 했지만 한두 번 점찍어보면 별거 아닙니다. 실수부는 수평선을 따라 오른쪽 끝이 무한 대의 중심점이 되고, 왼쪽으로 중심이 이동할수록 점점 값이 작아집니다. 즉 임피던스 점이 위치하는 곳을 지나는 원의 좌표값이 실수부 좌표가 되지요. 허수무슨 임피던스를 찍어보란 말일까요? 아무 임피던스나 콱 찍으면 되는 건지??그것은 어떤 용도로 스미스차트를 사용하느냐에 따라 다를 수 있습니다. 소자의 특성을 보는 경우라면 그냥 그 소자의 임피던스를 찍으면 되고, 임피던스 매칭을 하는 경우는 특성임피던스와 매칭시키고자 하는 부하(load) 임피던스를 찍습니다. 이 문제는 이 강의시리즈를 천천히 따라해가다보면 자연스럽게 이해될 것입니다.그리고 스미스차트상에 점을 찍은 순간, 그 점은 임피던스를 나타냄과 동시에 반사계수를 나타냅니다. 이전 장에서 보았듯이, 스미스차트 자체가 반사계수와 임피던스관계를 통해 만들어진 좌표계이기 때문이죠. 그냥 좌표를 읽으면 그건 임피던스 점을 의미하고, 그 임피던스점까지 중심에서 떨어진 거리를 전체 반지름으로 나눈 값이 반사계수의 magnitude가 되고, 임피던스 점까지의 각도값을 읽으면 반사계수의 phase가 됩니다.스미스차트 좌표상에서 임피던스 점은 곧 반사계수를 의미한다는 것은 이제 여러번 들어서 귀가 간지러우실텐데.. 여기서 한가지 고백할 점이 있습니다. 사실은, 임피던스 점을 가져와서 스미스차트에 직접 찍는 경우는 그리 많지 않다는 점입니다. 좌표계를 쉽게 이해하기 위해서 그렇게 설명한 것일뿐, 실제로는 반사계수를 스미스차트상에서 그대로 plot하여 역으로 임피던스를 알아내는 경우가 더 많습니다.왜냐하면 RF에서 가장 흔히 사용하는 지표인 S파라미터를 그대로 갖다 쓰기 때문입니다. S11이나 S22 와같은 반사계수 지표를 스미스차트상에 나타내면 그게 바로 해당 부하 임피던스를 알려줍니다.스미스 차트 점 들여다보기많은 경우, S11이나 S22 등의 반사계수들은 한주파수에서만 보는게 아니라 여러 주파수범위에 걸쳐 보게 될 것입니다. 그래서 그리다 보면 아래와 같은 식의 돼지 꼬리 그림이 나오기도 합니다.초보시절에는 스미스차트상에 하나의 점이 표시되지 않고 저렇게 줄줄히 꽈리를 틀면 대체 저게 뭔가.. 싶을 것입니다. 별거 아닙니다. 그냥 주파수별로 반사계수들을 줄줄히 보여준건 스미스차트의 그림은 아래와 같은 의미로 표현됩니다.그래서 S11이 어느점에 존재하느냐는 결국 그 자체만으로 현재 부하임피던스가 인덕턴스 성분을 갖고 있는지, 캐패시턴스 성분을 갖고 있는지 쉽게 알 수 있습니다. 보는 즉시 바로바로 팍팍 감이 오지요!또한 그것이 주파수별로 나타날 때, S11 궤적이 위와 아래를 걸치게 된다는 것은, S파라미터 플롯상에서는 어떤 극점을 가진다는 의미가 됩니다. 쉽게 말해서 올라가다가 내려가던지 내려가다가 올라가던지 하는 위치가 된다는 것이지요. 스미스 차트의 수평선을 통과하는 점에서는 기울기의 음양이 바뀌는 극점이 됩니다. 아래 그림을 참조하세요.또한 임피던스점=반사계수의 원리에 의해 S11이 낮을수록 (즉 반사가 적을수록) 스미스차트상의 점들은 중앙부에 모이고, S11이 높을수록(반사가 많이 될수록) 중앙에서 멀어지고 흩어집니다.아래는 Filter의 S파라미터를 plot한 것으로서, S11이 떨어지는 통과대역 주파수의 임피던스점들은 스미스차트에서 중앙부에 위치하고 있음을 알 수 있습니다. 임피던스 점의 반사계수 읽는 법에서 알 수 있듯이, 중앙부에 가까울수록 반사계수가 작다는 의미이므로 당연한 것이지요.이러한 판독법들은 그냥 스미스차트 좌표계를 정확히 이해하면 자연스럽게 유도되는 것이지만, 많은 경우 경험적으로 익히는 경우가 더 많을 것입니다. 왜냐면 이렇게 설명한 책은 거의 없기 때문이지요. 차근차근 이해해보면서 스미스차트상의 점이 무얼 의미하는지 음미해보시기 바랍니다.임피던스와 어드미턴스지금까지는 임피던스의 관점에서만 스미스차트를 설명했습니다. 그런데, 스미스차트의 아주 중요한 장점중 하나가 바로 임피던스와 어드미턴스를 동시에 쉽게 접근할 수 있다는 것입니다.어드미턴스(Admittance)는 아시다시피 임피던스의 역수를 의미하며, 임피던스는 얼마나 신호의 흐름을 방해하느냐의 기준이 되는 것에 반해 어드미턴스는 얼마나 신호를 더 잘 흘러줄 수 있느냐라는 의미가 되지요. 이것은 결국 병렬 회로 구성을 위해 필요한 개념입니다.
VerilogHDL Coding Examples# [Full Adder]1. Full Adder(전가산기) 이론컴퓨터 내부에서 여러 비트로 된 두 수를 더할 때는 두 비트에서 더해진 결과인 캐리는 더 높은 자리의 두 비트의 덧셈에 추가되어 더해진다. 이때, 아래 자릿수에서 발생한 캐리까지 포함하여 세 비트를 더하는 논리회로를 전가산기라 한다. 전가산기는 3개의 입력을 갖는다.2. Full Adder 진리표 및 SUM, Carry 카르노맵ABCSUMCarry0**************************1011100111111SUM=X x Y x ZC= XY + XZ+ YZ3. 논리회로Z는 입력이므로 Cin으로 대체한 기본게이트로 이루어진 전가산기의 논리회로이다. 하지만 간소화를 거친 뒤 줄일 수 있는데로 줄이고 회로를 XOR 형식으로 바꾸면 아래와 같이 나온다.VerilogHDL Coding Examples[1] 1bit full Adder Module & TB1. 코드소스2. Sumulation3. 파형분석과 고찰1비트의 연산을 할 수 있는 전가산기인데 , 전가산기의 Carry In과 Carry out 을 연결하여 여러 비트 병렬 2진 가산기를 설계하고 결과값을 확인하였다.[2] 4bit full Adder Module & TB1. 코드소스2. Simulation3. 파형분석과 고찰전가산기(Full Adder)는 3 개의 입력에 대해 덧셈을 수행하는 모듈이다. Fulladder 1bit를 이용해서 4bit를 구성했다. Binary를 Unsigned로 바꿨을 때의 파형을 확인한 결과, Carry값이 생기면 carry_out이 상승하는 것을 알 수 있다.설계와 테스트벤치는 Verilog 언어를 이용하여 모델링 되었으며, 시뮬레이션으로 논리동작을 검증하고 결과 파형을 분석하여 설계가 올바로 되었음을 증명하였다.# [Multiplexer(MUX)]1. 이론복수개의 입력 신호로부터 특정 조건에 의해 입력 신호를 한 개만 선택할 때 사용하는 것이 멀티플렉서 이다. 멀티플렉서의 반대의 목적으로 사용하는 것이 DeMUX이다.멀티플렉서는 n개의 선택선의 조합에 의해 선택된 2^n 개의 입력선 중에서 하나를 선택하여 출력선에 연결시켜 주는 회로이며, 여러 개의 회로가 단일 회선을 공동으로 이용하여 신호를 전송하는데 사용한다.2. Multiplxer 진리표(4x1 멀티플렉서의 예)S1과 S0의 값에 따라 어떤 입력이 출력되는가를 선택하는 것이라고 할수있다.입력된 4개의 값중 하나를 선택해 출력한다.3. 논리회로 및 볼록도멀티플렉서는 많은 입력들 중 하나를 선택하여 선택된 입력선의 2진 정보를 출력선에 넘겨 주기 때문에 데이터 선택기(data selector)라 부른다. 경우에 따라 4x1, 8x1 등 멀티플렉서를 설계할 수 있다.[3] 2 to 1 Multiplexer Module & TB1. 코드2. Simulation3. 파형분석과 고찰i1값을 0, i0값을 10ns 주기로 하고, se1이 200ns마다 1과0을 반복하는 주기로 하였더니, Sel이 0일때 출력 z는 i0의 값을 받게되고 sel이 1일때, i1의 값이 출력되었다.[4] 4 to 1 Multiplexer Module & TB1. 코드2. Simulation3. 파형분석과 고찰-신호 i0은 10ns의 주기, 신호i1은 논리값 0을갖고, 신호 i2는 논리값 1을 갖는다.신호 i3은 100ns의 주기를 갖고, 신호sel는 200ns의 주기를 갖는다.즉 Sel의 값에 따라 출력신호가 i0,i1,i2,i3이 선택되어 출력된다.# [Binary Decoder]1. 이론디코더는 인코더와 정반대 기능을 수행하며, n비트의 2진 코드 입력에 의해 최대 2^n개의 출력이 나오므로 가능한 2진 입력의 조합만큼 출력을 가진다.디코더는 인코더가 한 일 암호화 또는 컴퓨터가 인식할 수 있는 것을 해독해서 사람이 읽을 수 있게 바꾸는 해독기 역할을 한다.2 진리표3. 2x4 논리회로 및 블록도
? 전위계에 대한 사상도 ?1. 다음 식을 MATRAP을 이용해 등전위면을 그린다※ 조건b=d ,= 100v① M-file을 작성 할 때는 m의 값을 ∞로 보낼수 없기 때문에 201까지 보내기로 한다.②=100V 로 설정된 상태에서 등전위면을 0~100V 까지 간격을 1V, 10V 로 넣어 그림을 도사한다.2. M-file 작성%----------------------------------------------------------------------------%등전위면 그리기%----------------------------------------------------------------------------clear all %현재의 작업 공간을 비우는 명령어close all %현재 보이는 그림 파일을 닫는다.b=100; % 그래프를 지정하기위해 임의의 b,d를 정한다.d=100; % b=d 이기 때문에 값이 같다.v0=10:10:100;%----------------------------------------------------------------------------%그래프로 출력 할때를 10 V~ 100V 까지 10V의 간격으로 도사한다는 것이다.%간격을 바꾸고 싶을 때는 가운데 10을 자신이 원하는 간격만큼 숫자를 변화시킨다.%----------------------------------------------------------------------------for x=1:1:d % x의 변화값for y=1:1:b % y의 변화값% -----------------------------------------------------------------------------%여기서 for의 함수는 스칼라량인 x와 y를 식 V에 숫자를 반복해서 계산을 하게는 함수이다%------------------------------------------------------------------------------m=(1:2:201);%------------------------------------------------------------------------------% 위에서 제시한 식 V는 퓨리에의 급수를 이용해 m의 값을 ∞로 보내야 한다. 그렇지만 Matrab에서% ∞넣어주면 식을 빠져 나올수 없기 때문에 임의이 범위를 정해준 것이다.%------------------------------------------------------------------------------v=(4*100/pi)*(1./m).*(sinh(m*pi*x/b).*sin(m*pi*y/b))./sinh(m*pi*d/b);%------------------------------------------------------------------------------% 이제 V의 식을 넣는다. 이때 1/m 이나 sinh 에는 (.)을 찍혀있다.%(과제를 하다가 여기서 틀려서 애를 많이 먹었었다.)% 이것은 matrab에서의 matrix의 연산을 보면 쉽게 알수 있는 부분이다.% 예로 x=[1,2,3];y=[4,5,6] 이라 넣어주고 z1=x*y를 하면 값은 나오지 않는다.% 그렇지만.. z2=x.*y 를 하면 z2= 4 10 18 이 됨을 알 수 있다.%그것은 z1은 행렬의 곱이고 z2는 단지 x와 y에 매치는 되는 곳을 서로 곱해준 값이 나온다.%그렇기때문에 식 V를 입력해 줄 때는 (1./m).와 (sinh(m*pi*x/b).*sin(m*pi*y/b)).처럼 (.)를 넣어줘야한다.%------------------------------------------------------------------------------V(y,x)=sum(v);%------------------------------------------------------------------------------% 위에서의 연산을 실제의 식처럼 ∑의 연산을 해줘야하므로 x,y의 함수 V는 v의 합들로 이루어져 있다는% 식을 넣어주어야 한다.%------------------------------------------------------------------------------endend % 위의 for 함수의 연산을 닫아주어야 한다.