STM32G4 시리즈에 FMAC 이 추가되어 있습니다. Digital Filter에 필요한 연산 가속기가 포함되어있는 하드웨어 Peripheral 입니다.
STM32G4의 FMAC의 Application note를 번역한 시리즈를 시작해 보도록 하겠습니다. 영문 원본은 아래 URL을 참조하시고 다소 부자연스러운 번역이 있어도 양해 바랍니다.
이 문서는 STM32G4 시리즈를 위한 STM32CubeG4 MCU 패키지에 적용됩니다. 디지털 필터는 오디오에서 부터 산업 제어 및 IoT에 이르기까지 다양한 애플리케이션 영역에서 일반적으로 사용됩니다.
통신 신호에서 원치 않는 간섭 제거, 디지털 전원 공급 장치 제어 또는 사운드 트랙 압축과 같은 다양한 작업에 사용됩니다.
전통적으로 디지털 신호 프로세서(DSP)로 구현된 디지털 필터는 범용 마이크로컨트롤러를 중심으로 구축된 저가 애플리케이션에 점점 더 많이 사용되고 있습니다. 실제로 Arm® Cortex®-M4와 같은 최신 MCU 코어에는 신호 처리에 일반적으로 사용되는 수학적 계산 속도를 높이기 위한 DSP 기능이 포함되어 있습니다.
그럼에도 불구하고 필터 작업은 제한된 프로세서 로드에 많은 부분을 소비하여 다른 필수 작업에 사용할 수 있는 프로세서 시간이 충분하지 않을 수 있습니다.
프로세서 리소스를 확보하는 세 가지 방법이 있습니다.
• 더 빠르고 강력한 프로세서 사용
• DSP 장치를 추가하여 필터링 수행
• 전용 하드웨어를 사용하여 프로세서를 로드를 줄입니다.
이 중 세 번째 솔루션이 가장 비용 및 전력 효율성이 높습니다. 그러나 이러한 하드웨어는 MCU가 사용될 수 있는 다양한 애플리케이션을 지원하기 위해서는 사용성이 높아야 합니다.
FMAC(filter math accelerator)는 DSP의 유연성과 전용 하드웨어의 비용 및 전력 효율성을 모두 고려하였습니다. FMAC는 2x16비트 곱셈기와 26비트 누산기를 중심으로 구축되었습니다.
Finite Impulse Response(FIR)과 Infinite Impulse Response(IIR) 필터 중에서 선택할 수 있습니다. 여기에는 계수 및 상태 저장, 입력 및 출력 샘플 버퍼에 자유롭게 할당할 수 있는 16비트 메모리의 256워드가 포함됩니다.
프로세서 자체와 동일한 클럭 주파수에서 작동되는 FMAC는 소프트웨어 만큼 빠르거나 더 빠른 필터링 작업을 실행할 수 있습니다. 입력을 로드하고 출력 버퍼를 비우는 DMA 장치와 같이 사용할 때, FMAC는 필터링 작업에 사용되는 프로세서 시간을 100% 확보할 수 있습니다.
이 애플리케이션 노트는 두 가지 예를 통해 FMAC를 활용하여 프로세서를 확보하는 방법을 설명합니다.
• Adaptive FIR 필터를 사용한 노이즈 캔슬링
• 3p3z IIR 보정기를 사용한 디지털 전원 공급 장치 제어.
예제는 www.st.com에서 다운로드할 수 있는 STM32CubeG4 MCU 패키지에서 찾을 수 있습니다.
<계속>