최적화된 8비트 마이크로컨트롤러를 사용하여 리소스가 제한된 장치의 설계 단순화

업데이트: 25년 2024월 XNUMX일

전동 공구, 개인 위생 제품, 장난감, 가전제품, 조명 제어 장치 등 전력과 공간이 제한된 장치 설계자의 경우 전통적으로 8비트 마이크로컨트롤러 장치(MCU)로 충분했습니다. 그러나 애플리케이션이 발전함에 따라 더 빠른 속도, 더 강력한 주변 장치 옵션, 더 강력한 소프트웨어 개발 도구가 필요합니다. 16비트 또는 32비트 대안으로 마이그레이션하면 도움이 될 수 있지만 패키지 크기가 커지고 전력이 더 많이 소모되는 경우가 많습니다.

이러한 문제를 해결하기 위해 설계자는 8051비트 및 16비트 프로세서의 많은 이점을 32비트 도메인에 제공하는 8 아키텍처 기반 MCU를 활용할 수 있습니다. 최신 개발 환경을 제공하면서 2 x 2mm 크기의 작은 패키지로 이를 수행합니다.

이 문서에서는 8051 아키텍처와 리소스가 제한된 애플리케이션에 대한 적합성에 대해 간략하게 설명합니다. 그런 다음 Silicon Labs의 8051 기반 MCU 제품군을 소개하고, 주요 하위 시스템을 설명하고, 각각이 중요한 설계 문제를 어떻게 해결하는지 보여줍니다. 이 기사는 하드웨어 및 소프트웨어 지원에 대해 논의하면서 마무리됩니다.

8051 아키텍처를 사용하는 이유는 무엇입니까?

공간이 매우 제한된 애플리케이션을 위해 MCU를 선택할 때 잘 정립된 8과 같은 8051비트 프로세서는 작은 설치 공간, 낮은 전력 소비, 단순한 설계 등 많은 이점을 제공합니다. 그러나 많은 8051 프로세서는 주변 장치가 상대적으로 단순하여 특정 사용 사례에 대한 적합성이 제한됩니다. 예를 들어, 저해상도 ADC(아날로그-디지털 변환기)는 의료 기기와 같은 고정밀 애플리케이션에 적합하지 않습니다.

상대적으로 느린 시계도 문제가 될 수 있습니다. 일반적인 8051 MCU는 8MHz~32MHz의 클록 주파수에서 작동하며, 이전 설계에서는 명령을 처리하기 위해 여러 클록 주기가 필요합니다. 이러한 낮은 속도는 정밀한 모터 제어와 같은 실시간 작업을 지원하는 8비트 MCU의 기능을 제한할 수 있습니다.

또한 8051 프로세서의 전통적인 소프트웨어 개발 환경은 현대 소프트웨어 개발자의 기대와 맞지 않습니다. 8비트 아키텍처의 본질적인 한계와 결합하면 이는 느리고 실망스러운 코딩 프로세스로 이어질 수 있습니다.

기존 8비트 프로세서의 한계로 인해 개발자는 16비트 또는 32비트 MCU로의 마이그레이션을 고려할 수 있습니다. 이러한 MCU는 충분한 컴퓨팅 성능, 고성능 주변 장치 및 최신 소프트웨어 환경을 제공하지만 상대적으로 크기도 큽니다. 이로 인해 공간이 제한된 설계에 통합하기가 더 어려워지고, 이로 인해 개발이 지연되거나 설계 크기가 커질 수 있습니다.

16비트 및 32비트 MCU와 관련된 코드 크기 및 전력 소비 증가로 인해 설계가 최적화되지 않을 수도 있습니다. 이러한 단점은 복잡한 수학을 포함하지 않아 이러한 프로세서의 고급 기능을 활용하지 못하는 많은 응용 프로그램에서 특히 문제가 됩니다.

이러한 절충안의 이상적인 균형은 프로젝트 시작 시에는 분명하지 않을 수 있으며, 설계 도중에 프로세서를 전환하면 개발이 지연되거나 제품 크기나 기능이 손상될 수 있습니다. 따라서 공간이 제한된 많은 설계는 8051비트 및 16비트 프로세서의 많은 장점을 저전력, 소형 32비트 영역에 제공하는 보다 강력한 8 기반 MCU의 이점을 누릴 수 있습니다.

EFM8BB50은 8비트 MCU에 더 많은 기능을 제공합니다.

Silicon Labs가 구축한 EFM8BB50 이러한 고려 사항을 염두에 둔 8비트 MCU 제품군입니다(그림 1). 이 MCU는 향상된 성능, 고급 주변 장치 및 최신 소프트웨어 개발 환경을 제공합니다.

그림 1: EFM8BB50 MCU의 제품 구성도가 나와 있습니다. (이미지 출처: 실리콘랩스)

MCU의 핵심은 향상된 성능, 감소된 전력 소비 및 향상된 기능을 위해 최적화된 51 아키텍처의 Silicon Labs 구현인 CIP-8051 8051 코어입니다. 특히 성과가 주목할 만하다. EFM8BB50에서 코어는 최대 50MHz의 속도를 달성하고 명령의 70%가 8~XNUMX개의 클록 사이클에서 실행됩니다. 이는 MCU에 기존 XNUMX비트 프로세서보다 훨씬 더 높은 성능을 제공하여 개발자에게 더 복잡한 애플리케이션을 위한 여유 공간을 제공합니다.

MCU는 작은 크기로도 유명합니다. EFM16BB8F50G-A-QFN16과 같은 제품군의 16핀 변형은 2.5mm x 2.5mm만큼 작은 패키지로 제공됩니다. EFM12BB8F50G-A-QFN16와 같은 12핀 버전 패키지 크기가 2mm x 2mm로 훨씬 더 작습니다.

작은 크기에도 불구하고 EFM8BB50 MCU는 다음과 같은 인상적인 기능을 갖추고 있습니다.

  • 정확한 센서 데이터가 필요한 애플리케이션에 필수적인 12비트 ADC
  • MCU가 외부 부품 없이 내부 온도나 주변 온도를 모니터링할 수 있게 해주는 통합 온도 센서
  • 모터 제어 및 LED 조광과 같은 응용 분야에서 가변 출력 제어를 위한 PWM 신호를 생성할 수 있는 펄스 폭 변조(PWM) 기능을 갖춘 3채널 프로그래밍 가능 카운터 어레이(PCA)
  • 모터 드라이버 또는 전력 변환기와 같은 전력 전자 장치의 추가 제어를 위한 데드 타임 삽입(DTI) 기능을 갖춘 3채널 PWM 엔진

기타 입/출력(I/O)에는 다양한 직렬 통신 인터페이스, 8비트 및 16비트 타이머 세트, 구성 가능한 논리 장치 5개가 포함됩니다. MCU 제품군의 모든 핀은 XNUMXV를 지원하며 제한된 핀 수를 최대한 활용하기 위해 디지털 I/O를 유연하게 할당할 수 있습니다.

고급 전원 관리

EFM8BB50에는 여러 에너지 관리 기능이 통합되어 전력 소비를 최적화하고 배터리 수명을 연장합니다. 이는 주변 장치를 활성 상태로 유지하면서 코어 클럭 속도를 낮추는 유휴 모드를 포함한 다양한 전원 모드로 시작됩니다. 정지 모드는 RAM 및 레지스터 내용을 보존하면서 코어와 대부분의 주변 장치를 정지함으로써 더욱 발전합니다. 일부 주변 장치는 코어를 중지 모드에서 깨우도록 설정하여 주로 저전력 상태로 유지되는 이벤트 기반 애플리케이션에 도움이 됩니다.

유연한 클로킹 옵션은 전력 절약에 더욱 도움이 됩니다. 정밀 내부 발진기는 많은 시나리오에서 외부 수정 발진기가 필요하지 않으므로 전체 전력 소비가 줄어듭니다. 또한 MCU는 다양한 주변 장치에 대한 클록을 선택적으로 비활성화하는 클록 게이팅을 지원하므로 개발자는 사용하지 않는 주변 장치를 끌 수 있습니다.

주변 장치도 전력 효율성을 염두에 두고 설계되었습니다. 특히 CLU(구성 가능한 논리 장치)는 간단한 논리 기능을 독립적으로 수행할 수 있으므로 간단한 작업을 위해 코어가 저전력 모드에서 깨어날 필요성이 줄어듭니다. 또한 LEUART(저에너지 UART)는 기본 발진기가 비활성화된 전력 모드에서 작동할 수 있으므로 저전력 상태에서 직렬 통신이 가능합니다.

직관적인 소프트웨어 개발 지원

개발자는 Silicon Labs의 Simplicity Studio Suite에서 EFM8BB50 제품군용 소프트웨어를 구축할 수 있습니다. 이 환경은 8비트 EFM8BB50, 회사의 32비트 MCU 및 무선 SoC(시스템 온 칩)에 사용됩니다. 결과적으로 개발자는 보다 강력한 프로세서에 기대할 수 있는 기능을 갖춘 현대적인 환경을 갖게 됩니다. 예를 들어 실시간으로 코드의 전력 프로파일링을 제공하는 에너지 프로파일러를 제공합니다(그림 2).

그림 2: Simplicity Studio에는 실시간으로 코드의 전력 프로파일링을 제공하는 에너지 프로파일러가 포함되어 있습니다. (이미지 출처: 실리콘랩스)

이 도구는 업계 표준 코드 편집기, 컴파일러, 디버거 및 사용자 인터페이스(UI) 엔진을 갖춘 통합 개발 환경(IDE)을 기반으로 구축되어 최신 반응형 인터페이스를 개발합니다. 이 개발 환경은 장치별 웹 및 SDK 리소스는 물론 전문 소프트웨어 및 하드웨어 구성 도구에 대한 액세스를 제공합니다.

Simplicity Studio는 Silicon Labs Secure Vault도 지원합니다. PSA 인증 레벨 3을 획득한 고급 보안 제품군인 Secure Vault를 사용하면 설계자는 사물 인터넷(IoT) 장치를 강화하고 진화하는 사이버 보안 규정에 맞춰 증가하는 사이버 위협으로부터 공격 표면을 보호할 수 있습니다.

평가 키트로 빠르게 시작하기

EFM8BB50 실험에 관심이 있는 개발자는 그림 50에 표시된 BB2702-EK3A 탐색 키트를 고려할 수 있습니다. 이 소형 폼 팩터 키트는 브레드 기판 크기에 맞춰져 있어 프로토타입 시스템 및 실험실 하드웨어에 쉽게 부착할 수 있습니다. USB 인터페이스, 온보드 SEGGER J-Link 디버거, LED 및 사용자 상호 작용을 위한 버튼이 특징입니다. 이 키트는 Simplicity Studio Suite에서 완벽하게 지원되며 에너지 프로파일러 유틸리티와 함께 ​​사용할 수 있습니다. 모든 주변 장치에 대한 소프트웨어 예제가 제공되며 데모에서는 LED, 버튼 및 UART를 연습합니다.

그림 3: BB50-EK2702A 탐색 키트가 표시됩니다. (이미지 출처: 실리콘랩스)

키트에는 mikroBUS 소켓과 Qwiic 커넥터가 포함되어 있습니다. 이 하드웨어 추가 기능 지원을 통해 개발자는 다양한 공급업체의 기성 보드를 사용하여 애플리케이션을 신속하게 생성하고 프로토타입을 제작할 수 있습니다.

보다 포괄적인 시작점에 관심이 있는 개발자는 그림 50에 표시된 BB5208-PK4A 프로 키트를 사용할 수 있습니다. 심층적인 평가 및 테스트를 위해 설계된 이 키트에는 MCU의 다양한 기능을 보여주는 센서와 주변 장치가 포함되어 있습니다.

그림 4: 심층 평가 및 테스트를 위한 BB50-PK5208A Pro 키트가 표시됩니다. (이미지 출처: 실리콘랩스)

Pro Kit에는 USB 연결, 초저전력 128 x 128 픽셀 메모리가 포함되어 있습니다. LCD, 7021방향 아날로그 조이스틱, LED 및 사용자 푸시버튼이 있습니다. 또한 Silicon Labs의 SiXNUMX 상대 습도 및 온도 센서와 USB 및 코인 셀 배터리를 포함한 여러 전원 공급 장치도 갖추고 있습니다.

확장을 위해 보드는 20핀, 2.54mm 헤더를 제공합니다. 또한 I/O 핀에 직접 액세스할 수 있는 브레이크아웃 패드도 제공합니다. Explorer Kit와 마찬가지로 Pro Kit는 Energy Profiler를 지원하고 모든 주변 장치에 대한 소프트웨어 예제와 함께 제공됩니다.

EFM8BB50 디버거 옵션

Silicon Labs는 MCU를 지원하기 위해 여러 디버거를 제공합니다. 범용 디버깅을 위해 이 회사는 간단한 1핀 커넥터가 있는 8비트 USB 디버그 어댑터인 DEBUGADPTR10-USB를 제공합니다.

SI-DBG1015A Simplicity Link Debugger에서는 보다 전문화된 기능을 사용할 수 있습니다. 이는 위에서 언급한 두 키트에 모두 포함된 Mini Simplicity 인터페이스에 연결됩니다. 기본 기능 외에도 Simplicity Link는 SEGGER J-Link 디버거, 패킷 추적 인터페이스, 가상 COM 포트 및 개별 신호를 쉽게 검색할 수 있는 브레이크아웃 패드를 포함한 추가 기능을 제공합니다.

결론

EFM8051BB8과 같은 최신 50 MCU는 일반적으로 16비트 및 32비트 장치와 관련된 기능을 8비트 도메인에 제공합니다. 빠른 클록 속도, 고성능 주변 장치 및 강력한 소프트웨어 개발 환경을 갖춘 이 MCU 제품군은 개발자에게 공간과 전력이 제한되어 있지만 더 높은 성능과 유연성이 요구되는 점점 더 많은 응용 분야에 적합한 기능 조합을 제공합니다.