본문 바로가기
myGyro300SPI

VDD5V와 Vdrive는 어떻게 다른가?

by irmus 2009. 8. 24.
myGyro300SPI를 보면 전원핀으로 VDD5V핀과 Vdrive 핀이 있다.
둘 다 전원은 맞는데 어떤 차이가 있고, 어떻게 쓰는 것이 올바른지 한번 알아보자.

간단하게 정의하면 VDD5V=코어전원(Vcc), Vdrive=IO전원.
코어전원이란 센서 모듈이 동작하기 위해 필요한 전원을 말하는 것이고, IO전원이란 외부(대부분의 케이스에서는 MCU)와의 SPI 통신에 사용되는 전원을 말한다.

비유를 해 보자. PC는 220V에서 동작한다. 즉 PC의 동작전원은 AC220V이다. 반면 PC의 마우스나 키보드 연결에 사용되는 USB는 직률 5V를 전원으로 사용한다. PC 입장에서 보면 동작하기 위해서는 AC220V가 필요하고, 키보드와 통신하기 위해서는 DC5V가 필요한 것이다.
사용자 삽입 이미지

동작전원과 IO전원

사용자 삽입 이미지

PC 본체는 AC220V. 반면 USB 키보드와는 DC5V로 통신한다


왜 이런 일이 일어날까? 물론 키보드에 AC220V를 연결하면 불꽃을 튀기며 타버리기 때문이겠지만, 자이로센서와 무슨 관계가 있을까?
여러 종류의 자이로 센서가 있겠지만 myGyro300SPI모듈에 들어있는 ADIS16100 센서는 Analog Device 사에서 만든 것이다. 이 센서는 동작 전원이 DC5V로 한정되어 있다. 그러면 IO 전원 역시 5V를 쓰면 문제 없을 것인데, 요즘 프로세서들 전원이 다양하다는 것이 문제일 것이다. 일부 저사양의 프로세서들을 제외하면 요즘에는 5V를 사용하는 프로세서는 드물다고 봐야한다. myCortex 시리즈에 사용되고 있는 Luminary Micro의 칩셋들만 봐도 3.3V에서 동작한다. 좀 더 고사양의 프로세서로 가면 한술 더 떠서 2.5V, 1.8V까지 내려가기도 한다.
상황의 배경에 있는 일들을 PC CPU의 역사에서 쉽게 살펴볼 수 있다. CPU가 고성능화 되면서 프로세서 클럭이 증가하고 회로 집적도가 증가하게되었고, 발열 문제가 심각한 이슈로 떠올랐다. 일반적으로 반도체에서는 클럭 속도가 높이지면 높아질 수록 안정적인 동작을 보장하기 위해 전류가 더 많이 흘러야 한다. [전력=전압*전류] 이므로 같은 전압에서 전류가 증가하면 소비전력도 따라서 증가하고, 열이 많이 발생하게 된다. 더불어 배터리로 동작하는 노트북은 한시간도 못버티고 아사해 버리는 것이다. 이런 이유때문에 프로세서 클럭 속도가 증가할 수록 프로세서의 코어 전압은 낮게 설계해서 전력을 줄이고자 하는 것이다.
반면 센서들은 그다지 높은 클럭을 사용하지 않는다. 일부러 동작전원을 떨어뜨려가면서 까지 전력소모를 신경써야할 필요가 없는 것이다. 사실 저전압 반도체 만들기가 더 어렵기 때문에 왠만하면 높은 전압을 사용하고 싶어한다. 이런 이유 때문에 ADIS16100은 5V 동작전원을 고수하고 있다.
이런 상황이라면 3.3V 프로세서랑 붙여 사용하려 할때마다 매번 레벨 쉬프터 달아서 써야하는 불편함이 발생할 터. 그래서 사용되는 것이 Vdrive 즉 IO전원이다.

사용자 삽입 이미지

3.3V를 사용하는 LM3S8962칩과 myGyro300SPI를 연결하면?

자이로 센서 모듈은 5V에서 동작하되, SPI 버스는 3.3V 전원으로 동작하게끔 만들어 두기만 하면 3.3V 전원을 사용하는 프로세서와 같이 사용함에 있어 아무런 불편함이 없을 것이다.


여기서 주의사항 하나.
ADIS16100의 데이터쉬트를 살펴보자. 6페이지 상단에 있는 Absolute maximum ratings 테이블을 보면...
  • +Vcc to COM = -0.3V to +6.0V -> 동작전원의 범위
  • +Vdrive to COM = -0.3V to Vcc + 0.3V -> IO 전원의 범위
무슨말이냐하면 Vdrive는 Vcc보다 높은 전압을 사용할 수 없다는 뜻이다. 이 규칙을 어기면 칩이 파손된다. 저전압 프로세서와 연결해서 사용할 수는 있지만, 고전압(?) 프로세서와는 바로 연결해서 사용할 수 없다.
물론 5V이상의 전원을 사용하는 프로세서는 거의 없으니 걱정할 것이 없겠지만, Vcc가 낮은 센서의 경우에는 문제가 될 수 있다. 예를 들어 myAccel3LV02는 3.3V의 동작 전원을 가지고 있다. 즉 IO 전원 역시 3.3V를 넘을 수 없다는 뜻이다. 이런 경우에 5V 전원을 사용하는 AVR 프로세서에 바로 연결하면 myAccel3LV02가 파손될 수 있으므로 주의해야 한다.

Amsolute Maximum Ratings에 명시된 범위를 넘어선 스트레스는 센서에 영구적인 손상을 초래할 수 있다. 이 조건들은 스트레스 범위를 위한 것일 뿐 이 조건 내에 들어있다고 해서 정상적인 센서 동작이 보증된다는 것은 아니다. 장시간 가혹조건에 노출된 센서는 센서 출력 역시 신뢰할 수 없다.




정리하면
  • myGyro300SPI는 꼭 5V 전원으로 동작시켜야 한다.
  • 3.3V와 같이 낮은 전압을 사용하는 프로세서와 SPI 통신하기 위해서는 그 전압을 Vdrive에 걸면 된다.
  • 5V 이상의 전압이 Vdrive나 SPI 핀에 인가되면 안된다.