IoT(사물인터넷)가 이제 특정 분야의 구체적인 비즈니스로 꽃을 피우기 시작했다는 얘기다. 이에 따라 반도체 분야도 이들 IoT 애플리케이션을 구현하기 위한 특화된 솔루션을 앞다퉈 내놓고 있다. 지능화된 시스템 구성에서 핵심 역할을 하고 있는 MCU도 예외가 아니다.
특히 IoT 애플리케이션을 구현하기 위한 MCU의 조건은 저전력과 통신, 시큐리티와 같은 요소가 중요하다는 지적이다. 이미 광범위한 사용자 고객을 확보하고 있는 ST마이크로일렉트로닉스의 최신 STM32는 이러한 요소를 충족하고 있는 대표적인 솔루션으로 평가받고 있다.
ST, IoT 애플리케이션 개발 위한 에너지 효율 높은 MCU 제공
높은 보안 성능 및 빠르고 경제적인 프로토타입 개발할 수 있어
최근 쏟아져 나오고 있는 내년도 산업전망에는 스마트 헬스케어, 홈IoT, 산업용 사물인터넷, 소물인터넷 등이 핵심을 이룬다.
다시 말해 IoT(사물인터넷)가 이제 특정 분야의 구체적인 비즈니스로 꽃을 피우기 시작했다는 얘기다. 이에 따라 반도체 분야도 이들 IoT 애플리케이션을 구현하기 위한 특화된 솔루션을 앞다퉈 내놓고 있다. 지능화된 시스템 구성에서 핵심 역할을 하고 있는 MCU도 예외가 아니다.
특히 IoT 애플리케이션을 구현하기 위한 MCU의 조건은 저전력과 통신, 시큐리티와 같은 요소가 중요하다는 지적이다. 이미 광범위한 사용자 고객을 확보하고 있는 ST마이크로일렉트로닉스의 최신 STM32는 이러한 요소를 충족하고 있는 대표적인 솔루션으로 평가받고 있다.
ST마이크로일렉트로닉스 코리아의 김두형 과장은 “ST MCU는 IoT 애플리케이션 개발을 위해 크게 3가지 점에서 특화돼 있다”며 “첫 번째, 높은 에너지 효율이다. 최근 많은 IoT 애플리케이션 제품들이 배터리를 사용하고 있다. 이러한 제품들은 에너지 효율에 민감하여 저전력을 구현하는 것이 무엇보다 중요한데 ST MCU는 다양한 저전력 모드 및 기술로 탁월한 에너지 효율을 제공함으로써 IoT 시장에서 앞선 경쟁력을 가지고 있다”고 강조했다.
김 과장이 든 두 번째 이유는 높은 보안 성능이다. STMCU는 높은 수준의 보안 알고리즘을 하드웨어 유닛으로 제공하고 있어 이 하나의 칩을 사용하는 것만으로도 Firewall, Read/Write protection, Anti Tamper, crypto 등 다양한 보안 기능을 손쉽게 적용할 수 있다는 설명이다.
마지막으로 그는 빠르고 경제적으로 프로토타입 구현을 꼽았다. ST는 아두이노 지원이 가능한 누클레오 보드(Nucleo boards)와 STM32큐브 MX(STM32CubeMX) 소프트웨어, 소프트웨어 라이브러리 등을 배포하고 있다. 이 중, STM32큐브 MX와 소프트웨어 라이브러리는 무료로 다운로드 받을 수 있습니다.또한 BLE, LoRa, Wi-fi, sensor, Sub-GHz RF등 다양한 기능을 지원하는 엑스 누클레오(X-Nucleo)를 제공한다.
레고 블럭 쌓듯 누클레오 보드와 손쉽게 결합시켜 원하는 기능을 빠르게 구현해볼 수 있다는 것. 오픈개발 환경을 지원하는 ST는 프로토타입 구현을 위한 시간과 비용을 현저히 줄일 수 있다는 점으로 엔지니어에게 어필한 것이 주효했다는 설명이다.
그래서 더 자세한 사항을 하나하나 짚기로 했다. 다음은 김 과장과의 1문 1답이다.
이슈 1. 저전력 관점
Q. STM32 제품군 중 STM32L시리즈는 저전력에 특화된 MCU라고 하는데 타사들도 저전력 MCU 형태 제품을 많이 출시하고 있다. 어떻게 다른지 설명해 달라.
A. 먼저, 가장 우수한 에너지 효율을 가지고 있다. 올해 2월 발표된 저전력 마이크로컨트롤러의 효율성을 비교하는 표준 벤치마크 테스트 EEMBC ULPBench 결과에 따르면, STM32L 시리즈는 코일이나 커패시터와 같은 외부 부품이 필요한 벅 컨버터 없이도 176.70 ULPMark-CP를 달성, 타사 제품의 스코어를 앞질렀다. 또한 80MHz에서 EEMBC 코어마크(CoreMark)를 273.55점 달성하여 업계 최고 성능과 전력 효율성을 객관적으로 입증 받았다. 뿐만 아니라, 세분화된 다양한 저전력 모드를 활용할 수 있어 사용자 애플리케이션 시나리오에 따라 다양한 저전력애플리케이션 구현할 수 있다. 특히 STMCU는 온도의 변화에 따른 소모전류의 변화가 낮아 타사 MCU 대비 외부 환경 특성에 매우 강하다고 자신한다.
Q. MCU의 저전력 성능도 중요하지만 주변 회로와의 관계도 중요하다. 각 모드에서 전력을 최소화하는 어떤 장치나 기능이 있는가.
A. 먼저, 저전력 모드(Sleep mode)에 진입한 상태에서 통신 인터페이스와 내부 SRAM의 조합으로 데이터 전송을 최적화된 소모전류로 수행하는 Batch Acquisition Mode(BAM)를 활용할 수 있다. 또한, 저전력 상태에서 최소한의 소모전류로 동작 가능한 Low power Timer와 Low power UART 가 있다. 더불어 STM32L4는 I/O, USB, LCD, Analog에 대해 독립적인 전원입력이 가능하여 하드웨어적 측면에서도 소모전류를 줄일 수 있다.
Q. 예를 들어, STM32큐브MX 소모전류 시뮬레이션에서는 개발자가 어떤 기능과 시나리오를 넣어서 결과치를 추정할 수 있는가.
A. STM32큐브MX의 소모전류 시뮬레이션 기능은 사용자 애플리케이션의 대략적인 동작상태와 저전력 모드 시나리오에 따라 소모전류 추정치를 계산할 수 있다. 사용자 애플리케이션의 경우에 따라 배터리 사용과 종류를 선택 할 수 있다. 또한 각각의 저전력 모드들의 동작시간과 활성화된 peripheral을 선택 및 추가하여 전반적인 시나리오를 구성하여 소모전류의 추정치 결과를 확인 할 수 있다.
이슈 2. 통신 관점
Q. IoT를 구성하려면 통신이 중요한데 어떤 통신 모듈들을 지원하고 있으며, 개발자가 쓰고자하는 보드에서 새로 추가하려면 어떻게 하면 손쉽게 추가할 수 있는가.
A. ST에서는 BLE, LoRa, Sub-GHz RF, Wi-Fi 등 누클레오 보드와 호환 가능한 다양한 엑스누클레오 (X-Nucleo) 보드를 제공하고 있다.이를 통해 빠르고 경제적으로 프로토타입 구현이 가능하다.
이슈 3. 보안 관점
Q. STM32는 ARM 코어에 내장된 보안 기능 외에 어떤 보안 기능을 제공하며 그 근거는 무엇인가.
A. STM32는 높은 수준의 다양한 보안 기능을 하드웨어 유닛으로 제공하고 있다. 구체적으로는 먼저, 지정된 영역의 외부에서 실행되는 코드로부터 Flash 또는 SRAM의 특정 부분의 데이터 또는 코드를 보호하기 위한 Firewall이 있으며, 두 번째 MCU 외부의 물리적인 접근으로부터 보호하기 위한 Anti-Tamper 기능, 세 번째 전송된 데이터를 검증하기 위해 사용되는 CRC calculation unit 4)Random Number Generator, Hash, Cryptographic, AES와 같은 보안 알고리즘은 전용 하드웨어 장치가 내장되어 있어 고속처리가 가능하다.
이슈 4. 개발환경 관점
Q. 툴과 소프트웨어와 같은 개발환경 지원에서 타사와 다른 점이 있다면 어떤 것인가.
A. 먼저, ST-Link/V2는 저가의 프로그램 및 디버그(debug) 툴로 SWIM 및 JTAG/SWD를 지원하며 STM8과 STM32를 개발에 활용할 수 있다. 하드웨어 툴 관련하여 아두이노와 ST Morpho header를 포함하고 mbed 환경을 지원하는 누클레어보드, MCU의 특정 기능을 테스트 할 수 있는 디스커버리보드, MCU의 모든 기능을 테스트할 수 있는 Evaluation 보드 등 다양한 레퍼런스 보드들을 제공하고 있다. 특히 누클레어 보드는 아두이노 쉴드 또는 ST에서 제공하는 엑스누클레오보드와 함께 빠르고 쉽게 프로토타입을 만들 수 있다.
소프트웨어 툴의 STM32큐브 MX툴은 초기화 C 코드를 생성할 수 있는 툴로 pin out, peripheral parameter, clock tree 등을 그래픽(Graphical)하게 설정하여 사용자 설정을 기반으로 초기화 C 코드를 생성한다. 참고로 STM32큐브 MX는 ST MCU의 모든 제품군을 지원하고 있다.
Q. F0, L0 제품군 Cortex-M0, M0+ 제품군을 사용하면 KEIL 라이선스를 무료로 사용할 수 있다고 했는데, 이는 어떤 점에서 이득을 준다고 말할 수 있는가.
A. 사실 MCU를 사용하여 프로젝트를 진행함에 있어서 많은 비용, 시간, 노력이 소모된다. 뿐만 아니라 통합개발환경(IDE)를 구축하는 것도 마찬가지이다. STM32F0, STM32L0의 경우 KEIL과 같은 인지도가 높은 상용버전의 컴파일러를 무료로 제공한다. 이를 통해 비용 및 시간 절약할 수 있기 때문에 프로젝트 진행에 많은 부담을 덜어 줄 수 있다.
Q. 개발자는 Stop모드, Sleep모드, Shutdown, Standby 모드 등 다양한 모드에서 미리 레퍼런스를 얻을 수 있는가.
A. 물론이다. ST 홈페이지(www.st.com/stm32)를 통해 해당 제품군의 Cube 라이브러리를 받을 수 있고, 레퍼런스 보드에 따라 각 low power mode의 예제코드를 참고할 수 있습니다. 또한, STM32큐브 MX라이브러리다운로드를 통해 다양한 제품군의 레퍼런스 보드 별 low power mode의 예제코드를 확인할 수 있다.