Formations MATLAB et Simulink

Traitement numérique du signal sur FPGAs

Afficher le calendrier et s'inscrire

Détails de la formation

Ce cours de 3 jours présente les fondamentaux de traitement numérique du signal (DSP) pour une implémentation sur un FPGA. L'accent sera mis sur le coût, incluant les ressources et les performances, associé à l'implémentation de diverses techniques et algorithmes de traitement du signal.

Les thèmes comprennent :

  • Introduction au matériel et à la technologie FPGA pour les applications de traitement numérique du signal
  • Arithmétique en virgule fixe
  • Techniques de graphes de flux de signal
  • Génération de code HDL pour FPGAs
  • Implémentation de la Transformée de Fourier Rapide (FFT)
  • Conception et implémentation de filtres FIR, IIR et CIC
  • Algorithme CORDIC
  • Conception et implémentation d'algorithmes adaptatifs tels que les algorithmes LMS et QR
  • Techniques de synchronisation et rétablissement du timing de communications numériques

Jour 1


Introduction to DSP FPGA Hardware

Objectif: Introduire le traitement numérique du signal et les FPGA. Comprendre l'architecture globale des FPGA et pourquoi les FPGAs ne sont adaptés qu'à l'implémentation d'algorithmes DSP.

  • De la logique discrète aux FPGAs - Un peu d'histoire !
  • Le système DSP générique
  • Examen des cœurs et processeurs DSP
  • ASICs spécialisé et semi-spécialisé
  • System-on-chip (SOC)
  • FPGA flexibilité et fonctionnalités
  • FPGAs vs DSPs programmables

Algorithme de systèmes DSP linéaires

Objectif: Revoir les concepts fondamentaux du théorème d'échantillonnage, la quantification, l'analyse de Fourier et la conception de filtre numérique.

  • Aliasing et filtres de reconstruction
  • Pas d'échantillonnage et taille de mots
  • Notation du domaine Z et analyse fondamentale
  • Filtres FIR et IIR
  • Conception et spécification de filtres FIR et IIR
  • Techniques de suréchantillonnage (sigma delta)

Technologie FPGA

Objectif: Explorer les différentes familles et architectures de FPGA Xilinx. Introduction aux FPGAs Spartan 3 et Virtex-5.

  • L'évolution de la technologie FPGA
  • Taux d'horloge, de données et pas d'échantillonnage
  • Mémoire et registre de FPGA
  • Blocs d'entrée/sortie et FPGA
  • Blocs Bits, Slices and Configurable Logic
  • Evaluation des performances de MIPs similaires
  • Familles de FPGA et sources

Eléments de FPGA pour les algorithmes DSP

Objectif: Comprendre les tranches DSP, les ressources d'horloge et la consommation d'énergie.

  • Construction de lignes de retard et de registres à décalage
  • Utilisation de la RAM (mémoire) des FPGAs
  • De série vers parallèle et de parallèle vers série
  • Multiplexeurs pour la sélection de canal
  • Additionneurs complets, circuit logique, et arbres d'additionneurs
  • Multiplieurs : Décalage et Addition ; basé sur la ROM
  • Implémentation efficace de multiplieurs

Arithmétique DSP essentielle

Objectif: Comprendre l'arithmétique en virgule fixe binaire. Associer les opérations arithmétiques au matériel FPGA Xilinx.

  • Arithmétique du complément à 2 en virgule fixe
  • Additionneurs fondamentaux et tableaux de multiplieurs
  • Division et tableaux de racines carrées...pas si facile !
  • Problèmes de taille de mot et arithmétique en virgule fixe
  • Saturation et wraparound
  • Overflow et underflow

Techniques de Signal Flow Graph (SFG)

Objectif: Revoir la représentation des algorithmes DSP en utilisant le graphe de flux de signal. Utiliser la méthode de Cut Set pour améliorer les performances temporelles. Implémenter des filtres FIR parallèles et séries.

  • Graphe de flux de signal de filtre numérique/DSP
  • Latence, retards et "anti-retards" !
  • Re-timing : Cut-set et mise à l'échelle de retard
  • Le FIR transposé
  • Pipelining et architecture multicanaux
  • Topologies SFG pour FPGAs

Jour 2


Traitement dans le domaine fréquentiel

Objectif: Discuter la théorie et l'implémentation FPGA de la Transformée de Fourier Rapide (FFT).

  • DFT, FFT et IFFT
  • Architectures FPGA pour la FFT
  • Augmentation de la taille des mots et précision pour la FFT

Traitement de signaux à taux multiples pour FPGAs

Objectif: Développer une structure polyphasée pour une implémentation efficace d'un filtre multi-taux. Utiliser le filter CIC pour l'interpolation et la décimation.

  • Sur-échantillonnage et filtres d'interpolation
  • Sous-échantillonnage et filtres de décimation
  • Arithmétique efficace pour l'implémentation FIR
  • Intégrateurs et différentiateurs
  • Filtres demi-bande, moyenne glissante et peigne
  • Filtre Cascade Integrator Comb (CIC) (Hogenauer)
  • Arithmétique efficace pour le filtrage IIR

Techniques CORDIC

Objectif: Introduire l'algorithme CORDIC pour le calcul de diverses fonctions trigonométriques.

  • Mode de rotation et mode vecteur CORDIC
  • Calcul des fonctions cosinus et sinus
  • Calcul de la norme et l'angle d'un vecteur
  • Architecture pour l'implémentation d'un FPGA

Jour 3


Algorithmes et applications DSP adaptifs

Objectif: Introduire l'algorithme LMS pour le traitement de signal adaptatif. Illustrer l'algorithme QR comme une technique de moindre carrés récursifs (RLS) et pourquoi il est particulièrement adapté pour l'implémentation sur FPGA.

  • Applications adaptatives (égalisation, beamforming)
  • Algorithmes LMS et implémentation parallèle
  • Algorithmes LMS non-canoniques
  • Algèbre linéaire : résoudre des systèmes d'équations linéaires
  • L'algorithme QR pour le traitement de signal adaptatif
  • Conditions pour le traitement QR et problèmes numériques

Communications DSP actives et FPGAs

Objectif: Revoir la modulation quadrature et la formation d'impulsions. Discuter l'implémentation d'oscillateurs numériquement contrôlés.

  • Quaternary Phase Shift Keying (QPSK)
  • Filtres de transmission/réception - Root Raised Cosinus
  • Sous-échantillonnage et sous-conversion numérique
  • Sur-conversion numérique directe
  • Etapes IF numériques (et systèmes fs/4)
  • Oscillateurs contrôles numériquement (NCO)
  • Partitionnement de la conception pour FPGAs

Problèmes de synchronisation et de timing

Objectif: Traiter la récupération des symboles de timing, la récupération de phase de porteuse, la récupération de fréquence de porteuse et la synchronisation de trame.

  • Récupération de porteuse, boucles de quadrature et Costas, PLLs
  • Rotation de phases ; Conversion de pas d'échantillonnage
  • Récupération des symboles de timing, détection de porte tôt/tard
  • Timing de boucle à retard verrouillé et synchronisation

Niveau: Avancé

Durée: 3 jours

Langues: English

Afficher le calendrier et s'inscrire