발진을 잡아라!


발진의 발생원리를 이해하셨다면, 이제 발진을 잡는 법에 대해 알아보도록 합니다.

 

Stability factor, K

우선 회로나 시스템 설계 단계에서 회로의 안정도를 명확하게 파악할 수 있는 stability factor K를 알아둘 필요가 있습니다.

 

K값의 수식적 정의를 개념적으로 잘 풀어보면, 반사되는 양과 통과되는 양의 수학적 조합임을 알 수 있습니다. K의 분자는 입사파 전력을 1로 볼때 반사된 파의 전력을 뺀 나머지를 의미하고, 분모는 통과되는 전력의 곱의 형태입니다. 여기서 가장 중요한 지표는 S12입니다. S12란 출력(포트2)에서 입력(포트1)으로 돌아가는 전력을 말하는 것으로써, 결국 feedback을 나타내는 지표입니다. 일일이 K값의 수식적 원리를 증명하기엔 좀 길고, 결국 feedback의 양이 많으면 그 회로는 불안정할 수 있다는 의미가 됩니다. 그래서 분모의 feedback S12가 클수록 K값은 작아지게 됩니다. 그리고 feedback에 의해 loop gain이 발생하는 그 기준이 바로 K=1인 점입니다.

그래서 다 아시다시피, K > 1 이면 그 회로는 무조건안정(unconditionally stable)하고, 만약 K < 1 이면 조건부 안정(conditionally stable)합니다. 즉 K가 1보다 작을 때는 stability circle 에 따라 안정할 수도 있고 불안정할 수도 있습니다. 물론 적당한 임피던스 조절로 K가 1보다 작을 때도 발진이 안나도록 만들 수 있습니다. K < 1이라면 각 주파수별로 아래와 같이 안정도원 (stability circle)을 그려봐서 안정한 임피던스 영역을 찾아야 합니다.

: Input stability circle의 반지름크기

: Input stability circle의 중심좌표

: Output stability circle의 반지름크기

: Output stability circle의 중심좌표

 

K가 1보다 작을 때는 위와 같이 조건별로 안정과 불안정 영역을 찾아서 그 불안정 영역에 어떤 주파수의 임피던스 궤적도 들어가지 않도록 만들면 됩니다. 다만 소자가 너무 불안정해서 도저히 이런 식으로밖에 설계가 안되는 경우에나 이렇게 해야지, 가능하면  전대역에서 K > 1이 되도록 만드는 것이 권장됩니다. 일말의 불안정 요소도 제거하는 것이 더욱 안전한 법이지요. K > 1 이 되면 저 위의 안정도원이 아예 스미스차트 바깥으로 밀려나기 때문에 안정도 원을 들여다볼 필요도 없습니다.

여하튼 전 주파수대역에서 K > 1 이 되도록 만드는 것이 발진을 잡고 회로를 안정화시키는 비결입니다. (물론 발진기의 경우는 역으로 K < 1 의 불안정한 영역을 찾아서 쓰게 됩니다)

 

발진제거의 핵심원리

발진을 제거하는 것은, 발진의 원리와 직접적인 관련이 있습니다. 다시한번 발진의 원리에 해당하는 그림을 보도록 하지요.

feedback loop 생성에 의한 미세불안정신호가 반복적으로 gain을 가지면서 뺑뺑이를 도는 것, 그것이 발진이지요. 그렇다면 loop가 될 만한 선로를 최대한 없앨 수 있도록 회로를 만들면 될 것입니다. 하지만 본의아니게 발생하는 loop가 꼭 생기기 마련이므로, 이러한 loop에서의 발진제거가 중요한 관건이 됩니다.

어차피 발생한 loop라면, 위의 발진 원리 그림에서 어떤 요소에 손을 대야 발진이 잡힐까요?
눈치채셨겠지만, 이득(gain)을 줄이는 방법을 생각해내야 합니다. 아래 그림을 보세요!!!

gain을 깎아먹는, 즉 손실을 줄 수 있는 무언가가 loop중간에 위치해야 합니다. 그렇게 하여 lossy * gain의 곱이 1보다 작도록 만들면, 미세진동신호는 더 이상 커지지 않고 죽어 버릴  것입니다. 이렇게 gain과 gain을 깎아먹는 lossy 성분의 곱을 loop gain이라고 부르며, 그 loop를 한 바퀴 돌면 신호가 결국 얼마나 커지고 작아지는가를 나타내는 의미가 됩니다. 이러한 loop gain이 1 이하가 되도록 하기 위한 방법, 그것이 곧 이미 발생된 loop에서도 발진을 잡는 비결입니다.

그런데 gain을 줄이는 요소라.. 어떤 의미인지 막연하게 느껴지시나요? 너무 개념적이죠?
계속되는 글을 차근차근 읽어보시면 쉽게 이해하실 수 있습니다.

 

저항으로 잡기

gain을 줄이는 lossy한 요소로 가장 먼저 생각날 만한 것이 무엇일까요? 바로 저항(resistor)입니다.

아시다시피 저항은 전기에너지를 실제로 열에너지로 소모해 버리는 lossy 소자입니다. 흐르는 전류량에 따라 결국 전압강하를 일으키는 역할을 하게 됩니다.

전압강하란 의미는 신호의 입장에서 그 파형의 크기가 작아진다는 의미가 됩니다. 결국 저항을 달면 해당 선로에서 처리되는 신호전반에 대해 감쇄를 일으키게 되고, 미세한 발진신호는 전압강하에 쉽게 소멸될 수 있게 됩니다. 결국 중간에 설치된 저항으로 인해 loop gain을 1이하로 떨어뜨림으로서 발진을 제거할 수 있습니다.

그렇다면 이러한 저항소자를 정확히 어떤 위치에 달아야 효과가 있을까요?
크게 3가지로 나눌 수 있습니다.

1) 입력에 직/병렬로 저항달기

입력부에 저항을 직/병렬로 삽입하면 매칭성능도 좋아지고 발진도 제어되지만, 잡음특성이 많이 나빠지기 때문에 LNA에서 사용하면 안되는 방법입니다. 또한 입력전력 레벨이 중요한 경우에도 사용하기 힘듭니다. 병렬보다는 직렬 저항의 효과가 더 좋습니다.

2) 출력에 직/병렬로 저항달기

출력부에 저항을 직/병렬로 삽입하면 선형성이 좋아지고 발진도 제어되지만, 출력전력을 그대로 깎아먹기 때문에 규격이 빡센 Power amp류에선 사용하기 힘들어집니다. 역시 병렬보다는 직렬 저항의 효과가 더 좋습니다.

3) 바이어스 선로에 저항달기

바이어스 입력선로에 직렬로 저항을 삽입하는 경우를 보신 적이 많으시리라 생각됩니다. 이것은 간혹 온도보상용 내지는 전압강하 제어용으로 사용되기도 하지만, 발진제어를 위해 사용하는 저항입니다.

이것은 그 바이어스 선로에 얼마나 많은 전류가 흐르는가에 따라 저항의 삽입가능 여부 또는 그 값이 결정됩니다.

만약 1mA의 전류가 흐르는 바이어스 입력선로에 10옴을 연결하면 어떻게 될까요? 전자쟁이라면 누구나 다 아는 수식, V = I * R 에 의거하여 0.001 * 10 = 0.01V의 전압강하가 발생합니다.

0.01V면 별로 큰 전압강하가 아니라 전체 회로성능에는 별다른 영향을 안줄 수 있습니다. 그렇지만 미세한 발진신호는 보통 uV단위에서부터 발동이 걸리는 경우가 많기 때문에 0.01V의 전압강하에 걸려 버리면 그 자리에서 찍소리도 못하고 죽여 버릴  수도 있습니다. 이렇듯 본연의 DC전원공급에는 별다른 영향을 주지 않으면서, 새어나와서 loop를 빙빙 돌고 다니는 미세한 AC 발진신호에겐 큰 영향을 주게 되는 것입니다.

BJT의 경우라면 base에 입력되는 바이어스 전류가 적기 때문에 저항삽입을 통해 좋은 효과를 볼 수도 있습니다. 하지만 BJT의 collector에 들어가는 바이어스같은 경우는 수십mA이상의 전류가 흐르기도 하기 때문에 저항삽입에 많은 주의를 해야합니다. FET의 경우는 원래가 전류조절이 아닌 전압조절로 control되는 트랜지스터라, gate bias에 전류가 uA단위로 흐르기 때문에 저항삽입이 매우 용이하다는 점도 있습니다.


여하튼 loop에서 loss를 유발시키려면 위와 같은 저항 삽입법이 효과적입니다. 하지만 바이어스 저항을 제외한 입/출력 저항삽입법은 손해도 만만치 않기 때문에 그렇게 권장되지만은 않습니다. 어쨌건 해도해도 발진이 잘 안잡히면 사용해볼 만한 방법이므로 잘 기억해둘 필요는 있습니다.

 

Negative feedback (부성궤환)

가장 강력한 발진제어 수단으로 알려진 것중 하나가 바로 negative feedback(부성궤환)입니다. feedback이란 출력신호가 입력으로 되돌아가 버리는 현상을 말하고, negative feedback은 그러한 궤환이 -값이 되어 입력에 돌아가는 것을 말합니다. 다시말해서 위에서 손실요소를 삽입하여 gain을 떨어뜨리게 되는 궤환현상을 negative한 feedback이라 불리웁니다. 만약 손실요소가 없어서 발진을 유발하는 feedback이라면 positive feedback이라고 부르게 됩니다. 여하튼 루프를 돌면서 loop gain이 증가되면 positive, 감소되면 negative라고 부르는 것이죠.

발진을 잡기 위한 Negative Feedback의 효과가 강력한 이유는. 발진의 핵심이 되는 Tr단 최근방에 위치하기 때문입니다. 이러한 고의적인 negative feedback 방법은 아래와 같이 두가지가 있습니다.

1) Parallel negative feedback (병렬부성궤환)

보시다시피 Tr 입력과 출력단을 연결하는 loop를 만들고, 저항과 캐패시터를 연결한 형상입니다. 캐패시터의 역할은 feedback 선로를 통해 DC가 통하면 안돼기 때문에 DC blocking을 위해 연결한 것입니다. 주요한 발진 제어 역할을 하는 것은 역시, 저항입니다.

이것은 Tr 최근방에 고의적인 feedback loop를 만들어서 발진가능한 신호를 유혹하는 역할을 하게 됩니다. 결국 유혹에 넘어간 신호는 얼결에 loop를 타고 들어갔다가 저항을 만나면서 깨갱하고 죽어버립니다. 정확히 이 원리는아니고 조금 복잡한 수식이 필요하지만, 이해하기 쉽게 설명하자면 이렇다는 것이죠. ^^;

Tr의 등가회로와 함께 연결해서 본다면, 이런 고의적인 병렬 궤환은 Tr자체의 loop특성에 합쳐저서 전체의 feedback 특성을 변화시키는 셈이 됩니다. 여기서 loop상의 저항값을 낮출수록 발진을 잘 잡기 때문에 K값이 올라가지만, 그런 경우 이득은 항상 반대로 작아진다는 점을 주의해야 합니다.

2) Series negative feedback (직렬부성궤환)

RF에서는 BJT의 emitter단 혹은 FET의 source단을 접지시켜서 common emitter 혹은 common source로 사용하는 경우가 많습니다. 이 경우, emitter/source 사이에 인덕터를 삽입하는 경우가 많은데 이것을 바로 series negative feedback이라고 합니다. 인덕터는 DC에게는 그냥 선로이지만 AC입장에서는 큰 임피던스로 보입니다. (Z = 2 π f L ) 결국 AC만을 막기위한 고임피던스 소자가 삽입된 셈인데, 그림에서 보다시피 병렬궤환처럼 옆으로 고의적으로 loop를 만든게 아니라, 원래 공통의 ground를 타고 도는 loop상에 그대로 삽입한 셈이 됩니다. 그래서 직렬궤환에 속하는 것이구요.

여하튼 이 역시 Tr구조상 어쩔 수 없이 발생하는 Ground loop에 직접 AC를 막는 임피던스 성분이 첨가되면서 미세 발진가능 신호가 커지기 전에 확 죽여 버리는 역할을 하게 됩니다. 이 직렬 부성궤환 역시 병렬 궤환과 마찬가지로 발진이 잘~ 잡히지만 이득을 줄여 버리게 됩니다. 부가적으로 더 중요한 특징은, 이 직렬부성궤환은 전대역에서 임피던스 매칭을 잡아주는 역할이 있다는 점입니다. 전대역에서 S11을 좍좍 내려주고 ,결국 이것은 선형성의 증가로 이어집니다.

선형성을 나쁘게 만드는 요소중 하나는 임의의 대역에서 약하게 올라오는 발진성 잡음인데, 이러한 궤환을 이용하면 거의 전대역에서 자질구레한 발진성 잡음성분을 사-악 죽여버림으로써 결국 선형성도 좋아지게 됩니다.

이렇게 직렬부성궤환을 이용하여 이득을 줄이는 대신 각종 발진제어/매칭개선/선형성 증가를 하는 것을 degeneration 이라고 부릅니다. 여기서 인덕터대신에 저항이나 캐패시터를 이용할 수도 있지만, 여러 효과적 측면에서 인덕터가 가장 애용됩니다.


위 두가지 negative feedback 방법중 무엇을 사용할지는 각자의 취향과 상황에 맞게 판단할 문제입니다. 주의할 사항은, 이러한 negative feedback은 직접적으로 Tr이 낼 수 있는 최대 gain을 깎아먹는 다는 사실입니다. K값이 높아질수록(즉 발진이 잘 잡힐수록) gain은 점점 더 떨어집니다.

Negative feedback의 이론적 원리는, S12를 감소시키는 것입니다. S12란 출력(포트2)에서 입력(포트1)로 흘러가는 신호성분을 의미하며, 결국 이것은 출력이 입력으로 돌아가는 feedback 성분을 지칭하는 것입니다. 이러한 S12를 감소시키려면 필연적으로 S21, 즉 이득도 줄어들 게 됩니다.

발진의 원리에서 보셨겠지만 능동회로단의 이득과 발진의 정도는 서로 반대로 갑니다. 이득이 높다는 것은 loop상에서 발진신호가 커질 가능성을 더욱 만드는 셈이고, 그래서 발진을 잡으려면 결국 전체 이득을 떨어뜨리는 방향으로 가게 됩니다. 그래서 또 이득이 큰 주파수에서는 항상 K값이 낮아지는 것이죠.

Negative feedback의 가장 큰 장점은 R,L 등의 소자값을 변화시켜서 발진을 잡고 이득을 떨어뜨리는 정도가 비교적 사용자 임의대로 조절이 쉽다는 점입니다. 어쨌거나 발진제어와 이득은 거의 언제나 정 반대로 흘러가므로 적절한 trade off 전략이 필요하게 됩니다.

 

바이패스 캐패시터 (Bypass capacitor)

병렬 캐패시터 (shunt capacitor)는 전자회로에서 매우 광범위하게 사용됩니다. 특히 전원단의 잡음을 제거하기 위해 전원과 함께 늘 병렬로 캐패시터나 콘덴서가 달리는 경우가 많지요.

캐패시터는 DC는 통과하지 못하고 주파수를 가진 신호만 통과하게 됩니다. 그리고 캐패시턴스 값이 클수록 더욱 낮은 주파수의 AC(RF)신호를 통과시킵니다. 그러므로 병렬로 달린 캐패시터는, AC입장에서는 Ground로 바로 접지되어 버리는 short 선로처럼 동작합니다.

전원단에서는 깨끗한 직류전압만 나오는게 아니라, 자질구레한 저주파 신호까지 출력되는 경우도 많기 때문에 그러한 저주파 잡음을 잡아야 합니다. 그래서 전원단 출력 옆에 달린 병렬 캐패시터를 통해 저주파 AC신호는 접지되어 죽여 버리게 됩니다. 그리고 전원 잡음은 보통 매우 낮은 주파수에서 뜨는 경우가 많아서 캐패시턴스 값이 커야지 잡히게 됩니다. 그래서 전원단 잡음제거용 캐패시터는 uF단위의 큰 탄탈 캐패시터같은 것을 사용하게 되는 것입니다.

이런 저주파전원잡음 제거과정을 흔히 "DC를 잡는다"라는 표현을 많이 합니다. 깨끗하게 직선으로 나와야할 DC신호의 흔들림을 없애서 잡아준다는 의미이지요. 결국 다 같은 얘기를 하고 있는 것입니다.

그리고 이러한 저주파 잡음은 회로 내에서 저주파 발진이 유입된 것처럼 작용하며, 내부에서 발생된 저주파 발진과 함께 회로의 성능을 저하시키는 요소가 됩니다. 그래서 저주파 발진을 막기 위해서 DC를 잡아주듯이 바이어스 선로에 병렬로 바이패스 캐패시터를 박습니다. 바이패스(bypass)란 AC를 통과시켜서 접지시켜 버리겠다는 의미이지요.

DC 바이어스 선로에는 반드시 이러한 병렬 캐패시터가 적어도 하나이상 달리지 않으면 저주파 발진을 잡을 수가 없습니다. 보통 저주파를 잡기 위해 큰 값의 캐패시터와, 위험요소가 있는 특정 주파수만 잡기 위해 작은 값의 캐패시터 두가지가 함께 병용되는 경우가 많지요.

위의 그림에도 나와있지만, 인덕터 또는 λ/4 선로를 이용하여 RF(AC)신호가 DC 바이어스단으로 유입되어 loop를 돌면서 발진이 일어나지 않도록 막아줍니다. 하지만 완벽하지는 않아서 일부 주파수, 특히 극저주파 잡음성 발진은 쉽게 새어버립니다.

인덕터에 의한 AC 임피던스 공식 ( Z = 2 π f L ) 를 생각해보면 쉽게 이해할 수 있습니다. 인덕터로 RF를 막는 이유는, 위의 공식에 의거하여 높은 주파수에서는 인덕터가 큰 AC저항으로 보이기 때문입니다. 임피던스가 크니까 RF는 못 빠져나가지만, 낮은 저주파 신호입장에서는 AC저항값이 매우 낮아서 쉽게 새어 버릴  수 있는 것이지요. λ/4 선로의 경우는 그 λ의 주파수 이외는 막는 효과가 없으니 결국 다른 주파수는 줄줄 샐 수 있습니다.

그렇기 때문에 인덕터나 λ/4와 같은 RF choke 이후와 전원단 사이에 반드시 병렬 캐패시터가 있어야먄 저주파 발진을 잡을 수 있게 되는 것입니다. (이것을 low pass trap : 저주파함정 이라고도 합니다)

 

측정상에서 발생하는 발진

실제로 만들어진 제품에서는 발진이 없지만, 측정할 때만 발진이 일어나는 경우가 허다합니다. 측정상에서만 나타나는 발진 때문에 쓸데없이 고민하고 시간낭비를 하지 않도록 하려면 어떻게 해야 할까요?

측정상에서만 나타난다는 의미는, DC 전원공급기의 상태와 매우 밀접한 관련이 있습니다. 우선 그라운드가 잘 잡혀있느냐? 라는 환경적 문제에 따라 저주파 잡음이 새어들어와서 발진처럼 보이게 되는 경우가 많습니다. 이 경우는 어떤 DUT를 측정하더라도 일정한 주파수대역에서 저주파발진처럼 뜨기 때문에 조금만 관심을 기울이면 발견하기 쉽습니다.

그렇기 때문에 실제 시스템의 전원공급을 끌어쓰지 않고 측정용 DC 전원공급기를 연결하여 측정하는 경우에는 항상 대용량 탄탈 캐패시터를 전원패드에 병렬로 연결해둘 필요가 있습니다. 실제 시스템에는 존재하지 않더라도 측정상에서만이라도 전원 잡음을 잡기 위해선 필요합니다. 이것 역시 위에서 설명한 바로 그 바이패스 캐패시터이죠. 이것은 측정에 있어서 아주 기본적인 상식에 속하는 것입니다.

공학용 건물이나 정비가 잘된 빌딩이라면, 각 콘센트마다 그라운드가 잘 통일되어 있고 접지되어 있을 것입니다. 하지만 그렇지 못한 경우도 많기 때문에 전원안정기 등을 이용하여 측정실 전원을 공급하는 경우가 많습니다. 그라운드가 잘 안잡혀 있으면 계속되는 불특정한 저주파 잡음이 새어 들어와서 많은 문제를 발생시킵니다. 또한 전원을 꽂는데 사용한 멀티탭이나 전원선이 불량이 나서 저주파 발진을 계속 만들어내는 경우도 있습니다.

여하튼 측정중에 뭔가 이상한 현상이 자꾸 일어난다면, 스펙트럼 분석기로 수kHz ~ 수MHz 대역에서 발진성분이 포착되는지 확인할 필요가 있습니다. 물론 꼼꼼한 엔지니어라면 DC를 걸어놓고 우선 발진이 있는지 없는지 전 대역에서 훑어보겠지요.

측정상에서 나타나는 발진을 무시하고 그냥 측정만 하다보면 결과값이 흔들리고 믿기 어려운 측정치만 쌓여갈 수 있습니다. 엔지니어라면 명심해야 할 부분일 것입니다.

 

대신호 발진

발진 중에 상당히 잡기 어려운 발진 중 하나가 바로 대신호 발진입니다. 대신호 발진이란, Power amp처럼 큰 신호파형을 다루어야 하는 능동회로에서 특정 출력전력에서만 발견되는 발진입니다. 즉 DC만 걸어서는 보이지 않고, 출력전력이 점점 커지면서 일정출력 전력에서만 발진현상이 발견되는 경우이죠.

엄밀히 말하면 발진이라기 보다는 스퓨어리스에 가깝다고 말할 수 있지만, 발생 원리적인 면에서는 발진에 가깝습니다. 대신호를 다루는 Tr, 즉 대신호모델이란 신호전력에 레벨에따라 소자의 등가모델이 변화합니다. 그러다 보면 소신호 처리때는 K가 1이상으로 발진이 없다가, 소자 자체의 모델이 변하면서 불안정성이 나타나서 일부 feedback loop를 통해 잠시 발진을 일으키기도 합니다.

말이야 잠시지 그런 발진이 나타나면 역시 잡아줘야 합니다. 발진이 나타나는 전력대에서 이득이나 전류가 흔들리기 때문에 실제로 사용하기에 불안한 회로이기 때문이지요. 하지만 그 어떤 발진보다 잡기가 상~당히 애매합니다. 매칭구조와 바이어스단의 각종 민감한 인덕터와 캐패시터 등을 조율해서 잡아야 하는데, 대신호 설계자분들이라면 이런 발진이 일어나지 않도록 기도를 먼저 할 필요가 있습니다. ^^;

 

발진은 꼭 잡아야 한다!

발진의 원리를 이해하면, 발진잡는 방법론도 쉽게 이해할 수 있습니다. 발진을 잡는 기본적인 방법들에 대해 정리해보았습니다만, 실제로 RF 엔지니어링을 하면서 만나는 발진문제는 위의 방법내에서 대부분 해결됩니다. 그리고 위의설명은 회로 레벨에서 설명된 것이 많은데, 시스템 구성시 발생하는 발진이라면, 반드시 DC 전력 공급단의 구성을 꼼꼼히 살펴보도록 하시기 바랍니다. 결국 발진의 메카니즘 자체는 동일합니다.

물론 위의 방법으로도 정말 잘 안잡히는 발진들이 있습니다. 소자상태가 심히 안좋거나, PCB 상태가 나쁘거나, 매칭구조에 뭔가 불안한 소자가 있다던지 무수한 불안정 가능성이 존재하기 때문에 엔지니어들을 괴롭힙니다.

정말 잡기 어려운 애매모호한 발진은 어쩔 수 없다고 쳐도, 적어도 기본적으로 '잡을 수 있는' 발진은 깨끗이 제거해야 하는 것이 RF 엔지니어의 몫입니다. 열심히 튜닝해서 발진을 제거하는 과정은 RF에 있어서 필수적인 과정의 하나라고 해도 과언이 아닌 것이죠.

  << Back

 Copyright by RF designhouse. All rights reserved.