Processeurs configurables et traitement numérique des signaux

Slides:



Advertisements
Présentations similaires
Semaine 5 Couche Liaison de données Cours préparé par Marc Aubé
Advertisements

LES NOMBRES PREMIERS ET COMPOSÉS
[number 1-100].
1. Résumé 2 Présentation du créateur 3 Présentation du projet 4.
Analyse temps-fréquence
Numérisation du signal principes
LIRMM 1 Journée Deuxièmes années Département Microélectronique LIRMM.
PRINCIPE SIMPLIFIE DE LA COMPRESSION MP3
1 Jean-Paul Stromboni, mars 2005, Révision des cinq premières séances S.S.I. Jean-Paul Stromboni, mars 2005, ESSI1 Elève : ______________________ groupe.
Cours 5 – Comment bien échantillonner le signal audio
Comment décimer les sons numériques
Calcul de la composition fréquentielle du signal audio
1 Jean-Paul Stromboni, mars 2005, Révision des cinq premières séances S.S.I. Jean-Paul Stromboni, mars 2005, ESSI1 Elève : ______________________ groupe.
Du signal continu au numérique
Mesures dans le domaine fréquentiel
Performances 1 Évolution : Performance. Performances 2 Évolution : Mémoire.
Objectifs Nous allons concevoir une mise en œuvre contenant un noyau de jeu d’instructions. Nous verrons comment l’architecture de jeu d’instructions.
Séries de Fourier Tout signal périodique (T) de puissance finie peut être décomposé en une somme de sinus et de cosinus. An=0 1(4/) 1+ 3 (4/3)
Auto Apprentissage Le DSP
La diapo suivante pour faire des algorithmes (colorier les ampoules …à varier pour éviter le « copiage ») et dénombrer (Entoure dans la bande numérique.
Améliorer les performances du chiffrage à flot SYND
Mr: Lamloum Med LES NOMBRES PREMIERS ET COMPOSÉS Mr: Lamloum Med.
Les requêtes La Requête est une méthode pour afficher les enregistrements qui répondent à des conditions spécifiques. La requête est donc un filtre.
Application des algorithmes génétiques
le profil UML en temps réel MARTE
Gestion des Périphériques
Chapitre 6 : Restauration d’images
Analyse fréquentielle
1.2 COMPOSANTES DES VECTEURS
LES NOMBRES PREMIERS ET COMPOSÉS
Optimisation et parallélisation de code pour processeur à instructions SIMD multimedia François Ferrand.
Transformée de Fourier discrète et transformée de Fourier rapide
Partie 1: Ondes et Particules.
1.1 LES VECTEURS GÉOMÉTRIQUES
Notre calendrier français MARS 2014
3ème partie: les filtres
Ordonnancement de tâches
CONCEPTION ET SIMULATION DE CIRCUITS ÉLECTRONIQUES
Mise en forme en Mathématiques
Elaboré par M. NUTH Sothan 1. 2 Soit x, y et z des coordonnées cartésiennes à 3 dimension. G un ensemble de points dans le plan (u, v). Déf. : On appelle.
ECOLE DES HAUTES ETUDES COMMERCIALES MARKETING FONDAMENTAL
SUJET D’ENTRAINEMENT n°1
Théorie de l'Échantillonnage
Traitement de différentes préoccupations Le 28 octobre et 4 novembre 2010.
ECOLE DES HAUTES ETUDES COMMERCIALES MARKETING FONDAMENTAL
DESIGN D’UN CODEUR- DÉCODEUR CHAOTIQUE AUTO-SYNCHRONISANT EN TEMPS RÉEL ET EN PRÉSENCE DE BRUIT Laboratoire d’Automatique et d’Informatique Industrielle-POITIERS.
CORDIC Sujets de ce thème
CALENDRIER-PLAYBOY 2020.
Institut de Recherche en Communications et Cybernétique de Nantes 1 Implémentation en précision finie modélisation et recherche de réalisations optimales.
1. Présentation générale du système
Processeurs et chemins des données
DU TRAITEMENT DU SIGNAL
TNS et Analyse Spectrale
INF3500 : Conception et implémentation de systèmes numériques Pierre Langlois Vue d’ensemble des systèmes.
INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel Processeurs sous-RISC et application aux réseaux Quand.
Les Chiffres Prêts?
Chapitre 3 :Algèbre de Boole
INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel Langages de description architecturale.
Le processeur Xtensa de Tensilica: paramétrage et extensibilité
SoundEngine Un serveur d ’effets sonore en temps réel Juillerat Nicolas.
Partie II: Temps et évolution Energie et mouvements des particules
INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel Processeurs configurables et traitement d’images et de.
Multiprécision.
INF8505: processeurs embarqués configurables
Les systèmes mono-puce
L’architecture du processeur Xtensa de Tensilica
APPLICATIONS Convertisseur ΣΔ.
Progression - Quelques rappels
INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel ASIP Design and Synthesis for Non Linear Filtering in.
Transcription de la présentation:

Processeurs configurables et traitement numérique des signaux INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Survol de la présentation Introduction Principes de base du traitement numérique des signaux vue du système, numérisation, filtres à une dimension, transformée de Fourier rapide Besoins pour un processeur à DSP spécialisé temps réel besoin en flot de données et interfaces mémoires besoins en calculs Quelques exemples de processeurs spécialisés DSP5600x, DSP3210, Tensilica Diamond 330HiFi, Tensilica Diamond 545CK Résumé, conclusion, références INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Pourquoi parler de traitement numérique des signaux en INF8505? Le traitement numérique des signaux (Digital Signal Processing – DSP) inclut des opérations fondamentales dans une vaste gamme d’applications, surtout dans les communications. Le traitement numérique des signaux nécessite des opérations arithmétiques et des accès aux données très particuliers. Les processus de traitement des signaux sont souvent l’étape déterminante dans un système de communications. L’ajout d’instructions spécialisées pour le traitement numérique des signaux à un processeur configurable est une stratégie pertinente afin: d’augmenter le débit de traitement; et/ou, d’améliorer l’efficacité énergétique. INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Applications DSP et complexité d’algorithmes INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel P. Lapsley et al., DSP Processor Fundamentals, IEEE Press, 1997.

Survol de la présentation Introduction Principes de base du traitement numérique des signaux vue du système, numérisation, filtres à une dimension, transformée de Fourier rapide Besoins pour un processeur à DSP spécialisé temps réel besoin en flot de données et interfaces mémoires besoins en calculs Quelques exemples de processeurs spécialisés DSP5600x, DSP3210, Tensilica Diamond 330HiFi, Tensilica Diamond 545CK Résumé, conclusion, références INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Modèle de système de traitement numérique du signal INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Numérisation (1) Les signaux naturels sont continus dans le temps et en amplitude. Pour numériser un signal naturel, on doit: l’échantillonner, c’est-à-dire le mesurer en un instant ou un lieu précis; et, en quantifier l’amplitude, c’est-à-dire lui associer une valeur discrète parmi un ensemble de valeurs. Pour pouvoir reconstruire parfaitement un signal de largeur de bande W, la fréquence d’échantillonnage fs doit respecter le critère de Nyquist: fs > 2W. Plus il y a d’étages de quantification, plus la représentation est fidèle. INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Numérisation(2) Par exemple, pour les sons, on fait un échantillonnage dans le temps à intervalles réguliers et une quantification en amplitude. CD audio: fs = 44100 Hz, 65536 niveaux d’intensité. INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Filtres numériques (1) Un signal périodique peut être exprimé par la somme de plusieurs composantes fréquentielles d’amplitudes et de phases spécifiques. Un filtre amplifie (ou atténue) et déphase ces différentes composantes selon leur fréquence. Pour un filtre à réponse impulsionnelle finie, l’équation de sortie correspond à la convolution du signal d’entrée du filtre x et des coefficients du filtre b: INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Filtres numériques (2) Structure d’un filtre numérique à réponse impulsionnelle finie d’ordre M (M + 1 coefficients). INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Filtres numériques (3) La réponse en fréquence dépend des coefficients du filtre. Il existe des méthodes analytiques pour obtenir les coefficients en fonction de la réponse en fréquence désirée. INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Filtre numériques (4) Exemple d’effet d’un filtre. INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Transformée de Fourier discrète (1) Tout signal périodique peut être représenté sous la forme d’une somme pondérée de sinus et de cosinus de fréquences harmoniques à la fréquence fondamentale du signal. Dans le domaine continu, pour un signal x(t) avec période T, x(t) = x(t + T), on a : INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Transformée de Fourier discrète (2) Soit un signal discret x(n) avec période N, x(n) = x(n + N). On cherche les coefficients X(k) de la série de Fourier discrète de x(n). Ces coefficients sont en général complexes, c’est à dire qu’ils ont une grandeur et une phase. On observe une relation entre les coefficients X(k) du domaine discret et les coefficients cn du domaine continu. On a, avec  = 2/N : INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Transformée de Fourier discrète (3) On observe que : les facteurs WNkn sont des nombres complexes; dans le cas le plus général, les x(n) sont aussi des nombres complexes; pour calculer un seul coefficient X(k), il faut N multiplications complexes et N  1 additions complexes; pour calculer les N coefficients X(k), il faut N  N = N2 multiplications complexes (on néglige la complexité des additions); (a + jb)  (c + jd) = (ac – bd) + j(bc + ad), donc 4 multiplications réelles par multiplication complexe; donc il faut 4  N2 multiplications réelles (et « beaucoup » d’additions réelles) pour calculer la TFD; c’est un problème d’ordre O(N2), donc qui devient très coûteux quand N est grand … il faut faire mieux! INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Transformée de Fourier discrète (4): transformée de Fourier rapide (FFT) L’algorithme FFT (Fast Fourier Transform) est en général attribué à Cooley et Tukey1. L’algorithme exploite la redondance inhérente dans les calculs de la transformée de Fourier discrète. En divisant successivement le problème par 2, on obtient un algorithme de complexité O(N  log2N). 1James W. Cooley and John W. Tukey, "An algorithm for the machine calculation of complex Fourier series," Math. Comput. 19, 297–301 (1965) INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Transformée de Fourier discrète (5): transformée de Fourier rapide (FFT) INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel L.C. Ludeman, Fundamentals of DSP, Wiley, 1986.

Survol de la présentation Introduction Principes de base du traitement numérique des signaux vue du système, numérisation, filtres à une dimension, transformée de Fourier rapide Besoins pour un processeur à DSP spécialisé temps réel besoin en flot de données et interfaces mémoires besoins en calculs Quelques exemples de processeurs spécialisés DSP5600x, DSP3210, Tensilica Diamond 330HiFi, Tensilica Diamond 545CK Résumé, conclusion, références INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Besoins en calculs (1): chemin des données de base INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Besoins en calculs (2): chemin des données amélioré INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Besoins pour un processeur à DSP (1) instructions arithmétiques spéciales : multiplicationaccumulation (MAC  multiply accumulate); registres pour résultats intermédiaires ‘très larges’; décalage rapide; traitement des nombres complexes; extensions SIMD; la division est rarement utilisée; l’utilisation d’unités à virgule flottante est discutable. structures de contrôle spécialisées : accès mémoire suivent en général un ordre rigide et prévisible; adressage modulo; adressage à bits inversés pour la FFT; exécution de boucles à faible coût; INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Besoins pour un processeur à DSP (2) adressage modulo P. Lapsley et al., DSP Processor Fundamentals, IEEE Press, 1997. INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Survol de la présentation Introduction Principes de base du traitement numérique des signaux vue du système, numérisation, filtres à une dimension, transformée de Fourier rapide Besoins pour un processeur à DSP spécialisé temps réel besoin en flot de données et interfaces mémoires besoins en calculs Quelques exemples de processeurs spécialisés DSP5600x, DSP3210, Tensilica Diamond 330HiFi, Tensilica Diamond 545CK Résumé, conclusion, références INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Chemin des données, Motorola DSP5600x (virgule fixe) On observe: multiplicateur à un cycle; la possibilité de combiner la multiplication et l’accumulation; la grande largeur de l’unité arithmétique et logique; la grande largeur des deux accumulateurs A et B; décaleurs et limiteurs; Problème spécifiques considérés : échelonnage et arrondi; et, arithmétique à débordement ou à saturation. P. Lapsley et al., DSP Processor Fundamentals, IEEE Press, 1997. INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Processeur DSP à virgule flottante La plupart des applications de traitement numérique du signal ne nécessitent pas la précision offerte par l’arithmétique à virgule flottante. Pourtant, certains processeurs à DSP offrent cette option. À part les opérations arithmétiques de base, leur jeu d’instructions peut inclure par exemple: support pour la représentation en virgule flottante par blocs; estimation de la réciproque (x-1) et de la réciproque de la racine carrée (x-2), pouvant servir de graine dans un algorithme de calcul itératif; conversion au format IEEE 754; et, conversion entre les format à virgule fixe et flottante. INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Chemin des données, AT&T DSP3210 (virgule flottante) P. Lapsley et al., DSP Processor Fundamentals, IEEE Press, 1997. INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Processeur BlackFin (1) INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel W.-S. Gan et S.M. Kuo, Embedded signal processing with the micro signal architecture, IEEE Press, 2007.

Processeur BlackFin (2) Huit registres de 32 bits. Deux multiplicateurs de 16 bits. Deux accumulateurs de 40 bits. Deux ALUs de 40 bits. Quatre ALUs-vidéo de 8 bits. Un décalleur à baril de 40 bits. INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Tensilica Diamond 330HiFi audio DSP core (1) Tensilica offre une suite de processeur configurables configurés (!) pour des applications spécifiques. Le 330HiFi est ‘optimisé’ pour le traitement audio. Ajout de 300 instructions spécialisées et de 2 blocs de registres. Groupes d’instructions: 1. multiplication-accumulation (simple ou double, avec saturation, etc.) 2. addition-soustraction avec décalages; 3. encodage et décodage de Huffman; 4. arrondi et troncation 5. ALU SIMD à 2 voies INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel

Tensilica Diamond 330HiFi audio DSP core (2) Format des instructions: INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel S. Leibson, « Designing SOCs with configured cores », © Elsevier, 2006

Tensilica Diamond 330HiFi audio DSP core (3) INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel S. Leibson, « Designing SOCs with configured cores », © Elsevier, 2006

Tensilica Diamond 545CK DSP core (1) Superscalaire à 3 voies. Bloc de 16 registres vectoriels de 160 bits Unité de traitement vectorielle à 20 bits. Huit unités MAC. Décodage Viterbi. VLIW à trois voies. Filtrage réel ou complexe, en bloc ou en flux. Filtrage adaptif. FFT à 256 points Addition de vecteurs, produit intérieur, etc. INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel S. Leibson, « Designing SOCs with configured cores », © Elsevier, 2006

Tensilica Diamond 545CK DSP core (2) INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel S. Leibson, « Designing SOCs with configured cores », © Elsevier, 2006

Tensilica Diamond 545CK DSP core (3) Format des instructions: INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel S. Leibson, « Designing SOCs with configured cores », © Elsevier, 2006

Quelques références A.V. Oppenheim, R.W. Schafer et J.R. Buck (1999). Discrete-time signal processing, Prentice-Hall, 1999. ISBN 0-13-754920-2. Plusieurs excellents articles sur wikipedia.org, à partir de « digital signal processing ». INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel