애플리케이션하드웨어 및 추론 🇷🇺 14.08.2026 14:04

팀발: 단일 칩에서 구현한 신경망 신디사이저

팀발은 단일 STM32N657 마이크로컨트롤러(Cortex-M55 + Neural-ART NPU)에서 실행되는 실시간 폴리포닉 신디사이저입니다. TCN 신경망을 잔차 리파이너로 사용하여 결정적 하모닉 구조에 비선형 특성을 추가하며, 엄격한 사이클 예산 내에서 언더런 없이 동작합니다. 프로젝트는 그래프 변환부터 메모리 관리까지의 광범위한 최적화를 통해 온디바이스 실시간 성능을 달성했습니다.
Tymbal은 단일 NUCLEO-N657X0Q 보드(STM32N657: 800MHz Cortex-M55 + Neural-ART NPU)에서 실행되는 폴리포닉 실시간 신디사이저로, MIDI 키보드로 제어되며 I2S-DAC 출력을 갖습니다. 오디오는 4ms 블록으로 계산되며, 800MHz에서 모든 것(보이스, 하모닉 합성, 신경망, 필터 뱅크, 디튠, 리미터)에 대해 홉당 320만 사이클이 소요되며 언더런이 전혀 없습니다. 아키텍처는 PQMF 4-서브밴드 도메인(각 12kHz)을 사용하여 비용을 줄이고 네트워크에 간결한 입력을 제공합니다. 하모닉 스켈레톤은 복소 필터 응답을 사용하여 서브밴드로 직접 렌더링되며, 안티-칩튠 레이어(자동 유니즌, 스펙트럴 블룸, 마이크로 드리프트)가 포함됩니다. 12개 레이어, 팽창 1..32, C=88 채널을 가진 인과적 TCN(시간적 컨볼루션 네트워크)이 NPU에서 잔차 리파이너로 실행되며, PTQ를 통해 int8로 양자화됩니다. 핵심 통찰은 잔차 예측에 대해 순진하게 훈련된 네트워크는 520개 계수의 선형 FIR에 비해 성능이 떨어진다는 것이었고, 해결책은 선형 부분을 '제로 레이어'로 고정하는 것이었습니다(pred = FIR(x) + net(x)). 이렇게 하면 네트워크는 비선형 잔차만 학습하게 됩니다. 최종 평가: FIR 단독으로 +11.25dB 억제, FIR+net fp32는 +17.16dB, int8은 +16.89dB이며, 네트워크는 +5.64dB를 기여합니다. 광범위한 부팅 문제 발견 사항으로는 리셋 후 ECC 랜덤 콘텐츠, 비활성화된 AXISRAM 뱅크, NOR 플래시 경로 문제, 잘못된 NPU 클럭 분배기(800MHz 대신 400), 그리고 잘못된 어서트가 있습니다. 예산 최적화는 홉당 4.18M 사이클에서 시작하여 최종적으로 2.47M 최악의 경우 코드, 언더런 0을 달성했습니다. 사용된 기법에는 측정 루프(QEMU 대 보드 사이클), NPU 에폭 프로파일링, 펌핑(논블로킹 NPU 호출을 렌더링과 인터리빙), 핫 테이블을 DTCM으로 이동, 상태 링을 위한 MVE 기반 메모리 복사가 포함됩니다.
출처: Habr — хаб ML — 원문
관련 게시물 ↓
새로운 뉴스