DCDC Design of Pico Board - RT6150
It is about RT6150, a DCDC mounted on a Pico board.
![](/upload/project/7969/cover190.jpg)
Raspberry Pi Pico 보드에 Official로 Open되어있는 DCDC 부분의 회로이다.
L, C 선정에 대해 알아보고자 한다. 그리고 RT6150B-33GQW 를 선정한 이유와 그 기능까지도 알아보도록 하겠다.
RT6150의 Datasheet다. 주의해서 볼 부분은 Input Voltage 범위가 무려 1.8 ~ 5.5V라는 것이다. 3.3V fixed output 출력의 소자로써는 승압, 강압이 다 가능한 Buck-Boost Converter이다.
그리고 한가지 새로운 것이 보였는데 PSM 기능이다. PSM기능은 아래에서 조금 자세하게 다뤄보도록 하겠다.
PSM 기능
Switching Fq 는 1MHz 로 셋팅되어 있다고 한다. (일반적인 Converter 보단 주파수가 굉장히 높은듯 보인다. 그동안 써오던 것들은 해봐야 500kHz...)
Datasheet에 따르면 PSM모드를 활성화하려면 PS Pin을 Low로 당기라고 한다. 반대로 비활성화 하려면 High로 당겨줘야 한다.
PSM 활성화하면 고정주파수인 1M로 동작하는 것이 아닌, Fq를 느리게 해서 저전력인 상태에서 효과적인 Power Save를 실행할 수 있도록 한다. 반대로 High 당겨서 PSM을 비활성화 하면, Fq는 1M로 고정되고 높은 주파수로 컨트롤하는 것인만큼 리플이 작아지게 된다. 하지만 높은 주파수로 고정이 되어있기때문에 저전력인 상태에선 효율이 나올래야 나올 수가 없다.
위는 PSM를 활성화하고, 활성화 안하고의 차이이다. 100mA 이상의 전원에서는 두 상태 모두 효율이 90프로 이상이기때문에 특성이 좋도록 Fq 고정으로 사용하고, 100mA 이하에서는 PSM 모드를 활성화 하는 것이 좋을 것으로 보인다. (필요시)
그렇다면 실제 PSM을 활성화했을 때의 Switching 파형을 보도록 하자.
L의 앞단을 찍어보았다.
가장 일반적인 상황에서의 파형이다.
PSM을 활성화하면 fsw 를 컨트롤해서 전류효율을 높이는 대신 리플이 커질 수 있다고 했는데, 주기적으로 fsw을 일정하게 늘리는 것이 아닌 fsw 자체는 900k로 고정시켜 놓고 off time 길이를 조절해서 컨트롤한다.
Input 4V 에서의 파형이다. 출력인 3.3V와 0.7V 차이밖에 안나기때문에 듀티가 굉장히 큰 모습이다.
입력이 3V 이다. 이제 Boost Converter로 동작한다. 출력전압인 3.3V 보다 입력전압이 낮기때문에 Boost모드로 동작한다.
그리고 2V에서의 동작이다.
이때 인덕터 뒷단의 전압은 어떨까
똑같은 주파수로 스위칭을하고 있다.
결론적으로 PSM 모드를 활성화시키면
- 주파수를 컨트롤하여 제어 ( 주파수 자체는 고정, 약 900kHz 대신 Delay(?) 가 바뀜 )
- 리플은 증가함
- 주변회로 커짐
동작구조
RT6150의 내부 블럭도를 보자
위와 같이 생겼다. 위는 일반인 Buck-Boost 컨버터이다.
Gate Driver 에는 RS F/F과 OSC 가 들어있다.
위와 같이 LX1, LX2사이엔 외부에 Inductor를 설계해줘야한다.
Buck Converter
먼저 Buck Converter로 사용될 때이다.
Inductor 충전 타이밍
인덕터 방전 타이밍
Boost Converter
다음은 Boost Converter로 동작할 때이다.
인덕터 충전 타이밍
인덕터 에너지 + VIN : 전압 상승 타이밍
요즘엔 Diode 말고 N,P Channel MOSFET 두 개씩으로 많이 구성되어 있는데, 아무래도 효율 때문에 그런 것 같다.
그리고 외부 소자들을 작게 하려면 빠른 주파수 컨트롤이 필요하기 때문에 다이오드보단 FET로 설계돼서 나오는 것들로 생각된다.
LC 설계
RT6150은 Buck-Boost Type이다.
Buck 상태와 Boost 상태에서의 값을 둘 다 계산해보려 한다.
∆IL : 인덕터의 전류 리플
L : 인덕터의 L값
fsw : Swithing Frequency
D : Duty ratio
기본 식은 위와 같이 된다.
RT6150는 Buck-Boost Type의 DCDC이다.
Buck의 경우와 Boost의 경우를 살펴보도록 하겠다.
Buck Converter
Buck converter에선 위와 같이 D=Vin/Vout 을 대입해서 L값을 구할 수 있다.
Boost Converter
Boost 의 경우에는 D=1-(Vin/Vout)을 대입해서 L값을 구할 수 있다.
두 경우에서 더 크게 나오는 L의 값을 사용값으로 정해주면 된다.
그럼 내가 사용할 L값을 선정해주도록 하겠다.
사용하는 DCDC 는 RT6150이다.
800mA , 1MHz(실제 측정은 900kHz) , 1.8 ~ 5.5V
Buck 의 경우와 Boost의 경우 두 가지 다 계산해줘야 한다.
Buck의 경우
나는 인덕터를 설계할 수 있는 경우의 수가 많지 않았다.
위의 2.2uH로 설정을 하고 계산을 해보겠다.
환경은 Vin : 5V, Vout : 3.3V, L : 2.2uH, fsw : 900k
IL = (Vin-Vout) x (Vout/Vin) / fsw x L
= (5 - 3.3) x (3.3/5) / 900k x 2.2u
= 0.56A
IL/2 + 최대부하 = 0.28 + 0.8 = 1.08A 이기때문에 이 inductor를 사용해도 문제가 없을 것으로 보인다.
Boost의 경우
환경은 Vin : 1.8V, Vout : 3.3V, L : 2.2uH, fsw : 900k
IL = |(Vin-Vout)| x (1-Vin/Vout) / fsw x L
= |1.8 - 3.3| x (1-1.8/3.3) / 900k x 2.2u
= 0.34A
Buck의 경우가 리플전류가 더 크게 나왔다. IL/2 + 최대부하 = 0.28 + 0.8 = 1.08A 이기때문에 이 inductor를 사용해도 문제가 없을 것으로 보인다.