Your SlideShare is downloading. ×
Chap1 dsp
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Chap1 dsp

2,744

Published on

PPROPOSE PAR Mr.Abdelhamid Helali

PPROPOSE PAR Mr.Abdelhamid Helali

Published in: Education
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,744
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
150
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Chapitre 1Généralités sur l’architecture des DSPs
  • 2. Traitement numérique du signal Filtre anti- Échantillonnage + Traitement repliement Conversion Blocage + Filtrage Conversion De quelles solutions dispose-t-on pour effectuer ce travail Quelle est la spécificité d’un processeur DSP 3
  • 3. Traitement numérique du signalSignal original grandeur physique Signal traité Capteur Signal numérique Adaptation du signal G d’entrée (gain+démodulation) MEM Filtre anti- repliement Quantification DSP Filtre de CAN CNA E/S lissage Échantillonnage fs 4
  • 4. Profils d’utilisation du DSP Embarqué  Haute performance  Faible coût unitaire  Puissance : Calcul intensif  Faible consommation : part importante de la  Parallélisme consommation pour la  Multiplication des mémoire unités de calcul internes  Architecture limitée au  Interfaces multi-DSP strict nécessaire  Interface avec un  Temps réel ordinateur hôte 5
  • 5. Applications des DSP Communications  Image / vidéo  Filaire (xDSL, câble)  Compression/Codage  Sans fil  Composition (cellulaires, télévision  Traitement numérique, radio numérique)  Modem  Cryptage  Militaire  Imagerie : Audio radar, sonar…  Mixage et effets  Cryptographie  Suppression de bruit  Guidage de missiles  Annuleur d’echo 6
  • 6. Applications des DSP Automatisation  Biomédical  Commande de  Équipements de monitoring machines  Signaux biophysiques  Contrôle de moteurs  ElectroEncéphaloGramme  Robots (EEG)  ElectroCardioGramme (ECG)  Radiographie Electronique Automobile  Instrumentation  Contrôle du moteur  Analyseurs de spectre  Assistance au freinage  Générations de fonctions  Aide à la navigation  Analyseurs de régimes  Commandes vocales transitoires 7
  • 7. Caractéristiques classiques des DSP Chemin de données organisé pour traitement du signal Jeu d’instructions spécialisé Plusieurs mémoire et plusieurs bus Modes d’adressage spécifiques Périphériques spéciaux pour le traitement du signal Augmentation du parallélisme 8
  • 8. Caractéristiques classiques des DSP Augmentation du parallélisme  Calculs  Unités de calcul en parallèle  Mémoire à accès multiples  Lecture/Écriture de plusieurs données simultanément  Pipeline  Découpage des instructions de façon à les exécuter à intervalles plus rapprochés 9
  • 9. Représentation des nombresLes DSP à virgule fixe Les données sont représentées comme étant des nombres fractionnaires à virgule fixe, (exemple -1.0 à +1.0), ou comme des entiers classiques. La représentation de ces nombres fractionnaires s’appuie sur la méthode du «complément à deux». Permet facilement l’addition binaire de nombres positifs et négatifs.Les DSP à virgule flottante Les données sont représentées en utilisant une mantisse et un exposant. La représentation de ces nombres s’effectue selon la formule suivante : n = signe mantisse 2exposant Généralement, la mantisse est un nombre fractionnaire (-1.0 à +1.0), et l’exposant est un entier indiquant la place de la virgule en base 2. 10
  • 10. Virgule fixe ou virgule flottante ?Les profiles d’application nécessitant un processeur flottant sont : Haute précision Dynamique importanteLes inconvénients du DSP flottant sont : Consommation Coût Moins performant que le DSP à virgule fixe95% des DSP sont en virgule fixe. 11
  • 11. Panorama des DSP Texas Instrument  C2000 : virgule fixe 16 bits, Contrôle.  C5000 : virgule fixe 16 bits, Faible consommation.  C6000 : virgule fixe et flottante, Hautes performances. Analog Devices  ADSP21xx : virgule fixe 16 bits.  SHARC : virgule fixe ou flottante 32 bits.  ADSPBFxx : virgule fixe 16 bits, Hautes performances.  TigerSHARC : virgule flottante 24 bits, Hautes performances. Motorola  DSP560xx, DSP563xx : virgule fixe 24 bits, Audionumérique.  DSP566xx, DSP568xx: virgule fixe 16 bits.  StarCore : virgule fixe 16 bits, Hautes performances. 12
  • 12. DSP TI (Texas Instrument) 13
  • 13. DSP TI (Texas Instrument) 3ème Génération Hybride Multi-core C64x™ DSP 1.1 GHz 2ème GénérationPerformance C6416 C6414 C6412 C6415 DM642 C6411 1ère Génération C6203 C6713 C6202 C6204 C6201 C6205 C6211 C62x/C64x/DM642 : Fixed Point C6701 C6711 C6712 C67x : Floating Point Temps 14
  • 14. Spécificités des DSP Algorithme classique de TNS : Filtre RIF N 1 y ( n) a(i) x(n i) i 0 Pour chaque a(i) x(n-i) :  Recherche de l’instruction3 accès à la  Recherche du coefficients a(i) mémoire  Recherche de la donnée x(n-i)2 accès à  Multiplication a(i) x(n-i) l’unitéde calcul  Accumulation a(i-1) x(n-i-1) + a(i) x(n-i) 15
  • 15. Spécificités des DSP Objectifs :  Réduire les accès mémoire  Augmenter les accès mémoire simultanés  Réduire le temps passé à faire des calculs Instruction MAC (multiplication-accumulation) en 1 seul cycle d’instruction 16
  • 16. Architectures Von Neuman et Harvard Von Neuman  Harvard  Un seul chemin daccès à la  Séparation des mémoires mémoire programme et données  Architecture des processeurs  Meilleure utilisation du CPU : d’usage général  Chargement du programme et (Pentium, 68000) des données en parallèle  Architecture des DSP 17
  • 17. Cache dinstructions DSP Mémoire Cache d’instructions Mémoire Instruction CPU Mémoire Cache de données Mémoire Données Cache = mémoire rapide  Contient les dernières instructions exécutées. Utile en cas de boucle  Accès aux instructions sans accès en mémoire programme.  Libère le bus pour des données. 18
  • 18. DSP améliorés Exécution parallèle  VLIW (Very Long Instruction Word) d’instructions simples  Une instruction contient plusieurs sous-instructions destinées à des unités distinctes. Architecture plus homogène  Exemples :  Se prête mieux à  TMS320C62xx l’optimisation par le  StarCore SC140 compilateur.  Superscalaire Processeurs hautes-  Réorganisation automatique des performances instructions dans le pipeline de  Bus larges, consommation façon à maximiser le parallélisme. plus élevée.  Coût élevé.  Peu utilisé dans les DSP, à cause des contraintes temps réel. 19
  • 19. SIMD SIMD = Single Instruction Multiple Data Deux types de SIMD :  Unités parallèles  Effectuent la même opération sur des données différentes  Exemple : ADSP-2116x  Partage de l’unité de traitement  Partage un mot de donnée en sous-mots  Effectue les calculs sur les sous-mots  Exemple : instructions MMX du Pentium Efficace pour des algorithmes parallèles 20
  • 20. SIMD : TigerSHARCLe TigerSHARC d’Analog Devices met en œuvre les deux types deSIMD : Instruction MAC SIMD SIMD par unités parallèles Unité de Unité de calcul n°1 calcul n°2 ALU MAC Shift ALU MAC Shift SIMD par partage de l’unité de traitement (split-MAC) 4 multiplications 16 bits 4 multiplications 16 bits au lieu de au lieu de 1 multiplication 64 bits 1 multiplication 64 bits 21
  • 21. C54x Block Diagram • 17x17 MAC Unit • Saturation and Rounding Program/Data ROM Program/Data SRAM 16K Words JTAG Test/ Hardware 128K Words Emulation • Two 40-bit ACC’sD(15-0) Control • 40-bit ALU Program/Data Buses • 40-bit Barrel Shifter Muxed GP I/OA(23-0) • Temporary MAC ALU DMA Timer Register 17 x 17 MPY 40-Bit ALU CMPS Operator Ch 0 8/16-bit Host Port • Exponent Encoder 40-Bit Adder Ch 1 Interface (HPI) • Program and Data Peripheral Bus (VITERBI) RND, SAT EXP Encoder Ch 2 Multichannel Buffered Serial Port (McBSP) Address Shifter Accumulators Ch 3 40-Bit ACC A Multichannel Buffered Generation 40-Bit Barrel Ch 4 Serial Port (McBSP) (-16, 31) 40-Bit ACC B Units Ch 5 Addressing Unit Multichannel Buffered Serial Port (McBSP) • Compare, Select 8 Auxiliary Registers PLL Clock and Store Unit 2 Addressing Units Generator • 4 Internal Bus S/W Waitstate Generator Pairs Power Management • External Interface C5416 example 22
  • 22. C54x Block Diagram 23
  • 23. DSP multicore Gravure sur la même puce de deux cœurs DSP indépendants. Communication entre les deux :  Mémoire partagée.  Interface FIFO. Shared memory two-way RAM : permet laccès simultané à la mémoire par les deux DSP Architecture du C5421 24
  • 24. DSP multicoreDSP hauteperformance.TMS320C64x+.3 C64x+ intégrésfonctionnant à1Ghz chacun. Architecture du C6474 25
  • 25. VLIW : TMS320C62x Data path  Deux ensembles d’unités de C62 CPU traitement (1 et 2) Interrupt Instruction Fetch Control Control Instruction de 256 bits Registers Instruction Dispatch  8 sous-instructions de 32 bits Instruction Decode Emulation Data Path 1 Data Path 2 Unités logique .L Register File A Register File B  Arithmétique et comparaisons A15-A0 B15-B0 Unité de décalage .S  ALU et Shifter L1 S1 M1 D1 D2 M2 S2 L2 Unités de multiplication .M + + + + + +  Multiplication + x x + Unités de données .D  Mouvement de données de/vers la mémoire 26
  • 26. Unités fonctionnellesDeux chemins de données : A et BChaque chemin contient 4 unités de traitement : (.M) : Multiplication (.L) : Opération logique et arithmétique (.S) : Branchement et manipulation binaire (.D) : Chargement et stockage des données64 registres de 32 bits (A0 à A31) et (B0 à B31)2 chemins croisés (1x et 2x) (cross path) Chemin de données A Chemin de données B Registre A0 à A31 Registre B0 à B31 .L1 .S1 .M1 .D1 .L2 .S2 .M2 .D2 Chemin croisé 27
  • 27. Paquet de Fetch et d’Exécution VELOCI TI : architecture élaborée par TI basée sur la structure VLIW (Very Long Instruction Word) Instruction : 4 octets = 32 bits PE : Paquet Exécutable : groupe d’instructions exécutables en parallèle pendant un seul cycle. PF : Paquet Fetch formé de 8 instructions. 1PF peut contenir 1 PE (si toutes les 8 instructions en //) ou 8 PE (pas d’instructions en // ). 3 étages de pipeline :  Fetch : 4 étages  Decode : 2 étages  Execute : au maximum 6 étages 28
  • 28. Pipeline Instructions segmentées en étages. Exécution entrelacée de plusieurs instructions. Augmentation de la fréquence dhorloge.Étage temps t1 t2 t3 t4 t5 t6 t7 t8 t9 Fetch F1 F2 F3 Decode D1 D2 D3 Execute E1 E2 E3 Exécution séquentielleÉtage temps t1 t2 t3 t4 t5 t6 t7 t8 t9 Fetch F1 F2 F3 F4 F5 F6 … … … Decode D1 D2 D3 D4 D5 D6 … … Execute E1 E2 E3 E4 E5 E6 … Exécution avec pipeline 29
  • 29. PipelinePG PS PW PR DP DC E1 E2 E3 E4 E5 E6 Fetch Decode Execute Étapes d’extraction du Programme (fetch, PF) PG PS PR PW Génération Transmission de Réception et Attente accès d’adresse l’adresse lecture du PF mémoire Dans le CPU (à la mémoire) (au CPU) 30

×