Formación en MATLAB y Simulink

Detalles del curso

Este curso de tres días revisará los fundamentos de DSP desde la perspectiva de la implementación en la estructura FPGA. Se pondrá un énfasis particular en destacar el coste, con respecto tanto a los recursos como al rendimiento, asociado a la implementación de varios algoritmos y técnicas de DSP.

Temas incluidos:

  • Introducción al hardware FPGA y a la tecnología de las aplicaciones de DSP
  • Aritmética de punto fijo de DSP
  • Técnicas de gráficas de flujo de la señal
  • Generación de código HDL para FPGA
  • Implementación de la transformada rápida de Fourier (FFT)
  • Diseño e implementación de filtros FIR, IIR y CIC
  • Algoritmo de CORDIC
  • Diseño e implementación de algoritmos adaptativos como algoritmos LMS y QR
  • Técnicas para sincronización y recuperación de tiempos de comunicación digital

Day 1 of 3


Introduction to DSP FPGA Hardware

Objective: Provide introduction to DSP and FPGA. Understand general FPGA architecture and why FPGAs are uniquely suited to the implementation of DSP algorithms.

  • From discrete logic to FPGAs -some history!
  • The generic DSP system
  • DSP cores and processors review
  • Custom and semi-custom ASICs
  • System-on-chip (SOC)
  • FPGA flexibility and functionality
  • FPGAs vs Programmable DSPs

FPGA Fundamental Concepts

Objective: Review the fundamental Concepts of FPGA-based implementations.

  • Timing and critical path issues
  • Pipelining
  • Arithmetic implementation: multiply and add
  • Parallel and serial implementations
  • FIR Filters

FPGA Technology

Objective: Explore different AMD FPGA families and architectures. 

  • The FPGA technology roadmap
  • Clocking rates, data rates, and sample rates
  • FPGA memory and registers
  • Input/output blocks and requirements
  • Bits, Slices, and Configurable Logic Blocks
  • FPGA Families 

DSP Arithmetic Essentials

Objective: Understand fixed point binary arithmetic. Map arithmetic operations to AMD FPGA hardware.

  • 2's complement fixed point arithmetic
  • Full adders and multiplier cells
  • Division and square root implementation
  • Wordlength issues and Fixed point arithmetic
  • Saturate and wraparound
  • Overflow and underflow

Signal Flow Graph (SFG) Techniques

Objective: Review the representation of DSP algorithms using a signal flow graph. Use the Cut Set method to improve timing performance. Implement parallel and serial FIR filters.

  • DSP/Digital Filter Signal Flow Graphs
  • Latency, delays, and "anti-delays"
  • Re-timing: Cut-set and delay scaling
  • The transpose FIR
  • Pipelining and multichannel architectures
  • SFG topologies for FPGAs

Digital Filtering

Objective: Explore the different filter topologies

  • Low pass, high pass, band pass, and band stop
  • FIR, IIR, Adaptive
  • Impulse Response
  • Frequency Response

Day 2 of 3


Recursive DSP Retiming (IIR and LMS)

Objective: Review the retiming of parallel DSP signal flow graph architectures with feedback loops

  • IIR
  • Adaptive LMS
  • Non-Canonical LMS

Serial Filter Implementation

Objective: Explore efficient implementation of oversampledfilters.

  • Serial filters
  • Serial-parallel filters
  • Hardware cost

Multi-Channel Filter Implementation

Objective: Develop multi-channel filters using time-sharing signal flow graphs

  • Cut set retiming
  • Delay scaling rule
  • Implementation issues
  • Extending serial filters to multiple channels

Frequency Domain Processing

Objective: Discuss the theory and FPGA implementation of the Fast Fourier Transform.

  • DFT, FFT and IFFT
  • FFT FPGA architectures
  • FFT wordlength growth and accuracy

Multirate Signal Processing for FPGAs

Objective: Develop polyphase structure for efficient implementation of multirate filters. Use CIC filter for interpolation and decimation.

  • Upsampling and interpolation filters
  • Downsampling and decimation filters
  • Efficient arithmetic for FIR implementation
  • Integrators and differentiators
  • Half-band, moving average and comb filters
  • Cascade Integrator Comb (CIC) Filters (Hogenauer)
  • Efficient arithmetic for IIR Filtering

Day 3 of 3


CORDIC Techniques

Objective: Introduce the CORDIC algorithm for calculating trigonometric, linear,  and hyperbolic functions.

  • CORDIC rotation mode and vector mode
  • Compute cosine and sine function
  • Compute vector magnitude and angle
  • Architecture for FPGA implementation

Adaptive DSP Algorithms and Applications

Objective: Introduce the LMS algorithm in adaptive signal processing. Illustrate QR algorithm as a Recursive Least Squares (RLS) technique and why it suits FPGA implementation.

  • Adaptive applications (equalization, beamforming)
  • LMS Algorithms and parallel implementation
  • Non-canonical LMS algorithms
  • Linear algebra; solving linear systems of equations
  • The QR algorithm for adaptive signal processing
  • QR processing requirements and numerical issues

Numerically Controlled Oscillators

Objective: Learn and compare different NCO architectures

  • IIR filters
  • CORDIC rotations
  • Lookup Tables
  • Evaluate spectral purity and SFDR

Timing and Synchronization Issues

Objective: Discuss symbol timing recovery, carrier phase recovery, carrier frequency recovery, and frame synchronization.

  • Carrier recovery, squaring and Costas loops, PLLs
  • Phase rotations; Sampling rate conversions
  • Symbol timing recovery, early/late gate detection
  • Delay locked loop timing and synchronization

Día 1 de 3


Introducción al hardware FPGA de DSP

Objetivo: Se ofrece una introducción a DSP y FPGA. Comprenda la arquitectura general de FPGA y por qué las FPGA son especialmente adecuadas para la implementación de algoritmos DSP.

  • Desde la lógica discreta hasta las FPGA: una breve historia
  • El sistema DSP genérico
  • Revisión de procesadores y núcleos DSP
  • ASIC personalizados y semipersonalizados
  • System-on-chip (SOC)
  • Flexibilidad y funcionalidad de FPGA
  • FPGA frente a DSP programables

Revisión de algoritmos DSP de sistemas lineales

Objetivo: Revise conceptos fundamentales del teorema de muestreo, la cuantificación, el análisis de Fourier y el diseño de filtro digital.

  • Filtros de reconstrucción y distorsión
  • Longitud de palabras y tasas de muestreo
  • Análisis fundamental y notación del dominio Z
  • Filtros IIR y FIR
  • Diseño de filtro digital y especificación
  • Técnicas de sobremuestreo (sigma delta)

Tecnología FPGA

Objetivo: Explore distintas arquitecturas y familias de FPGA Xilinx. Se ofrece una introducción a las FPGA Spartan 3 y Virtex-5.

  • Hoja de ruta de la tecnología FPGA
  • Tasas de reloj, tasas de datos y tasa de muestreo
  • Registros y memoria FPGA
  • Bloques de entrada/salida y requisitos
  • Bloques lógicos configurables, bits y slices
  • Valoraciones del rendimiento de MIP comparables
  • Fuentes y familias de FPGA

Elementos FPGA para algoritmos DSP

Objetivo: Entienda los slices DSP, los recursos de reloj y el consumo de energía.

  • Generar líneas de retraso y registros de cambio
  • Uso de RAM (memoria) en FPGA
  • En serie a paralelo y paralelo a en serie
  • Multiplexores para la selección de canal
  • Agregadores completos, lógica de soporte y árboles de agregadores
  • Multiplicadores: Cambiar y añadir; basados en ROM
  • Implementación eficiente del multiplicador

Conceptos básicos de aritmética para DSP

Objetivo: Comprenda la aritmética binaria de punto fijo. Aplique operaciones aritméticas al hardware de FPGA Xilinx.

  • Aritmética de punto fijo del complemento de 2
  • Arreglos de multiplicadores y agregadores fundamentales
  • Arreglos de división y raíz cuadrada: no es tan fácil
  • Problemas de longitud de palabra y aritmética de punto fijo
  • Saturar y envolver
  • Desbordamiento y subdesbordamiento

Técnicas de gráficas de flujo de la señal (SFG)

Objetivo: Revise la representación de los algoritmos DSP mediante la gráfica de flujo de la señal. Utilice el método Cut Set para mejorar el rendimiento de la temporización. Implemente filtros FIR paralelos y en serie.

  • Gráficas de flujo de la señal de filtro digital/DSP
  • Latencia, retardos y "antirretardos"
  • Retemporización: Escalado de cut-set y retardo
  • La transposición FIR
  • Canalización y arquitecturas multicanal
  • Topologías SFG para FPGA

Día 2 de 3


Procesamiento de dominios de frecuencia

Objetivo: Analice la teoría y la implementación de FPGA de la transformada rápida de Fourier.

  • DFT, FFT e IFFT
  • Arquitecturas de FPGA FFT
  • Crecimiento y precisión de la longitud de palabra de FFT

Procesamiento de señales multitasa para FPGA

Objetivo: Desarrolle la estructura polifásica para la implementación eficiente de los filtros multitasa. Use el filtro CIC para la interpolación y el diezmado.

  • Filtros de sobremuestreo e interpolación
  • Filtros de submuestreo y diezmado
  • Aritmética eficiente para la implementación de FIR
  • Integradores y diferenciadores
  • Filtros de media banda, de media móvil y de peine
  • Filtros (Hogenauer) de peine integrador en cascada (CIC)
  • Aritmética eficiente para el filtrado de IIR

Técnicas CORDIC

Objetivo: Se introduce el algoritmo CORDIC para el cálculo de varias funciones trigonométricas.

  • Modo de rotación y modo vectorial de CORDIC
  • Calcular la función del coseno y seno
  • Calcular la magnitud y el ángulo del vector
  • Arquitectura para la implementación de FPGA

Día 3 de 3


Algoritmos y aplicaciones adaptativas de DSP

Objetivo: Introduzca el algoritmo LMS en el procesamiento adaptativo de la señal. Se ilustra el algoritmo QR como técnica de mínimos cuadrados recursivos (RLS) y por qué es particularmente adecuado para la implementación de FPGA.

  • Aplicaciones adaptativas (compensación, conformación de haces)
  • Algoritmos LMS e implementación paralela
  • Algoritmos LMS no canónicos
  • Álgebra lineal; resolución de sistemas lineales de ecuaciones
  • El algoritmo QR para el procesamiento adaptativo de la señal
  • Requisitos para el procesamiento QR y problemas numéricos

Comunicaciones habilitadas por DSP y FPGA

Objetivo: Revise la modulación de la cuadratura y la conformación de impulsos. Analice la implementación de osciladores de control numérico.

  • Transmisión por desplazamiento de fase cuaternaria (QPSK)
  • Filtros de transmisión/recepción: coseno elevado a la raíz
  • Submuestreo y conversión digital descendente
  • Conversión digital ascendente directa
  • Etapas digitales de IF (y sistemas fs/4)
  • Osciladores de control numérico (NCO)
  • Diseñar la partición para las FPGA

Problemas de temporización y sincronización

Objetivo: Incluyen la recuperación de la temporización del símbolo, recuperación de la fase portadora, recuperación de la frecuencia portadora y sincronización de la trama.

  • Recuperación de portadora, cuadratura y bucles Costas, PLL
  • Rotaciones de fase; conversiones de tasas de muestreo
  • Recuperación de la temporización de los símbolos, detección temprana y tardía de los portales
  • Sincronización y temporización de bucle bloqueado de retraso

Nivel: Avanzado

Duración: 3 días

Idiomas: English

Vea los horarios e inscríbase