Diploma in DSP in MCU/ARM: CMSIS and Fixed-Point
Online postgraduate diploma of 800 hours in DSP on MCU/ARM: CMSIS and Fixed-Point: 8 modules covering ARM architectures for signal processing, fixed-point arithmetic, the CMSIS-DSP library, real-time filtering and transforms, DSP code optimisation, control and sensor applications, and verification of embedded algorithms, with an assigned technical tutor.
Take the controls.
Run a real engineering trade-off from this field. Move the sliders, watch the model react in real time and beat the challenge.
What you will be able to do
Select ARM Cortex-M architectures suited to signal processing.
Represent algorithms in fixed-point arithmetic using the Q format.
Use the CMSIS-DSP library in real-time applications.
Implement filters and transforms with DMA-based acquisition.
Optimise DSP code with intrinsics, SIMD and Helium.
Apply DSP techniques to motor control and sensor processing.
Verify numerical precision against reference models.
Who it's for
- DSP firmware engineers working on Cortex-M microcontrollers.
- Embedded systems engineers adding signal processing to their products.
- Fixed-point algorithm developers porting models from MATLAB or Python.
- Motor control engineers implementing FOC and sensor processing.
- Embedded audio engineers building real-time filtering and analysis.
- Software optimisation engineers who squeeze cycles and energy out of MCUs.
- Engineering or science graduates looking to enter the consumer electronics sector.
What you'll work with
- ISO/IEC TR 18037:2008 – Embedded C (fixed-point types and extensions for embedded processors)
- IEEE 754-2019 (floating-point arithmetic)
- MISRA C:2012 (C coding guidelines for critical systems)
- ISO/IEC 9899:2018 (C programming language, C17)
- IEC 61508-3:2010 (functional safety software requirements)
- ISO 26262-6:2018 (road vehicle functional safety at software level)
- CMSIS-DSP
- STM32CubeIDE
- Keil MDK
- MATLAB Fixed-Point Designer
- SEGGER SystemView
8 modules
1.1Cortex-M4, M7, M33 and M55 families1.232-bit SIMD and MAC instructions1.3FPv5 floating-point unit1.4Helium extension (MVE) in Armv8.1-M1.5Pipeline, cache and TCM memories1.6Buses, memory and access latency1.7Comparison with dedicated DSPs1.8Cycle budget per sample1.9Choosing a microcontroller for the application1.10Lab: cycle measurement with DWT_CYCCNT
2.1Q format and Qm.n notation2.2Dynamic range, resolution and scaling2.3Addition, multiplication and extended accumulators2.4Saturation versus modular overflow2.5Rounding and truncation of results2.6Conversion between Q15, Q31 and float2.7Quantisation noise analysis2.8Block scaling and block floating point2.9__SSAT, __QADD and __SMLAD intrinsics2.10Practical: converting a float algorithm to Q15
3.1Structure and modules of CMSIS-DSP3.2Basic and vector functions3.3FIR, biquad IIR and decimator filters3.4Real and complex FFT transforms3.5Matrix and statistical functions3.6PID controllers and Clarke/Park transforms3.7Interpolation and fast functions3.8Instances, states and memory management3.9Validation against a Python reference3.10Lab: FIR filtering with CMSIS-DSP
4.1Acquisition with ADC, timers and DMA4.2Block processing and double buffering4.3Fixed-point FIR with a 64-bit accumulator4.4Cascaded biquads in Q31 format4.5FFT and embedded spectral analysis4.6FFT windows and scaling4.7End-to-end latency4.8Interrupt and priority management4.9Integration with an RTOS4.10Workshop: spectrum analyser on STM32
5.1Profiling with counters and traces5.2Loop unrolling and alignment5.3Using intrinsics and inline assembly5.4GCC and Arm Compiler optimisations5.5Placing data in TCM and cache5.6Precision versus speed5.7Vectorisation with Helium5.8Energy consumption per operation5.9Code review according to MISRA C5.10Practical: optimising a biquad filter
6.1Fixed-point FOC motor control6.2Simplified Kalman filters6.3Inertial sensor processing6.4Audio event detection6.5Electrical power and energy measurement6.6Tone detection with Goertzel6.7Lightweight inference with CMSIS-NN6.8Sensor calibration and compensation6.9Functional safety requirements6.10Case study: FOC control with Park transforms
7.1Modelling in MATLAB and Python7.2Test vector generation7.3Bit-exact comparison with the model7.4Error metrics: SNR and maximum error7.5Unit testing with Unity7.6Simulation in QEMU and Arm FVP7.7On-board testing with hardware-in-the-loop7.8Continuous integration for DSP firmware7.9Documentation of numerical precision7.10Lab: bit-exact verification of an FFT
8.1Algorithm selection and requirements8.2Floating-point reference model8.3Fixed-point conversion and analysis8.4Implementation with CMSIS-DSP8.5Code optimisation and profiling8.6Numerical and on-board verification8.7Performance and power report8.8Firmware documentation8.9Report and presentation8.10Final project: final review with your tutor
How you'll learn
The programme is delivered 100% online on the SEIUM campus, with downloadable material, recorded classes and an assigned technical tutor. There are no fixed timetables: you progress at your own pace within the intake, so you can combine it with your job.
Each module combines theory, guided reading of the original standard and applied exercises. The working software is CMSIS-DSP, STM32CubeIDE, Keil MDK, MATLAB Fixed-Point Designer and SEGGER SystemView, in free, academic or evaluation versions. Testing is studied through real procedures: cycle measurement on Cortex-M boards, bit-exact verification against reference models and energy consumption profiling. Assessment is continuous, module by module, plus the final project.
Standards covered: ISO/IEC TR 18037:2008 (Embedded C), IEEE 754-2019, MISRA C:2012, ISO/IEC 9899:2018, IEC 61508-3:2010 and ISO 26262-6:2018.
Build it end to end
Your final project follows the real engineering workflow, step by step, reviewed by your tutor.
Where this takes you
Requirements
- Prior technical training or professional experience in the sector. No university degree is required.
- An internet connection and a computer capable of running the programme software.
- English sufficient to read technical standards.
Ready to start?
Send your application today. Our admissions team replies within 72 hours with your study plan and funding options.
Frequently asked questions
The programme totals 800 hours over 6–8 months. You set your own pace within each intake, and your tutor helps you plan the workload around your job.
You work with CMSIS-DSP, STM32CubeIDE, Keil MDK, MATLAB Fixed-Point Designer and SEGGER SystemView, using free, academic or evaluation versions. Your tutor indicates the free alternative wherever one exists.
A SEIUM Institute diploma, awarded on passing the continuous assessment and the final project. It is SEIUM's own qualification, not an official state degree; its recognition depends on the programme completed and the regulations of each country.
Yes. Modules passed are recognised in a higher programme in the same area (postgraduate diploma or master's). Ask about the recognition policy when you enrol.
Prior technical training or professional experience in the sector (no university degree required), a computer able to run the programme software and English sufficient to read technical standards.
Start dates are set by SEIUM's faculty for each intake. Our admissions team will confirm the next available date when you apply.
Related programmes
Postgraduate Diploma in PdM Deployment and ROI in the Factory
800-hour online Postgraduate Diploma in PdM Deployment and ROI in the Factory. 8 modules covering ISO 55001, EN 13306 and MATLAB Predictive Maintenance Toolbox. Dedicated tutor…
Postgraduate Diploma in ISO 13485, QMS and Validation
Online Postgraduate Diploma of 800 h in ISO 13485, QMS and Validation. 8 modules covering ISO 13485:2016, Regulation (EU) 2017/745 and Greenlight Guru. Assigned tutor and…
Postgraduate Diploma in Key Management and Cryptography in Devices
Online 800-hour Postgraduate Diploma in Key Management and Cryptography in Devices. 8 modules covering NIST SP 800-57 Part 1, FIPS 140-3 and OpenSSL. Assigned tutor and…
More in Electronics, Embedded Systems & Telecom
All Electronics, Embedded Systems & Telecom programmes → · How to apply · Fees & financing · Scholarships