Hardware DSP: A guide to building DSP Circuits in FPGAs

Course 244

 Request information about bringing this course to your site.

Summary

This three day course covers implementation techniques for building DSP circuits in field programmable gate arrays (FPGAs). As the conversion rates increase for both analog to digital converters (ADCs) and digital to analog converters (DACs) the point of digitization of the analog signal gets closer to the antenna. However the resultant high data rates are often too much for a typical DSP processor and so the DSP algorithms needed to process the high data rate must be built directly in hardware. FPGAs are a cost effective choice for this task. Where ever possible, pictures, diagrams, and videos are used to illustrate the operations of DSP algorithms such as the Discrete Fourier Transform, convolution, polyphase decomposition, etc., thus providing more deeper insight to those who learn best through pictures.

Learning objectives

Upon completing the course you will be able to:

  • Understand the architectural trade-offs between size and throughput for DSP algorithms built directly in hardware
  • Apply the concepts and techniques learned in the course to real world applications in disciplines such as digital communications and sensor processing
  • Know how to use and configure the DSP IP cores provided by FPGA vendors
  • Judge which FPGA devices are best suited for their application

Target Audience

Hardware/FPGA engineers who need to build DSP circuits, software DSP engineers who need to understand hardware DSP concepts, DSP system engineers who need to understand implementation choices. The course assumes attendees have been exposed to DSP theory and concepts but now need to reduce that theory to practice. Prerequisite: Course 027: DSP - Understanding Digital Signal Processing or equivalent.

Outline

Day 1

DSP Theory Review seen Through a Hardware DSP Prism
 • Discrete Time Signals - Why sinusoids ? - Trigonometry – the mathematics of sinusoids • Discrete Time Systems – operations on signals - Convolution, Correlation • Alternate Views of Signals and Systems - Z transform, frequency domain, time domain • Number Representation - Fixed point, floating point - Quantization effects • Architecting Algorithms for parallel processing - Introduction To Systolic Array Processing - Process replication, process partitioning

Day 2

Functions needed for building DSP Systems
 • Phase calculation via the CORDIC algorithm • Digital oscillators built via Direct Digital Synthesis (DDS) • Filter structures - Single Rate - distributed arithmetic ,systolic, transposed FIR - Multi-rate - Polyphase decomposition, CIC, Farrow interpolation - Parallel filters for high data rates • Fast Fourier Transforms (FFTs) Algorithms - Cooley_Tukey -a powers of 2 transform - Winograd -a non-powers of 2 transform

Day 3

Building Systems with our Hardware DSP function
 • Channelizers • Basics of beamforming • Basic Digital Communications Processing - Up/down conversion - Waveform Modulation - Carrier Synchronization • Basic Radar Processing - Pulse Compression - Doppler - Fast Convolution