DSP on ARM Processors
Introduction
This repository contains the code for the "DSP on ARM Processors" workshop. The structure of the repository loosely follows the Udemy course "DSP From the Ground Up on ARM Processors" by Israel Gbati with BHM Engineering Academy. While the course serves as an excellent introduction to DSP on ARM processors, I found some of the lectures too basic for someone already familiar with DSP. Therefore, I've supplemented the course material with my own notes and made significant changes to some of the code.
Table of Contents
Section | Title | Content | Project Folders |
---|---|---|---|
1 | Setting Up | Downloading Documentations, Installing STM32CubeIDE, Getting the required packages, Blinking an LED | 0_test |
2 | Getting Started | Floating Point Unit (FPU), Serial Wire Viewer (SWV), UART Driver, Intro to CMSIS-DSP Library | 1_Plotting_Signals_with_Logic_Analyzer, 2_UART_Drive, 3_Plottting_Signals_with_SerialPlotter 4_Integrating_CMSIS-DSP |
3 | Signal Statistics and Noise | Moving Average, Moving Standard Deviation, Speeding Up the Moving Standard Deviation | 6_Signal_Mean, 7_Signal_Std_Dev, 8_Signal_Std_Dev_Fast |
4 | Quantization and Basic Filters | Types of Filters, Filter Design Techniques, Evaluation Metrics | - |
5 | ARM Cortex-M DSP Features | Digital Signal Controller (DSC), Multiply-Accumulate (MAC), Saturation Math, Single Instruction, Multiple Data (SIMD), Barrel Shifter, Floating Point Unit (FPU), Instruction Cost, CMSIS-DSP Functions and Datatypes | - |
6 | Linear Time-Invariant Systems | LTI Systems | - |
7 | Convolution | Convolution, Convolution with CMSIS-DSP | [9_Convolution]( |