Cmsis dsp integration
Reusable Agent Skills for embedded systems, MCU debugging, firmware workflows, and AI automation. (嵌入式、MCU 调试、固件流程与 AI 自动化的可复用 Agent Skills 集合)。
npx -y skills add easyzoom/aix-skills --skill cmsis-dsp-integrationAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 22 stars22 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Use when integrating, configuring, or debugging CMSIS-DSP, ARM math functions, FFT, filters, fixed-point DSP, vector math, or Cortex-M signal processing
SKILL.md
2.5 KB, as published. Nobody here has run it
CMSIS-DSP Integration
Overview
Use this skill to integrate CMSIS-DSP by matching the target core, FPU/DSP extensions, data type, scaling, and buffer alignment. DSP bugs often come from numeric format and build flags rather than function calls.
When To Use
Use this skill when:
- The user wants CMSIS-DSP or ARM math functions on Cortex-M or Cortex-A/R targets.
- The task involves FFT, FIR/IIR filters, matrix math, statistics, PID, Q15/Q31/f32, or optimized vector operations.
- Results are wrong, saturated, NaN, too slow, or differ from desktop reference output.
Do not use this skill for TinyML inference runtime integration. Use tinymaix-integration or ML-specific skills instead.
First Questions
Ask for:
- MCU/core, FPU/DSP extension, compiler, and build flags.
- CMSIS-DSP version and how it is included.
- Function family and data type: f32, f16, q7, q15, q31, or mixed.
- Input range, expected output, reference data, and buffer sizes.
- Whether performance, code size, or accuracy is the primary goal.
Integration Checklist
-
Match core flags. Compiler options must match FPU, ABI, and DSP extensions.
-
Choose numeric format deliberately. Fixed-point Q formats need scaling, saturation, and headroom analysis.
-
Validate buffers. FFT/filter/state buffers must be sized and aligned as required.
-
Compare with golden vectors. Use known input/output before live sensor data.
-
Measure performance on target. Desktop estimates do not prove MCU timing.
Common Failures
- FPU ABI mismatch between objects.
- Q15/Q31 overflow from missing scaling.
- FFT length or bit-reversal config wrong.
- Filter state buffer too small.
- Cache/DMA buffer incoherency around ADC/audio data.
- Reference output uses different normalization.
Verification
Before claiming CMSIS-DSP works:
- State core, build flags, data type, function, and buffer sizes.
- Confirm golden-vector output within tolerance.
- Confirm no saturation/NaN unless expected.
- Report runtime cycles/time if performance is in scope.
Example
User:
CMSIS-DSP 做 FFT 结果不对。
Agent:
- Asks for core flags, FFT length, data type, input scaling, and reference output.
- Checks buffer sizes and normalization.
- Verifies with a single-tone golden vector before live ADC data.