아날로그 회로

#21. Level Shifter(레벨 시프터) 쉽게 이해하기

알고보면재밌어 2023. 12. 2. 21:48
반응형

레벨 시프터(Level Shifter) 는 실무 회로에서 굉장히 많이 사용하는 소자 중 하나 입니다. 말 그대로 전압 레벨을 변경해주는 소자 입니다. 예를들어, MCU와 통신 모듈 IC 간 통신이 필요한 경우 각 IC가 사용하는 로직 전압 레벨이 다른 경우가 많습니다. MCU는 5V 전압을 사용하는데 통신 모듈 IC는 3.3V를 사용하는 경우 두 IC 사이의 전압 레벨을 맞추기 위한 무언가가 필요하죠. 그 역할을 하는 소자가 바로 레벨 시프터(Level Shifter) 입니다. Level Transceiver, Level Translator 등과 같은 이름으로 불리기도 합니다. 

 

[그림 1. 전원 전압이 서로 다른 MCU - 통신모듈 IC 연결 시 레벨 시프터가 없는 경우]

 

그림1과 같이 전압 레벨이 5V인 MCU와 3.3V인 통신 모듈 IC 간 SPI 통신을 한다고 가정하고, 만약 두 IC를 레벨 시프터없이 서로 연결하게 되면 어떻게 될까요? MCU에서 통신 모듈 IC로 신호를 송신할 경우 5V의 상대적으로 높은 전압이 3.3V를 사용하는 IC에 인가되기 때문에 소자가 손상입을 수 있습니다. 반대로 통신 모듈 IC에서 MCU로 송신할 경우 3.3V의 상대적으로 낮은 전압이 5V를 사용하는 IC에 인가되기 때문에 0과 1을 제대로 판별하지 못할 수 있습니다. 예를 들면, MCU에서 로직 High로 인식하는 전압 레벨이 3V 이상일 경우 통신 모듈 IC에서 송신한 3.3V의 신호에 노이즈가 포함되거나 임피던스 매칭이 약간만 틀어져도 3V 보다 낮은 전압을 출력할 수 있기 때문에 통신의 신뢰성에 문제가 생깁니다. 따라서, 그림 2와 같이 두 IC 사이에서 브릿지 역할을 할 수 있는 Level Shifter가 반드시 필요합니다.

 

[그림 2. 전원 전압이 서로 다른 MCU - 통신모듈 IC 연결 시 레벨 시프터가 는 경우]

 

일반적인 경우 그림 2와 같이 레벨 시프터를 사용하는게 안전하고 신뢰성을 높일 수 있는 방법입니다. 하지만, 그림 1과 같이 레벨 시프터를 사용하지 않고도 전압 레벨이 다른 두 IC간의 통신이 가능하게 할 수있는 2가지 경우가 있습니다. 첫 째, 만약 MCU의 데이터시트에서 로직 레벨 High 를 2.5V 이상으로 인식하고, 통신모듈 IC의 데이터시트에서 5V 이상의 전압이 인가되더라도 문제가 없음을 보증한다면 이런 경우에는 레벨 시프터가 없이 두 IC를 연결할 수 있습니다. 둘 째, MCU의 데이터시트에서 로직 레벨 High를 2.5V 이상으로 인식하면, 통신모듈 IC에서 5V 전압을 보증하지 않더라도 전압 디바이더 회로를 중간에 삽입하여 통신모듈 IC가 3.3V를 수신할 수 있도록 할 수 있습니다.   

 

자, 그럼 Level Shifter IC의 내부 구조가 어떻게 구성되어 있길래 자유롭게 전압 레벨 변환이 가능한 걸까요? 내부 회로 구조를 이해하면 레벨 시프터에 대한 이해도가 훨씬 더 올라갈 겁니다. 레벨 시프터는 1개의 NMOS와 2개의 저항만 있으면 될만큼 굉장히 심플하게 구성되어 있고, 그 원리 또한 매우 간단합니다. 물론, 높은 성능을 위해서 더 복잡한 구조가 필요한 경우도 있지만 대부분의 경우 심플하게 구성되고 비슷한 원리로 구현됩니다. 아래 그림 3을 봅시다.

 

[그림 3. MCU에서 통신모듈로 신호를 송신하는 경우]

 

MCU에서 통신모듈로 0V또는 5V의 신호를 송신하는 경우입니다. Vd는 풀업저항 R1에 의해 5V, Vs는 풀업저항 R2에 의해 3.3V가 인가된 상태이고, Vgs는 0V이므로 NMOS는 OFF인 상태입니다. MCU의 송신 신호가 0V일 때, Vd는 0V가 되고, NMOS는 OFF이지만 3.3V와 R2, NMOS의 다이오드에 의해 전류 Path가 형성되면서 Vs는 다이오드 전압 0.7V로 바뀝니다. 이 때, Vgs의 전압이 2.3V가 되면서 NMOS가 ON되고, Vs는 다시 Vd 전압 0V가 인가되므로 0V가 됩니다. 즉, 통신모듈 IC의 입력으로 0V가 인가되죠. MCU의 송신 신호가 5V인 경우, Vd는 5V가 되고, Vs는 풀업저항 R2에 의해 3.3V이므로 Vgs는 0V가 되어 NMOS는 OFF가 됩니다. NMOS의 다이오드 역시 OFF이므로 Vs는 여전히 3.3V가 됩니다. 결국 Vs의 전압 3.3V가 통신모듈 IC의 입력으로 인가됩니다.

 

이제 반대로 그림 4와 같이 통신모듈 IC에서 MCU로 0또는 3.3V의 신호를 송신하는 경우를 봅시다.

 

[그림 4. 통신모듈에서 MCU로 신호를 송신하는 경우]

 

Vd는 풀업저항 R1에 의해 5V, Vs는 풀업저항 R2에 의해 3.3V가 인가된 상태이고, NMOS는 OFF인 상태입니다. 통신모듈의 송신 신호가 0V일 때, Vs는 0V가 되고, Vgs는 3.3V가 되므로 NMOS가 ON되어 Vd는 Vs의 0V전압이 걸리게 됩니다. 즉, MCU의 입력으로 0V가 인가되죠. 통신모듈의 송신 신호가 3.3V인 경우, Vs는 3.3V가 되고, Vgs는 0V가 되므로 NMOS가 OFF됩니다. 또한 NMOS의 다이오드도 OFF되므로 5V의 전압이 풀업저항 R1에 의해 Vd에 걸리게 됩니다. 결국 Vd의 전압 5V가 MCU의 입력으로 인가됩니다.

 

이렇게 High Voltage에서 Low Voltage 또는 반대로 Low Voltage에서 High Voltage로 양방향 전압 변환이 가능한 레벨 시프터 IC의 내부 회로 구조에 대해 알아보았습니다. 실무에서 레벨 시프터를 사용할 때 머릿속에 블랙박스처럼 여겨졌던 이 소자의 동작원리가 쉽게 이해되셨으리라 생각합니다. 여기까지 레벨시프터에 대한 포스팅을 마치겠습니다~!

반응형