https://abload.de/img/bnamifjgifglpbyyl67pwfkevm.jpg

Dsp From Ground Up  On Arm Processors [Updated]
Last updated 9/2022
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 13.65 GB | Duration: 25h 26m

Digital Signal Processing on ARM : DFT, Filter Design, Convolution, IIR, FIR, CMSIS-DSP, Linear Systems

What you'll learn
Develop efficient DSP algorithms using MAC and SIMD instructions
Develop RealTime Digital Signal Proceesing firmware
Understand Cortex-M4, M7 DSP optimization strategies
Master the CMSIS-DSP Library
Develop and test the Convolution Kernel algorithm on ARM Processors
Perform convolution using the ARM CMSIS-DSP Library
Develop and test the Discrete Fourier Transform (DFT) algorithm on ARM Processors
Develop and test the Inverse Discrete Fourier Transform (IDFT) algorithm on ARM Processors
Develop and test the Fast Fourier Transform (FFT) algorithm on ARM Processors
Perform Fast Fourier Transform (FFT) using the CMSIS-DSP Library
Perform spectral analysis on ECG signals on ARM Processors
Develop Windowed-Sinc filters on ARM Processors
Develop Finite Impulse Response (FIR) filters on ARM Processors
Develop Infinite Impulse Response (IIR) filters on ARM Processors
Setup Finite Impulse Response (FIR) filters using the CMSIS-DSP Library
Setup Infinite Impulse Response (FIR) filters using the CMSIS-DSP Library
Build passive Low-pass and High-pass filters
Build Modified Sallen-Key filters
Build Bessel, Chebyshev and Butterworth filters
Suppress noise in signals
Give a lecture on Digital Signal Processing (DSP)

Requirements
No programming experience needed - I'll teach you everything you need to know.
You will need the STM32F411-NUCLEO Board
We shall be using the STM32 IDE which is FREE.

Description
Do you want to learn practical digital signal processing (dsp) without confusion?Here s an overview of what you re getting in this dsp on Arm processors course...Understanding the foundations of signal processing without complications:Before going on to implement practical dsp algorithms from scratch, this course teaches you the foundation of signal processing step-by-step. We shall look at key topics in signal processing including: -Signal statistics and noise -Quantization and sampling theorem -Analog filter design -Performance metrics of the Chebyshev, Butterworth, and Bessel filters -Linear systems and their properties. -Finite Impulse Response Filters (FIR) -Infinite Impulse Response Filters (IIR) -Superposition, synthesis, and decomposition. -Convolution and its properties -Discrete Fourier Transform (DFT) and IDFTDeveloping Digital Signal Processing Algorithms:We shall practically develop the signal processing algorithms we discussed in the theory class. Over here rather than use live signals we shall use some already acquired and generated signals to test our algorithms, to keep the focus on developing the algorithms and testing them, rather than signal acquisition.We shall develop the following algorithms: -Signal statistics algorithms: signal mean, signal standard deviation, signal variance -The Convolution algorithm -The Running Sum algorithm -The Discrete Fourier Transform (DFT) algorithm -The Inverse Discrete Fourier Transform (IDFT) algorithmWe shall also implement some of these algorithms using the CMSIS-DSP library and then compare the dynamic performance of our algorithm to that of the ones provided by CMSIS-DSP.Developing Drivers and Data Structures for Signal Acquisition:To be able to properly acquire signals from the external world and then apply our signal processing algorithms, we first need to develop analog-to-digital converter (ADC) drivers for acquiring the signals and appropriate data structures more storing and managing the signal. Over here we shall develop : -A bare-Metal ADC driver for acquiring the signal -A First-In-First-Out data structure for storing and managing the signal Digital Filter Design and Implementations:We shall learn about the various types of digital filters available and then go on to implement them from scratch. We shall implement: -The Moving Average Filter -The Finite Impulse Response (FIR) filter -The Infinite Impulse Response (IIR) FilterWe shall also see how to design the filter kernel of the finite impulse response filters using Matlab.Practical DSP Application on Live Signal:Over here, we shall apply all that we have learnt to process live signals from our microcontroller s ADC.This course is more than just getting the code to work. It will teach you how to  . Write Practical DSP Algorithms WITHOUT a fancy Engineering DegreeYou will be able to understand the foundations of signal processing without the hassle of complex mathematical derivations. Taken by 3000+ Students with 200+ ReviewsThis course is the fully updated version of the 1st edition of the course. The first edition has been taken by over 3000 students with over 290 reviews. Here is what what one student had to say about the course."The information covered in this course is exactly what I needed to learn for a new assignment. Both general information about DSP as well as how to implement things on the ARM Cortex M4."Here is what another student had to say:"It is exciting to see how MATLAB is used in embedded systems for signal generation and filter design. The explanation here is simple and to the point. Keeps the viewer's interest captured and avoids unnecessary details."In summary, you really have nothing to lose. Give it a try, it comes with a full money back guarantee. Hope to see you in the course.

Overview

Section 1: Setting Up

Lecture 1 Downloading CubeIDE

Lecture 2 Installing CubeIDE

Lecture 3 Getting the required documentation

Lecture 4 Getting the required package for bare-metal development

Lecture 5 Testing the project setup

Section 2: Getting Stasrted

Lecture 6 Programming : Enabling the Floating Point Unit (FPU)

Lecture 7 Programming : Plotting Signals using the Internal Logic Analyzer

Lecture 8 Programming : UART Driver - Analyzing the Documentation

Lecture 9 Programming : UART Driver - GPIO Pin Configuration

Lecture 10 Programming : UART Driver - Protocol Paramters Configuration

Lecture 11 Programming : UART Driver - Transmission Function

Lecture 12 Programming : UART Driver - Testing the Driver

Lecture 13 Programming : UART Driver - Plotting Signals

Lecture 14 Programming : Integrating the CMSIS-DSP Library

Lecture 15 Programming : Testing the CMSIS-DSP float32_t

Section 3: Signal Statistics and Noise

Lecture 16 Introduction to Signals

Lecture 17 The Signal Mean and Standard Deviation

Lecture 18 Programming : Developing the Signal Mean Algorithm

Lecture 19 Programming : Developing the Signal Variance Algortihm

Lecture 20 Programming : Developing the Signal Standard Deviation Algorithm

Lecture 21 Programming : Computing the Signal Standard Deviation using CMSIS-DSP

Section 4: Quantization and The Sampling Theorem

Lecture 22 Understanding the Sampling Theorem

Lecture 23 The Passive Low-Pass Filter

Lecture 24 The Passive High-Pass Filter

Lecture 25 The Active Filter

Lecture 26 Chebyshev, Butterworth and Bessel Filters

Section 5: ARM Cortex-M DSP Support Features

Lecture 27 Overview of Arm Cortex-M DSP Support Features

Section 6: Linear Systems and Superposition

Lecture 28 Introduction to Linear Systems

Lecture 29 Understanding Superposition

Lecture 30 Impulse and Step Decomposition

Section 7: Convolution

Lecture 31 Introduction to Convolution

Lecture 32 The Convolution Operation

Lecture 33 Examining the Output of Convolution

Lecture 34 The Convolution Sum Equation

Lecture 35 Programming : Analyzing the Input Signals of Convolution

Lecture 36 Programming : Developing the Convolution Algorithm

Lecture 37 Programming : Analyzing the Output Signal of Convolution

Lecture 38 Programming : Computing Convolution using CMSIS-DSP

Lecture 39 Programming : Developing a SysTick Driver to Measure Dynamic Efficiency

Lecture 40 Programming : Measuring the Dynamic Performance of CMSIS-DSP (Part I)

Lecture 41 Programming : Measuring the Dynamic Performance of CMSIS-DSP (Part II)

Lecture 42 A closer look at the Delta function

Lecture 43 The First Difference and Running Sum

Lecture 44 Programming : Implementing the Running Sum Algorithm

Section 8: Discrete Fourier Transform (DFT)

Lecture 45 Introduction to Fourier Transform

Lecture 46 The Discrete Fourier Transform (DFT) Engine

Lecture 47 The Inverse Discrete Fourier Transform (IDFT)

Lecture 48 Programming : Developing the Discrete Fourier Transform (DFT) Algorithm

Lecture 49 Programming : Analyzing the ECG Signal for Inverse DFT

Lecture 50 Programming : Developing the Inverse DFT Algorithm (Part I)

Lecture 51 Programming : Developing the Inverse DFT Algorithm (Part II)

Section 9: Configuring the Clock Tree for Maximum Speed

Lecture 52 Programming : Analyzing the Documentation

Lecture 53 Programming : Listing out the Steps

Lecture 54 Programming : Implementing the Clock Config function (PartI)

Lecture 55 Programming : Implementing the Clock Config function (PartII)

Lecture 56 Programming : Testing the Clock Tree by Running Inverse DFT at 100Mhz

Section 10: Digital Filter Design

Lecture 57 Programming : Generating Signals with Matlab

Lecture 58 Programming : Combining Signals with Matlab

Lecture 59 Programming : Designing a Low-pass Filter Kernel in Matlab

Lecture 60 Programming : Designing a High-pass Filter Kernel in Matlab

Lecture 61 Programming : Analyzing Frequency Components of Signals in Matlab

Lecture 62 Programming : Designing Filters using the FDATool in Matlab

Lecture 63 Programming : Implementing a Digital Low Pass Filter on Embedded Device

Lecture 64 Programming : Implementing a Digital HighPass Filter on Embedded Device

Lecture 65 Programming : Comparing the DFT Results of the Embedded Device to Matlab

Lecture 66 Programming : Implementing a Moving Average Filter for Smoothening Noisy Signals

Section 11: Signal Processing on Live Sensor Data

Lecture 67 Programming : Developing a Bare-Metal ADC Driver- Analyzing the Documentation

Lecture 68 Programming : Developing a Bare-Metal ADC Driver- Initialization Function

Lecture 69 Programming : Developing a Bare-Metal ADC Driver- Testing the Driver

Lecture 70 Programming : Implementing a Live Sample-by-Sample FIR Filter (Part I)

Lecture 71 Programming : Implementing a Live Sample-by-Sample FIR Filter (Part II)

Section 12: Developing the First-In-First-Out (FIFO) Data Structure

Lecture 72 Programming : Implementing the Interface File

Lecture 73 Programming : Implementing the Initialization Function

Lecture 74 Programming : Implementing Fifo_Put Function

Lecture 75 Programming : Implementing the Fifo_Get Function

Lecture 76 Programming : Testing the FIFO

Section 13: Developing a Background Thread for Sampling Sensor Data

Lecture 77 Programming : Analyzing the Documentation

Lecture 78 Programming : Implementing the Intialization Function

Lecture 79 Programming : Testing the Background Thread

Section 14: Performing Digital Signal Processing on Blocks of Sensor Data

Lecture 80 Programming : Getting a Block of Sensor Data into the FIFO

Lecture 81 Programming : Reading from the FIFO

Lecture 82 Programming : Applying FIR Filters on a Block of Sensor Data

Lecture 83 Programming : Performing Convolution on a Block of Sensor Data using CMSIS-DSP

Lecture 84 Programming : Applying Moving Average Filters to a Block of Sensor Data

Section 15: -----------------START OF OLD VERSION OF THE COURSE --------------------------

Lecture 85 Introduction

Lecture 86 Updating and installing new packs

Lecture 87 Increasing System Clock Frequency

Lecture 88 Configuring the Logic Analyzer

Lecture 89 Configuring the Logic Analyzer (Part 2 )

Lecture 90 Plotting signals on the Logic Analyzer

Lecture 91 Plotting signals on the Logic Analyzer (Part 2)

Lecture 92 Configuring an FIR Low-pass filter

Lecture 93 Configuring an FIR Low-pass filter (Part II)

Lecture 94 Testing the Lowpass filter

Lecture 95 Testing the Lowpass filter (Part II)

Lecture 96 Generating a sine wave

Lecture 97 Generating a sine wave (Part 2)

Section 16: Getting Started with Real-time Digital Signal Processing

Lecture 98 Setting up the project

Lecture 99 Configuring the FIR filter

Lecture 100 Configuring the sine generator

Lecture 101 Filtering a noisy signal

Lecture 102 Plotting filter results

Lecture 103 Configuring the Real-time Kernel

Lecture 104 Creating Threads

Lecture 105 Synchronizing Threads

Section 17: Signal Statistics and Noise

Lecture 106 Nature of a signal

Lecture 107 Mean and Standard Deviation

Lecture 108 Coding : Developing the Mean algorithm (Part II)

Lecture 109 Loop Iterator

Lecture 110 Coding : Developing the Mean algorithm (Part II)

Lecture 111 Coding : Developing the Mean algorithm (Part III )

Lecture 112 Coding : Developing the Variance algorithm

Lecture 113 Coding : Computing the signal variance using CMSIS-DSP

Lecture 114 Coding : Developing the Standard Deviation algorithm

Lecture 115 Coding : Computing signal standard deviation using CMSIS-DSP

Lecture 116 Signal-to-Noise ratio

Section 18: Quantization and The Sampling Theorem

Lecture 117 Quantization

Lecture 118 Nyquist Theorem ( Sampling Theorem )

Lecture 119 The Passive Low-Pass Filter

Lecture 120 The Passive High-Pass Filter

Lecture 121 The Modified Sallen-Key Filter

Lecture 122 The Bessel, Chebyshev and Butterworth filters

Lecture 123 Comparing the performance of the Bessel, Chebyshev and Butterworth filters

Lecture 124 Information encoding : Time-domain and frequency-domain encoding

Section 19: ARM Cortex-M DSP Support Features

Lecture 125 From Digital Signal Processors (DSPs) to Digital Signal Controllers (DSCs)

Lecture 126 Features of Digital Signal Controllers

Lecture 127 Overview of the Floating Point Unit (FPU)

Lecture 128 Overview of Cortex-M SIMD Capabilities

Lecture 129 Overview of Cortex-M MAC Capabilities

Lecture 130 Overview of CMSIS-DSP

Lecture 131 Data Types

Section 20: Linear Systems and Superposition

Lecture 132 Signal naming conventions

Lecture 133 System Homogeneity

Lecture 134 System Additivity

Lecture 135 System Shift Invariance

Lecture 136 Synthesis and Decomposition

Lecture 137 Impulse Decomposition

Lecture 138 Step Decomposition

Section 21: Convolution

Lecture 139 Introduction to Convolution

Lecture 140 The Delta Function and Impulse Response

Lecture 141 The Convolution Kernel

Lecture 142 The Convolution Kernel (Part II)

Lecture 143 The Output side analysis and the convolution sum equation

Lecture 144 Coding : Developing the convolution algorithm (Part I)

Lecture 145 Coding : Developing the convolution algorithm (Part II)

Lecture 146 Coding : Developing the convolution algorithm (Part III )

Lecture 147 Coding : Convolving signals using CMSIS-DSP (Part I)

Lecture 148 Coding : Convolving signals using CMSIS-DSP (Part II)

Lecture 149 Coding : Convolving signals using CMSIS-DSP (Part III)

Lecture 150 The Identity property of convolution

Lecture 151 The Running Sum and First Difference

Lecture 152 Coding : Developing the Running Sum algorithm

Lecture 153 Coding : Developing the First Difference algorithm

Section 22: Fourier Transform

Lecture 154 Introduction to Fourier Analysis

Lecture 155 Introduction to Discrete Fourier Transform

Lecture 156 DFT Basis Functions

Lecture 157 Deducing the Inverse DFT

Lecture 158 Calculating the Discrete Fourier Transform (DFT)

Lecture 159 Coding : Developing the DFT algorithm (Part I)

Lecture 160 Coding : Developing the DFT algorithm (Part II )

Lecture 161 Coding : Developing the DFT algorithm (Part III )

Lecture 162 Coding : The Inverse Discrete Fourier Transform of an ECG signal (Part I)

Lecture 163 Coding : The Inverse Discrete Fourier Transform of an ECG signal (Part II)

Lecture 164 Coding : The Inverse Discrete Fourier Transform of an ECG signal (Part IIII)

Lecture 165 Coding : The Inverse Discrete Fourier Transform of an ECG signal (Part IV)

Lecture 166 Symmetry between Time domain and frequency domain -Duality

Lecture 167 Polar Notation

Lecture 168 Coding : Rectangular to Polar conversion

Lecture 169 Coding : Polar to Rectangular conversion

Lecture 170 Introduction to Spectral Analysis

Lecture 171 The Frequency Response

Lecture 172 The Complex Number System

Lecture 173 Polar Representation of Complex Numbers

Lecture 174 Euler's Relation

Lecture 175 Representation of Sinusoids

Lecture 176 Representing Systems

Lecture 177 Introduction to Complex Fourier Transform

Lecture 178 Mathematical Equivalence

Lecture 179 The Complex DFT Equation

Lecture 180 Comparing Real DFT and Complex DFT

Section 23: Fast Fourier Transform (FFT)

Lecture 181 An Overview of how FFT works.

Lecture 182 Understanding the complexity of calculating DFT directly

Lecture 183 How the Decimation -in-Time FFT Algorithm works

Section 24: Digital Filter Design

Lecture 184 Introduction to Digital Filters

Lecture 185 The Filter Kernel

Lecture 186 The Impulse,Step and Frequency response

Lecture 187 Understanding the Logarithmic scale and decibels

Lecture 188 Information representations of a signal

Lecture 189 Time domain parameters

Lecture 190 Frequency domain parameters

Lecture 191 Designing digital filters using the spectral inversion method

Lecture 192 Designing digital filters using the spectral reversal method

Lecture 193 Classification of digital filters

Section 25: Designing Finite Impulse Response (FIR) Filters

Lecture 194 The Moving Average Filter

Lecture 195 Coding : Developing the Moving Average filter algorithm (Part I)

Lecture 196 Coding : Developing the Moving Average filter algorithm (art II)

Lecture 197 The Multiple Pass Moving Average Filter

Lecture 198 The Recursive Moving Average Filter

Lecture 199 Coding : Developing the Recursive Moving Average filter algorithm (Part I)

Section 26: Designing Infinite Impulse Response (IIR) Filters

Lecture 200 Introduction to Recursive Filters

Lecture 201 The Recursion Equation

Lecture 202 The Single-Pole Recursive Filter

Lecture 203 Digital Chebyshev Filters

Section 27: Designing Windowed-Sinc Filters

Lecture 204 Introduction to Windowed-Sinc Filters

Lecture 205 The Sinc Function and the Truncated Sinc Filter

Lecture 206 The Blackman window

Lecture 207 The Hamming and Blackman window equations

Lecture 208 Designing the Windowed Sinc filter

Section 28: FFT Convolution

Lecture 209 Understanding how the Overlap-Add method works

Lecture 210 Understanding how FFT-Convolution works

Lecture 211 Understanding fractional representation

Lecture 212 Introduction to CMSIS-RTOS

Lecture 213 Thread Management APIs

Lecture 214 Coding : Thread Creation (PART I)

Lecture 215 Coding : Thread Creation (PART II)

Lecture 216 osTime Management

Lecture 217 Setting Up Virtual Timers

Lecture 218 Creating Periodic Threads

Lecture 219 What is FreeRTOS ?

Lecture 220 Features of FreeRTOS

Lecture 221 FreeRTOS Variable Names

Lecture 222 FreeRTOS Function Names

Lecture 223 The Task Function

Lecture 224 Creating a Task

Lecture 225 Coding : Task Creation

Lecture 226 Coding : Task Priorities

Lecture 227 Creating efficient delays with vTaskDelay( )

Section 29: DSP Instructions on the ARM Cortex-M

Lecture 228 Getting familiar with some useful SIMD instructions

Lecture 229 Getting familiar with some useful SIMD instructions( Part I)

Lecture 230 Overview of 32-bit DSP Arithmetic Instructions

Lecture 231 Overview of 32-bit Arithmetic Instructions (Part II )

Lecture 232 Overview of 16-bit Arithmetic Instructions

Lecture 233 Overview of 8-bit Arithmetic Instructions

Lecture 234 Overview of Floating Point Instructions

Section 30: Cortex-M4, M7 DSP Optimization Strategies

Lecture 235 Optimization strategies (Part I )

Lecture 236 Optimization strategies (Part II )

Section 31: Setting Up

Lecture 237 Overview of the STM32F4-DISCOVERY Board

Lecture 238 Overview of the STM32F4- NUCLEO Board

Lecture 239 Downloading Keil uVision 5

Lecture 240 Installing Keil uVision 5

Lecture 241 Overview of Keil uVision 5

Lecture 242 Changing the Compiler

Lecture 243 Setting Up STM32CubeMX

Lecture 244 Overview of STM32CubeMX

Lecture 245 Overview of STM32CubeMX (continued)

Lecture 246 Checking for Updates and Firmware

Lecture 247 Overview of Peripheral Configuration

Lecture 248 CubeMX Input/Output project

Lecture 249 Clock Tree configuration

Lecture 250 The Configuration Tab

Section 32: Setting Up Matlab

Lecture 251 Downloading Matlab

Lecture 252 Installing Matlab

Lecture 253 Overview of Matlab

Lecture 254 Coding : Writing to a file

Lecture 255 Coding : Reading from a file

Section 33: Closing Remarks

Lecture 256 Closing Remarks

If you are an experienced embedded developer and want to learn how to professionally develop embedded applications for ARM processors, then take this course.,If you are an absolute beginner to embedded systems, then take this course.

Код:
https://anonymz.com/?https://www.udemy.com/course/arm-cortex-dsp/

https://abload.de/img/dspfromgrounduponarmpwxc3k.jpg

Код:
https://rapidgator.net/file/964f632de2a6d28cada8abc902ed86ea/DSP_From_Ground_Up _on_ARM_Processors_UPDATED.part1.rar
https://rapidgator.net/file/a79d6ace984fd1a3f9de79bd85a1ef2e/DSP_From_Ground_Up _on_ARM_Processors_UPDATED.part2.rar
https://rapidgator.net/file/a9f531e3f0bf6801622fd02153b9f324/DSP_From_Ground_Up _on_ARM_Processors_UPDATED.part3.rar
Код:
https://nitroflare.com/view/6925A46F54611D7/DSP_From_Ground_Up%E2%84%A2_on_ARM_Processors_UPDATED.part1.rar
https://nitroflare.com/view/E9367C35F5054C4/DSP_From_Ground_Up%E2%84%A2_on_ARM_Processors_UPDATED.part2.rar
https://nitroflare.com/view/BE8F3F8E91B8B31/DSP_From_Ground_Up%E2%84%A2_on_ARM_Processors_UPDATED.part3.rar