콘텐츠로 이동

Bluetooth 프로세서

소개

Bluetooth 프로세서는 SF32LB 디바이스 내부의 전용 무선 제어 서브시스템입니다. 무선 스케줄링, 링크 제어, 저전력 연결 유지, 메인 애플리케이션 프로세서와의 조율 등 타이밍에 민감한 Bluetooth 컨트롤러 기능을 처리합니다.

이 아키텍처는 배터리로 동작하는 연결형 제품에 유용합니다. 무선 이벤트가 발생할 때마다 메인 애플리케이션 CPU를 깨우는 대신, SF32 디바이스는 이기종 멀티 코어 구조를 사용합니다. 애플리케이션 프로세서는 제품 로직과 사용자 대면 기능을 처리하고, 저전력 Bluetooth 프로세서 또는 상시 동작(always-on) 프로세서는 무선 링크를 활성 상태로 유지합니다.

이 저전력 프로세서에서 실행할 수 있는 애플리케이션 코드의 양은 제품군마다 다릅니다. 아래 비교표를 참고하고, 사용하려는 정확한 디바이스에 대해 SDK에서 태스크 할당을 확인하십시오.

Bluetooth 타이밍과 컨트롤러 펌웨어가 어디에서 실행되는지, 선택한 제품군에서 저전력 코어를 프로그래밍할 수 있는지, 연결형 제품에서 애플리케이션 CPU를 어떻게 슬립 상태로 둘 수 있는지 이해해야 할 때 이 페이지를 읽으십시오. 서비스 설계와 제품 수준의 Bluetooth 통합은 Bluetooth 개요를 참고하십시오.

전용 Bluetooth 프로세서가 중요한 이유

Bluetooth는 백그라운드에서 가끔 실행되는 소프트웨어 프로토콜에 그치지 않습니다. 연결형 디바이스는 광고, 스캔, 연결 이벤트, 패킷 교환, 오디오 전송, 암호화, 그리고 다른 시스템 활동과의 공존에 대해 엄격한 무선 타이밍 요구 사항을 충족해야 합니다.

전용 Bluetooth 서브시스템은 이러한 타이밍에 민감한 무선 역할을 메인 애플리케이션 워크로드에서 분리하여 도움을 줍니다. 이를 통해 다음과 같은 실용적인 이점을 얻을 수 있습니다.

  • connected standby 중 평균 소비 전력 감소
  • UI, 그래픽, 오디오 또는 AI 워크로드 상황에서 더 안정적인 무선 타이밍
  • 이벤트마다 애플리케이션 CPU를 깨우지 않고도 컨트롤러 측 무선 이벤트 처리 가능
  • 애플리케이션 펌웨어와 프로토콜 제어 펌웨어의 명확한 분리
  • 메인 CPU가 슬립 상태인 동안에도 연결을 유지해야 하는 제품에 대한 더 나은 지원

웨어러블 및 휴대용 제품에서는 이러한 분리가 특히 가치 있습니다. 디바이스는 수명의 대부분을 저전력 연결 상태로 보내며, 사용자 입력, 센서 이벤트, 디스플레이 업데이트, 오디오 활동 또는 휴대폰 동기화 때에만 깨어날 수 있습니다.

이는 아키텍처상의 가능성이며, 소비 전력이나 웨이크업 수치를 보장하는 것이 아닙니다. 측정 결과는 호스트 배치, 인터럽트, 클럭 시작, 슬립 정책, 애플리케이션 트래픽에 따라 결정됩니다. 의도한 펌웨어와 워크로드로 전류와 응답 시간을 측정하십시오.

SF32 시스템에서의 위치

단순화한 SF32 무선 아키텍처는 다음과 같습니다.

그림: 단순화한 SF32 무선 아키텍처
Application Processor
  - product firmware
  - UI and graphics
  - audio application logic
  - user services
        │
        ▼
Bluetooth Host / System Services
        │
        ▼
Bluetooth Processor / Controller Firmware
  - link-layer timing
  - radio scheduling
  - low-power connection events
  - controller-side protocol work
        │
        ▼
Bluetooth Radio and RF Front End

호스트, 컨트롤러, 애플리케이션 펌웨어 사이의 정확한 분담은 SDK, 스택 구성, 제품 요구 사항에 따라 달라집니다. 그러나 개념적으로 메인 애플리케이션 프로세서를 Bluetooth 동작에 관여하는 유일한 CPU로 취급하지 않는 것이 좋습니다. Bluetooth 서브시스템은 자체 실행 컨텍스트를 가지며, 무선 동작을 결정적이고 전력 효율적으로 유지하도록 설계되었습니다.

디바이스 제품군별 차이

SF32LB 제품군은 디바이스 등급에 따라 서로 다른 저전력 프로세서 구성을 사용합니다. 사용하는 정확한 디바이스에 대해 항상 데이터시트와 SDK 문서를 확인하십시오.

표: 디바이스 제품군별 차이
디바이스 제품군 Bluetooth 기능 저전력 프로세서의 역할 주요 용도
SF32LB52x 듀얼 모드 Bluetooth, BT Classic + BLE LCPU가 Bluetooth 스택을 실행하며 애플리케이션에서 직접 사용할 수 없음 비용 최적화 Bluetooth 모듈, 오디오 액세서리, 보급형 웨어러블, 소형 HMI
SF32LB55x BLE SDK에서 지원하는 애플리케이션 태스크를 LCPU에서 실행할 수 있음 BLE 웨어러블 및 센서 비중이 높은 저전력 제품
SF32LB56x 듀얼 모드 Bluetooth, BT Classic + BLE SDK에서 지원하는 애플리케이션 태스크를 LCPU에서 실행할 수 있음 고급 디스플레이를 탑재한 제품, 연결형 HMI, 웨어러블 디바이스
SF32LB57x 듀얼 모드 Bluetooth, BT Classic + BLE LCPU가 Bluetooth와 전력에 민감한 태스크를 처리하며, 지원되는 태스크 할당은 확인 필요 HCPU/ACPU에서 그래픽과 로컬 오디오를 함께 처리하는 제품
SF32LB58x 듀얼 모드 Bluetooth, BT Classic + BLE SDK에서 지원하는 애플리케이션 태스크를 LCPU에서 실행할 수 있음 그래픽, 오디오, AI, 복잡한 연결 요구가 있는 플래그십 제품

SiFli의 SF32LB52x HAL 가이드는 LCPU가 Bluetooth 프로토콜 스택을 실행하며 애플리케이션에는 개방되지 않는다고 명시합니다. SF32LB55x, SF32LB56x, SF32LB58x HAL 가이드는 BLE와 센서 처리 같은 전력에 민감한 기능을 LCPU에 배치하는 방식을 설명합니다. SF32LB57x의 경우 SDK의 ACPU 가이드가 HCPU/ACPU/LCPU 구조를 설명하고 BLE 및 센서 관련 작업을 LCPU에 할당하지만, 임의의 사용자 태스크에 대한 전체 범위는 정의하지 않습니다. 제품군 전체에 LCPU 프로그래밍 가능 여부를 일반화하지 마십시오. 정확한 부품에 대해서는 데이터시트에서 코어 구성을 확인한 다음, 사용하려는 SDK 릴리스와 보드 구성이 의도한 애플리케이션 태스크를 LCPU에서 지원하는지 확인하십시오. 이 조합이 문서화되어 있지 않다면 태스크 배치를 미검증으로 표시하고, 확정하기 전에 사용 가능한 메모리와 스케줄링 한계도 확인하십시오.

같은 ACPU 가이드는 애플리케이션 코어의 역할도 구분합니다. SF32LB57x는 ACPU를 오디오 및 그래픽 처리에 사용하고, SF32LB58x는 ACPU에 오디오 DSP 역할을 부여합니다. 이러한 역할은 Bluetooth 컨트롤러 작업과 별개이므로, 선택한 보드와 SDK에서 태스크 배치를 확인하십시오.

표의 Bluetooth 기능 항목은 제품군 수준의 문서를 요약한 것이며, 모든 프로파일이나 SDK 빌드의 지원을 보장하지는 않습니다. SiFli의 SF32LB52x 데이터시트, SF32LB55x 데이터시트, SF32LB56x 데이터시트, SF32LB58x 데이터시트가 나열된 BLE 또는 듀얼 모드 기능을 명시합니다. SDK의 Bluetooth 시그널링 테스트 가이드는 BR/EDR 및 BLE 테스트를 다루며 SF32LB57x를 포함합니다. 정확한 부품과 SDK 릴리스에서 프로파일, 기능, 구성의 지원 여부를 확인하십시오.

애플리케이션 프로그래밍 가능성과 컨트롤러 펌웨어

애플리케이션을 프로그래밍할 수 있는 LCPU라고 해서 Bluetooth 컨트롤러의 소스 코드에 접근하거나 무선 스택을 교체할 수 있다는 뜻은 아닙니다. 지원되는 펌웨어 업데이트, 패치 메커니즘, 메모리 예산, 스케줄링 한계는 디바이스와 SDK에 따라 달라집니다.

  • 저전력 애플리케이션 개발. 지원되는 경우 적합한 센서 데이터 수집, 경량 처리, 시스템 관리 태스크를 LCPU로 옮기십시오. 스택 메모리, 실행 시간, HCPU와의 통신을 예산에 반영하십시오.
  • 컨트롤러 유지 보수 및 커스터마이징. 선택한 디바이스와 SDK에 대해 벤더가 지원하는 펌웨어 업데이트와 패치 메커니즘을 사용하십시오. 프로그래밍 가능한 애플리케이션 코어가 있다고 해서 독점 컨트롤러 소스나 대체 무선 스택을 사용할 수 있다는 근거가 되지는 않습니다. 이러한 기능은 SiFli에 별도로 확인하십시오.

컨트롤러 전용 구성이라도 벤더가 지원하는 업데이트를 받을 수 있으며, 컨트롤러 이미지가 반드시 변경 불가능한 것은 아닙니다. 컨트롤러 변경 사항은 Bluetooth 인증, 상호 운용성, 호스트/컨트롤러 호환성, OTA 복구 측면에서 검증하십시오. 복구를 위한 롤백과, 취약한 이전 펌웨어의 설치를 막는 보안 정책을 구분하십시오.

BLE와 듀얼 모드 Bluetooth

SF32 디바이스는 제품군 구성원에 따라 **Bluetooth Low Energy(BLE)**만 지원하거나, Bluetooth Classic과 BLE를 모두 지원하는 듀얼 모드 Bluetooth를 지원할 수 있습니다.

Bluetooth Low Energy

BLE는 저전력 데이터 교환에 최적화되어 있습니다. 일반적으로 다음과 같은 용도에 사용됩니다.

  • 피트니스 밴드와 스마트워치
  • 헬스 센서와 웨어러블
  • 휴대폰 알림과 컴패니언 앱
  • 센서 동기화
  • 비콘과 위치 인식 디바이스
  • 저전력 제어 및 구성 채널

BLE 연결은 대체로 간헐적이며 이벤트 중심이므로 저전력 Bluetooth 프로세서에 자연스럽게 어울립니다.

Bluetooth Classic과 듀얼 모드 설계

듀얼 모드 Bluetooth는 BLE와 함께 Bluetooth Classic 사용 사례에 대한 지원을 추가합니다. 다음과 같은 제품에 유용합니다.

  • Bluetooth 오디오 액세서리
  • 무선 어댑터와 모듈
  • 기존 Classic Bluetooth 프로파일과의 호환이 필요한 디바이스
  • BLE 제어와 Classic 오디오 또는 데이터 동작을 결합하는 제품

오디오와 레거시 프로파일은 처리량, 지연 시간, 공존 요구 사항이 더 까다로울 수 있으므로 듀얼 모드 동작은 BLE 전용 동작보다 부담이 클 수 있습니다. 전용 Bluetooth 서브시스템은 이러한 요구 사항을 메인 CPU의 워크로드 급증으로부터 분리하는 데 도움이 됩니다.

Bluetooth 오디오와 LE Audio

Bluetooth 오디오 제품은 시스템 아키텍처에 추가적인 부담을 줍니다. 오디오 워크로드는 무선 타이밍, 버퍼링, 코덱 처리, 클럭 동기화를 포함하며, 경우에 따라 사용자 인터페이스 업데이트도 동시에 수행합니다.

잘 설계된 SF32 Bluetooth 오디오 시스템은 일반적으로 역할을 다음과 같이 분리합니다.

  • Bluetooth 프로세서는 컨트롤러 측 무선 및 링크 타이밍을 처리합니다.
  • 애플리케이션 프로세서는 제품 로직, UI, 상위 수준의 오디오 동작을 처리합니다.
  • I2S, PDM, ADC, DAC 같은 오디오 인터페이스가 샘플 데이터를 시스템의 나머지 부분과 주고받습니다.
  • DMA와 버퍼링은 연속 오디오 스트리밍 중 CPU 오버헤드를 줄여 줍니다.

LE Audio나 그 밖의 최신 Bluetooth 오디오 사용 사례에서는 펌웨어 아키텍처, 스택 지원, 코덱 선택, 메모리 대역폭, 전력 관리 정책이 모두 최종 결과를 좌우합니다. SiFli의 SF32LB56x 및 SF32LB58x 데이터시트는 BLE Audio 지원을 명시적으로 나열하며, BLE 또는 듀얼 모드 지원만으로 LE Audio 지원이 보장되지는 않습니다. 특정 프로파일, 코덱, SDK 경로의 사용 가능 여부는 정확한 부품과 SDK 릴리스에 따라 달라지므로, LE Audio 설계를 확정하기 전에 이를 확인하십시오. Bluetooth 프로세서는 타이밍의 기반을 제공하지만, 제품의 전체 동작은 SDK와 애플리케이션 설계에 달려 있습니다.

저전력 동작

Bluetooth 서브시스템은 무선 링크가 활성 상태인 동안 메인 애플리케이션 프로세서가 슬립 상태로 있을 수 있을 때 가장 큰 가치를 발휘합니다. connected standby에서는 다음과 같은 의미 있는 이벤트가 있을 때만 애플리케이션 프로세서를 깨우면 됩니다.

  • 수신된 알림 또는 명령
  • 연결 상태 변경
  • 예약된 동기화 태스크
  • 오디오 스트림 시작 또는 중지
  • 센서 또는 사용자 입력 이벤트
  • 펌웨어 업데이트 또는 프로비저닝 작업

이 모델은 메인 CPU를 가능한 한 활성 전력 상태 밖에 둡니다. Bluetooth 프로세서와 무선부는 예약된 연결 이벤트에 맞춰 깨어나 필요한 프로토콜 작업을 수행한 뒤, 시스템이 더 낮은 전력 상태로 돌아가도록 합니다.

실제 전력 프로파일은 연결 간격, 송신 전력, 광고 동작, 슬립 모드, 크리스털 구성, RF 레이아웃, 펌웨어 정책, 애플리케이션 프로세서가 깨어나는 빈도에 따라 달라집니다.

호스트, 컨트롤러, 애플리케이션의 경계

Bluetooth 소프트웨어는 흔히 두 개의 주요 계층으로 설명됩니다.

표: 호스트, 컨트롤러, 애플리케이션의 경계
계층 주요 역할
호스트 프로파일, 서비스, 페어링 정책, 애플리케이션이 사용하는 API, 상위 수준의 프로토콜 동작
컨트롤러 링크 계층, 무선 스케줄링, 패킷 타이밍, 암호화 지원, 하위 수준의 Bluetooth 절차

SF32 시스템에서 컨트롤러 측 역할은 Bluetooth 프로세서 및 무선 서브시스템과 밀접하게 연결되어 있습니다. 호스트 측은 스택 아키텍처에 따라 애플리케이션 프로세서, 시스템 펌웨어 또는 SDK가 제공하는 구성 요소에 걸쳐 실행될 수 있습니다.

애플리케이션 개발자에게 가장 중요한 점은 Bluetooth 동작이 CPU 경계를 넘나든다는 것입니다. 공유 메모리, 프로세서 간 메시징, 이벤트, SDK API는 제품 아키텍처의 일부입니다. Bluetooth를 메인 애플리케이션에 링크된 라이브러리가 아니라 하나의 서브시스템으로 취급하십시오.

애플리케이션 프로세서와의 상호작용

애플리케이션 프로세서는 보통 제품 수준의 동작을 제어합니다.

  • 광고 시작 및 중지
  • 연결 생성 또는 수락
  • GATT 서비스와 특성 관리
  • 페어링, 본딩, 보안 정책 처리
  • 휴대폰 또는 게이트웨이와 애플리케이션 데이터 교환
  • Bluetooth 상태가 바뀔 때 UI 상태 업데이트
  • 오디오 스트림, 센서, 전원 모드 조율

Bluetooth 프로세서는 연결을 유지하는 데 필요한 하위 수준의 작업을 처리합니다. 양측 간의 통신은 보통 SDK API, 이벤트, 큐 또는 프로세서 간 통신 메커니즘으로 추상화됩니다.

좋은 애플리케이션 설계는 불필요한 작업을 위해 메인 CPU를 깨우지 않습니다. 가능하면 이벤트를 묶어서 처리하고, 적절한 연결 파라미터를 선택하며, 이벤트 기반 콜백을 사용할 수 있을 때는 애플리케이션에서 고빈도 폴링을 피하십시오.

RF와 클럭 고려 사항

Bluetooth 프로세서만으로는 좋은 무선 성능을 낼 수 없으며, 주변 하드웨어 설계가 중요합니다. RF 레이아웃, 안테나 튜닝, 클럭 정확도, 전원 무결성, 양산 캘리브레이션은 모두 통신 거리, 수신 감도, 송신 전력, 연결 안정성에 영향을 줍니다.

중요한 하드웨어 고려 사항은 다음과 같습니다.

  • 권장 RF 매칭 회로와 안테나 레이아웃을 사용하십시오.
  • RF 트레이스는 짧게 하고 임피던스를 제어하며, 노이즈가 많은 신호와 잘 분리하십시오.
  • 하드웨어 설계 가이드의 크리스털 요구 사항을 따르십시오.
  • RF 및 클럭 회로에 깨끗한 전원 레일과 로컬 디커플링을 제공하십시오.
  • RF 캘리브레이션과 펌웨어 플래싱을 위한 양산 테스트 접근 경로를 확보하십시오.
  • 고속 디스플레이, 스토리지 또는 스위칭 전원 트레이스를 민감한 RF 경로 근처에 배선하지 마십시오.

소프트웨어 팀과 하드웨어 팀은 Bluetooth 성능을 시스템 전체의 특성으로 다루는 것이 좋습니다. 펌웨어 파라미터만으로는 부실한 RF 레이아웃이나 불안정한 클럭을 완전히 보상할 수 없습니다.

다른 워크로드와의 공존

SF32 디바이스는 흔히 Bluetooth를 그래픽, 오디오, 센서, 스토리지, 경우에 따라 외부 Wi-Fi와 함께 실행합니다. 이러한 서브시스템은 전원, 클럭, 메모리 대역폭, 핀, CPU 처리 시간을 공유합니다.

일반적인 공존 관련 문제는 다음과 같습니다.

  • 디스플레이 리프레시 또는 PSRAM 트래픽이 사용 가능한 메모리 대역폭에 영향을 줌
  • 오디오 DMA와 Bluetooth 오디오 버퍼에 안정적인 타이밍이 필요함
  • 센서 인터럽트가 애플리케이션 프로세서를 지나치게 자주 깨움
  • 외부 Wi-Fi 또는 다른 RF 소스가 Bluetooth 성능에 영향을 줌
  • 긴 크리티컬 섹션이나 비활성화된 인터럽트가 호스트 측 Bluetooth 처리를 지연시킴

Bluetooth 프로세서는 타이밍이 교란될 위험을 줄여 주지만, 공유 리소스 병목을 모두 없애지는 못합니다. 오디오, 풍부한 UI 또는 외부 무선 연결을 갖춘 제품은 현실적인 최악의 워크로드에서 테스트하는 것이 좋습니다.

대표적인 사용 사례

Bluetooth 프로세서는 많은 SF32 제품 범주에서 핵심 역할을 합니다.

  • Bluetooth 모듈과 시리얼 어댑터
  • 보급형 스마트워치와 피트니스 밴드
  • BLE 헬스 센서와 웨어러블 디바이스
  • Bluetooth 오디오 액세서리
  • 스마트 배지와 전자 가격표
  • 휴대폰과 연결되는 대시보드 및 HMI 디바이스
  • 스마트 홈 컨트롤과 컴패니언 앱 제품
  • 센서 동기화 및 데이터 로깅 디바이스

가장 적합한 SF32 제품군 구성원은 제품에 BLE 전용으로 충분한지 듀얼 모드 Bluetooth가 필요한지, 그리고 오디오 기능, 디스플레이 기능, 메모리 용량, 사용자가 프로그래밍할 수 있는 저전력 처리가 필요한지에 따라 달라집니다.

실용적인 설계 지침

SF32용 Bluetooth 펌웨어를 설계할 때는 먼저 제품의 연결 동작을 정의하십시오.

  • 제품에 BLE 전용이 필요합니까, 듀얼 모드 Bluetooth가 필요합니까?
  • Bluetooth 오디오가 필요합니까?
  • 어느 정도의 연결 간격, 지연 시간, 처리량이 필요합니까?
  • 메인 애플리케이션 프로세서는 얼마나 자주 깨어나야 합니까?
  • 어떤 이벤트가 Deep Sleep 또는 Standby에서 시스템을 깨워야 합니까?
  • 센서 또는 UI 태스크가 Bluetooth 타이밍과 경합합니까?
  • 어느 정도의 RF 통신 거리와 송신 전력 목표가 필요합니까?
  • 양산 펌웨어 플래싱과 RF 캘리브레이션은 어떻게 처리합니까?

견고한 설계는 대개 Bluetooth 프로세서를 신중한 연결 파라미터 선택, 이벤트 기반 애플리케이션 코드, 저전력 상태 계획, 우수한 RF 하드웨어 레이아웃과 결합합니다.

핵심 요약

  • SF32LB 디바이스는 전용 Bluetooth 또는 저전력 프로세서 서브시스템을 사용하여 무선 동작을 안정적이고 전력 효율적으로 유지합니다.
  • SF32LB52x는 LCPU를 Bluetooth 컨트롤러 전용으로 유지합니다. SF32LB55x, SF32LB56x, SF32LB58x는 문서화된 구성에서 SDK가 정의한 애플리케이션 태스크를 LCPU에서 지원합니다. SF32LB57x는 LCPU를 Bluetooth와 전력에 민감한 작업에 사용하지만, 계획한 각 사용자 태스크가 대상 SDK와 보드에서 지원되는지 확인하십시오.
  • 프로그래밍 가능한 LCPU는 SDK 제약 안에서 애플리케이션 태스크를 지원하며, 컨트롤러 스택 소스 접근과 커스터마이징은 별도로 확인해야 합니다. 벤더가 지원하는 업데이트를 사용하고 컨트롤러 변경 사항을 검증하십시오.
  • BLE는 저전력 연결형 제품에 최적화되어 있으며, 듀얼 모드 Bluetooth는 오디오와 레거시 프로파일 지원 같은 Classic Bluetooth 사용 사례를 추가합니다.
  • Bluetooth 프로세서는 연결, 광고, 예약된 무선 이벤트가 계속되는 동안 메인 애플리케이션 CPU가 슬립 상태로 있도록 도와줍니다.
  • 좋은 Bluetooth 성능은 RF 레이아웃, 클럭, 전원, 안테나 튜닝, 캘리브레이션을 포함한 펌웨어 아키텍처와 하드웨어 설계 모두에 달려 있습니다.
  • Bluetooth를 호스트/컨트롤러 경계, 프로세서 간 통신, 전력 정책 결정, 공유 리소스 제약을 갖춘 하나의 서브시스템으로 취급하십시오.

최종 업데이트: