AML-01 - DSP Fundamentals using Python - 3 Days - Enroll Now This course provides a rigorous, unified foundation in Digital Signal Processing (DSP) theory while simultaneously building a professional Python based prototyping and analysis workflow. It delivers a tightly sequenced progression from first principles to production ready Python tooling. Beginning with the mathematics of discrete time signals, the course progresses through frequency domain analysis, filter design, multirate systems, and adaptive filtering. Every theoretical concept is immediately expressed and validated in Python using NumPy, SciPy, and Matplotlib, giving participants a practical toolkit they can apply the day they return from training. Course Content: 1. Course Overview, Learning Objectives & Track Program Introduction 2. Python Scientific Computing Stack: NumPy, SciPy, Matplotlib, Jupyter 3. Arrays, Vectorization, and Numerical Precision in NumPy 4. Analog vs. Digital Signals: Representation and Characterization 5. Sampling Theory: Nyquist Criterion, Aliasing, and Anti Aliasing Filters 6. Quantization: Fixed Point Representation, Bit Depth, and Dynamic Range 7. Introduction to the Frequency Domain: Continuous vs. Discrete Spectra 8. The Discrete Fourier Transform (DFT): Mathematics, Properties, and Interpretation 9. Spectral Leakage and Windowing Functions: Rectangular, Hann, Hamming, Blackman, Kaiser 10. The Fast Fourier Transform (FFT): Cooley Tukey Algorithm, Radix 2, and Complexity 11. Inverse FFT (IFFT) and Round Trip Fidelity — normalization conventions 12. Short Time Fourier Transform (STFT) and Spectrograms 13. Power Spectral Density (PSD) Estimation: Periodogram and Welch Methods 14. ADC / DAC Performance Metrics: SNR, SFDR, THD, and ENOB— calculation and interpretation 15. Autocorrelation and Cross Correlation: Theory and Python Implementation 16. Coherence and Phase Analysis Between Two Signals 17. Handling Real World Data: Loading, Conditioning, and Resampling with Pandas and SciPy 18. Filter Fundamentals: Magnitude Response, Phase Response, Group Delay, and Specifications 19. FIR Filter Theory: Z Transform, Difference Equation, Linear Phase, and Symmetric Coefficients 20. Window Based FIR Design: Hamming, Hanning, Blackman, and Kaiser Windows 21. Parks McClellan / Equiripple FIR Design: Remez Exchange Algorithm 22. Frequency Sampling and Least Squares FIR Methods 23. IIR Filter Structures: Direct Form I & II, Transposed Forms 24. Bilinear Transform and Pre Warping for Analogue to Digital Prototype Conversion 25. Classical Analogue Prototypes: Butterworth, Chebyshev I & II, Elliptic, Bessel 26. Cascaded Second Order Sections (SOS / Biquad): Design and Stability 27. IIR Stability, Limit Cycles, and Fixed Point Overflow Concerns 28. Fixed Point Arithmetic and Coefficient Quantization Effects in FIR and IIR Filters 29. Introduction to Multirate Signal Processing: Why Change Sample Rate? 30 Decimation: Noble Identity, Polyphase Decomposition, and Efficient Implementation 31. Interpolation: Upsampling, Filtering, and Imaging 32. Polyphase Filter Banks: Analysis and Synthesis 33. Cascaded Integrator Comb (CIC) Filters: Architecture, Droop, and Compensation 34. LMS Adaptive Filtering: Algorithm Derivation, Convergence, and Step Size Selection 35. RLS Adaptive Filtering: Convergence Speed vs. Computational Cost 36. Applications of Adaptive Filtering: Noise Cancellation, Echo Cancellation, and Channel Equalization 37. Fixed Point Considerations in Adaptive Algorithms 38. Discrete Cosine Transform (DCT): Definition, Fast DCT Algorithm, and Applications in Compression 39. Walsh Hadamard Transform (WHT): Fast Algorithm and Spread Spectrum Applications 40. Wavelet Transforms: Continuous vs. Discrete (DWT), Filter Bank Interpretation 41. DWT Signal Denoising: Hard and Soft Thresholding 42. Python as a Golden Reference Model for FPGA DSP: Design Philosophy and Workflow 43. Generating Fixed Point Test Vectors from Python Models 44. Introduction to cocotb: Python HDL Co-Simulation Architecture (Conceptual Overview) 45. Packaging and Documenting a Python DSP Analysis Library Prerequisites: - Undergraduate mathematics: complex numbers, algebra, and basic calculus (derivatives and integrals) - Basic programming experience in any language (Python, C, MATLAB, or similar) - Fundamental understanding of binary number representation Recommended: - Prior exposure to Python or a similar scripting language will accelerate lab work but is not required — Day 1 includes a Python environment setup module - Familiarity with signals and systems concepts (continuous time or discrete time) is advantageous but not assumed Tools Required: - Python 3.11 or later - Matplotlib - Jupyter Notebook / JupyterLab - Pandas - MATLAB (optional) - Signal Processing Toolbox (optional) Course Code: AML-01. FA_DSP. - 2026-08-14
external_document
- Resource Type
- Developer Training > Instructor Led Courses
- Source Name
- docebo