PROCESSEUR DE TRAITEMENT NUMERIQUE DU SIGNAL DIGITAL SIGNAL PROCESSOR - Département de Physique Faculté des Sciences
←
→
Transcription du contenu de la page
Si votre navigateur ne rend pas la page correctement, lisez s'il vous plaît le contenu de la page ci-dessous
PROCESSEUR DE TRAITEMENT NUMERIQUE DU SIGNAL DIGITAL SIGNAL PROCESSOR Département de Physique Faculté des Sciences Option : InfoTronique
Plan du cours Chapitre 1. INTRODUCTION ET GENERALITES SUR LES DSP Chapitre 2. ARITHMETIQUE EN PRECISION FINIE FORMAT FIXE OU FORMAT FLOTTANT Chapitre 3. ARCHITECTURE DE LA FAMILLE TMS320C54X Chapitre 4. LES PÉRIPHÉRIQUES Chapitre 5. ASSEMBLEUR Chapitre 6. MÉTHODOLOGIE ET OUTILS DE DÉVELOPPEMENT D’APPLICATION SUR DSP F.Lani Digital Signal Processor
Objectif du cours Connaître et comprendre les principes de base des DSP Connaître l’architecture interne des DSP Prérequis Arithmétique en précision finie Programmation Architecture des processeurs F.Lani Digital Signal Processor
Introduction et Généralités sur les DSP Microprocesseurs Principe d’un système de traitement de signal Architecture Organisation de la mémoire Pipeline F.Lani Digital Signal Processor
Microprocesseurs Les systèmes ordinés (Computer Systems) Les systèmes dédiés (ou embarqués) (Embedded Systems) Appareil ou instrument dont un microprocesseur contrôle le fonctionnement, en suivant un programme figé qui est adapté (dédié) à cet appareil. En général, le programme d'un système dédié est gravé dans une mémoire non volatile (ROM) et le microprocesseur exécute ce programme dès la mise sous tension de l'appareil. Î Les logiciels associés à ces systèmes sont fixés au moment du développement des appareils et y sont chargés une fois pour toutes, de façon permanente F.Lani Digital Signal Processor
Système dédié TS Applications de traitement du signal. les besoins de traitement très particuliers de ces applications ont donné lieu au développement d'un nouveau type de processeur : Le processeur de traitement du signal (Digital Signal Processor ou DSP en anglais). F.Lani Digital Signal Processor
Ordinateurs: Microprocesseurs d'usage général Fabricant et machine • Intel: Pentium • Motorola: PowerPC • Digital: Alpha Chip • LSI Logic: famille SPARC (SUN) ... Caractéristiques typiques • Bus d'adresse large permettant de gérer des Giga-octets • Système de gestion de mémoire intégré • Données sur 32 bits au moins • Coprocesseur intégré (68040, 486...) ou unité arithmétique et logique supportant les opérations point flottant (PowerPC). • Modes d'adressages sophistiqués pour supporter efficacement les langages évolués • Large surface de silicium • Difficile à fabriquer => coût élevé • Forte consommation électrique F.Lani Digital Signal Processor
Applications dédiées: Microcontrôleurs Types d'applications • Cartes de voeux musicales • Distributeur de boissons • Contrôle des paramètres de combustion d'un moteur • Contrôle d'un VCR (commande des moteurs, d'automobile programmation...) • Freins ABS • Montres digitales • Contrôleur de disque dur d'ordinateur • Télécommandes à infrarouge • Souris/clavier • Machine à laver la vaisselle • Contrôleur de bus USB • Imprimante d'ordinateur Fabricant et machines • Photocopieuse • Motorola: 68HC11 ... etc. • Intel: 8751 • Microchip: famille PIC16/17 • Cypress famille PsoC • … etc. Caractéristiques typiques • Mémoires et périphériques intégrés sur le circuit • Données sur seulement 8 ou 16 bits (peut bien souvent fonctionner sans autres • Pas d'unité de calcul point flottant périphériques) • Modes d'adressage limités supportant mal les besoins • Bus d'adresses étroit, ne permettant que de gérer des langages évolués (programmation en langage un espace mémoire très limité évolué en général peu efficace) • Surface de silicium faible • Facile à fabriquer => faible coût F.Lani Digital Signal Processor
Traitement du signal: DSP (Digital Signal Processors) Types d'applications • Systèmes de télécommunication, téléphonie (compression, stockage, transmission cellulaire) • Systèmes de contrôles, asservissements numériques • Contrôle et stabilisation de trajectoire (applications aéro-spatiales...) • Audio de haute qualité (lecteurs de disques lasers, DAT, ...) • Contrôle de disques durs de haute performance • Modems • Contrôle actif antibruit/anti-vibrations • … etc. Fabricant et machines • Texas Instruments: TMS320C6000, TMS320C5000... • Motorola: 56000, 96000... • Analog devices: ADSP2100, ADSP21000... • ... etc. F.Lani Digital Signal Processor
Configuration Type d’un Système de TDS µp généraliste Si temps différé: aucune contrainte Si temps réel :performances appropriées au µp Toute la complexité est rejetée sur la programmation F.Lani Digital Signal Processor
Algorithmes de TDS et conséquences sur les DSP Les Filtres Numériques FIR (Finite Impulse Response) Les Filtres Numériques IIR (Infinite Impulse Response) Les Filtres adaptatifs FIR Correlation (auto ou inter) Le fenêtrage FFT a l’aide d’Algorithme de Cooley TuKey Produit scalaire de deux vecteur F.Lani Digital Signal Processor
Algorithmes de TDS et conséquences sur les DSP Objectifs Î efficacité calcul des somme de produit Accès au données Î adressage Î une grande précision Î une grande dynamique Î Type d’opérande manipule Contrainte et fonctions ordinaire des µp Îinterfaçage Îopération logiques Î….etc F.Lani Digital Signal Processor
Caractéristiques typiques des DSP • Processeur point fixe (TMS320C5000, 56000...) ou point flottant (TMS320C67, 96000...) • Architecture faite pour le calcul intensif. Exemple le TMS320C67 peut faire 1000 millions d’ opérations point flottant par secondes • Bus d'adresses pouvant gérer des espaces mémoires limités (64 Kmots, 1 Mmots...) • Modes d'adressages spécialisés faits pour supporter les opérations de traitement du signal (adressage circulaire->filtrage, adressage papillon-> Transformées de Fourier...) • Représentation des nombres limitée (entiers 2 octets, flottants 4 octets...) •Beaucoup de périphériques intégrés sur le chip (ports série synchrones, ROM, RAM, temporisateurs...etc.) possibilité de fonctionner presque sans périphérique externe. • Consommation électrique faible. • Faible coût. F.Lani Digital Signal Processor
Architecture La façon dont les éléments d'un système à microprocesseur sont interconnectés et échangent leur information Architecture de Von Neuman Architecture de Harvard F.Lani Digital Signal Processor
éléments du système à microprocesseur (CPU, mémoire, périphériques) sont interconnectés par un système unique de 3 bus F.Lani Digital Signal Processor
Architecture de Von Neuman Bus de données Transmet les donnés entre le CPU et les périphériques. Le bus de données est bidirectionnel. Bus d'adresses Bus par lequel le CPU indique à l'ensemble des périphériques avec lequel il veut échanger de l'information, et dans ce périphérique à quel registre particulier il veut accéder. Le bus d'adresse est unidirectionnel et transporte de l'information du CPU vers les périphériques. Bus de contrôle Bus sur lequel circulent les signaux qui servent à contrôler et synchroniser les échanges entre le CPU et les différents périphériques du système. F.Lani Digital Signal Processor
F.Lani Digital Signal Processor
Architecture de Harvard deux systèmes de bus séparés. 1. transferts des instructions de la mémoire vers le CPU; c'est le bus "programme". 2. échanges de données entre le CPU et les périphériques; c'est le bus "données". F.Lani Digital Signal Processor
Avantages et inconvénients L'architecture Harvard permet donc une exécution plus rapide des instructions. L'architecture Harvard est aussi plus sûre (d'auto corruption du programme est un problème classique qui donne lieu à des comportements logiciels difficiles à cerner) l'architecture Harvard est moins flexible. F.Lani Digital Signal Processor
Architecture de Harvard Modifiée Pour réduire le coût de la structure Harvard, certains DSP utilisent l’architecture dite « Structure de Harvard modifiée ». À l’extérieur, le DSP ne propose qu’un bus de données et un bus d’adresse, comme la structure Von Neuman. Toutefois, à l’intérieur, la puce DSP dispose de deux bus distincts de données et de deux bus distincts d’adresses. Le transfert des données entre les bus externes et internes est effectué par multiplexage temporel. F.Lani Digital Signal Processor
Organisation de la mémoire Mémoire de données avec plusieurs accès Mémoire a accès multiple en lecture et en écriture avec plusieurs bus Plusieurs bloc mémoire séparée avec leurs bus dédiés Transfert de données externes avec DMA Modes d’adressages particulier UAL dédiées pour le calcul d’adresses La taille des mémoires adressable dépend de largeur du bus d’adresse F.Lani Digital Signal Processor
Organisation de la mémoire F.Lani Digital Signal Processor
Pipeline optimiser le temps d’exécution d’un processus répétitif, à chaque étape du processus est affectée une ressource indépendante, de façon à pouvoir exécuter plusieurs processus en parallèle, chacun à une étape différente F.Lani Digital Signal Processor
Le cycle d’exécution Pre-fetch : Le contenu du compteur de programme (Program Counter ou PC en anglais) est placé sur le bus d’adresses (bus « programme »). Le PC est ensuite incrémenté. Fetch : L’instruction stockée en mémoire à l’adresse indiquée parle PC est lue dans le registre d’instruction. Decode : L’instruction stockée dans le registre d’instruction est décodée. Access : Les adresses de lecture de 0 à 2 opérandes à lire sont, si nécessaire, placées sur les bus d’adresse de 2 des bus « données ». Cela est fait pour 0, 1 ou 2 opérandes, dépendant de l’instruction. Read : Les 0, 1 ou 2 opérandes à lire sont lus. L’adresse d’écriture d’un opérande à écrire est placée sur le bus d’adresse d’un des bus « données ». Cela est fait uniquement si l’instruction doit effectuer une écriture. Execute : L’instruction est exécutée. Si cette exécution nécessite une écriture en mémoire du résultat, cette écriture est effectuée. F.Lani Digital Signal Processor
Pipeline Le pipeline permet au CPU d’exécuter les 6 étapes précédentes, en parallèle, sur 6 instructions successives du programme. F.Lani Digital Signal Processor
Pipeline F.Lani Digital Signal Processor
Vous pouvez aussi lire