Techniques en radio logicielle (SDR)

Avec la montée en puissance des systèmes de traitement numériques (PC, DSP, micro-contrôleurs, FPGA), la démodulation logicielle des signaux radio est maintenant la méthode de choix pour obtenir les meilleurs performances à la fois en terme de sensibilité et de cout d'implémentation. Néanmoins, le fait de démoduler les signaux de manière purement logicielle entraîne des architectures radicalement différentes des structures traditionnellement utilisées en démodulation analogique (boucle de Costa, PLL, etc.).

Objectifs de la formation

Transmettre aux participants une vue d'ensemble sur les techniques les plus utilisées en radio logicielle (en anglais Software Defined Radio / SDR), pour des implémentations finales sur micro-contrôleur, DSP, FPGA ou même PC. Les méthodes seront mises en pratique via des T.P. avec Scilab (équivalent gratuit de Matlab).

Durée de la formation

Trois jours

Date et lieu de la formation

Lieu : Toulouse, date : sur demande.

Inscription

Formulaire d'inscription disponible ici.

Contenu

1 - INTRODUCTION ET PRETRAITREMENTS
Dans cette première partie, nous commencerons par essayer d'avoir une vue d'ensemble sur les composants nécessaires pour réaliser une chaîne de démodulation, puis nous étudierons les techniques de pré-traitement, dans le but d'extraire le (les) canal(aux) radio(s) utile(s).

  • Introduction : Description d'une chaîne de démodulation radio typique et présentation des différents composants nécessaires.
  • Conversion en bande de base : Notion de signal I/Q. Méthode classique (downconversion, puis suppression de l'image) et à base de filtre de Hilbert.
  • DDS (réalisation d'oscillateurs numériques) : Description et avantages / inconvénients des principales techniques : LUT, CORDIC, oscillateur harmonique. Mise en oeuvre dans un oscillateur local. Mise en oeuvre dans une PLL.
  • Filtrage canal : Techniques de synthèse de filtres avec l'outil Scilab. Filtrage multi-niveaux (multi-rate) et filtres polyphases. Filtres CIC pour les systèmes fortement sur-échantillonnés.
  • Canalisation multi-voies : Canalisation optimisée à partir de filtre polyphase et FFT (méthode de Harris)

2 - MODULATIONS / DEMODULATIONS
Dans cette partie, nous allons d'abord faire un tour d'horizon des différentes modulations numériques (formes d'onde) classiques, puis nous aborderons différentes techniques permettant la démodulation en bande de base.

  • Présentation des formes d'ondes classiques : FSK / GFSK, BPSK, QPSK / OQPSK, QAM, OFDM
  • Mise en forme des symboles : Problématique des interférences inter-symboles, notion de filtre adapté, filtres NRZ, gaussiens, filtres RC / SRRC.
  • Techniques de démodulation à faible complexité : Démodulation incohérente des modulations de phases FSK / M-PSK (discrimination polaire, ...).
  • Techniques de recouvrement de porteuse : Verrouillage initial (FFT), techniques de suivi (PLL / boucle du second ordre), détecteurs possibles (basés ou non sur la décision symbole).
  • Techniques de recouvrement d'horloge : architecture d'une boucle de correction (PLL), détecteurs : early late gate, Gardner, Mueller & Müller, interpolateurs (splines cardinales, Farrow).
  • Correction automatique de gain (AGC), impact de la position de l'AGC dans la chaîne de démodulation
  • Techniques d'égalisation de canal / de filtre : ZFE, LMS, DFE, MLSE (Viterbi / Turbo-codes)
  • Techniques d'estimation automatique du SNR

3 - QUALIFICATION D'UN DEMODULATEUR
Dans cette partie, nous allons voir comment qualifier de manière purement logicielle une chaîne de démodulation, en prenant en compte les problématiques rencontrées dans la réalité.

  • Introduction : Notions de taux d'erreur binaire (ber), taux d'erreur par trame, SNR normalisé (Eb/N0)
  • Limites théoriques : Modulations BPSK, QPSK, etc.
  • Canaux dispersifs : Effets des trajets multiples, du Doppler. Modèles de Rayleigh, Rice.
  • Autres aspects importants : Bruit d'horloge, de phase, vitesse d'accrochage des PLL, sensibilité aux canaux adjacents, blocage, etc.

4 - CODES CORRECTEURS
L'objectif ici est de vous présenter un panorama des codes correcteurs les plus utilisés et de leurs applications.

  • Codes polynomiaux (CRC, Reed-Salomon)
  • Codes convolutifs (RSC / Viterbi, Turbo-codes)
  • Codes LDPC
  • Modulations codées


Travaux pratiques

Tout au long de l'atelier l'ensemble des points abordés sera illustré par des exemples et de petits exercices avec SCILAB qui vous permettront de mettre en oeuvre directement les notions vues.