L' électron en
mouvement
Une Introduction aux DSP
2.2. Principales
distinctions
entre un microprocesseur et un DSP
En quoi un DSP est-il différent d’un microprocesseur ? Pour répondre à cette question, il nous faut prendre en considération les éléments suivants.
Après avoir été numérisé, le signal
se
présente sous la forme d’une suite de valeurs
numériques
discrètes . Cette suite de valeurs (ou échantillons) est
apte
à être stockée et traitée par un
système
informatique. Par nature, le traitement numérique du signal
revient
à effectuer essentiellement des opérations
arithmétiques
de base du type A = (B x C) + D.
Un microprocesseur classique va nécessiter plusieurs cycles d’horloge pour effectuer un tel calcul, par exemple, un 68000 à besoin de :
· 10 cycles d’horloge pour effectuer une addition,
· 70 cycles d’horloge pour effectuer une multiplication.
Soit 80 cycles pour seulement calculer A. Si ce temps est admissible dans des applications informatiques courantes, il n’est pas acceptable pour faire du traitement rapide du signal. Les DSP sont donc conçus pour optimiser ce temps de calcul, à cet effet, ils disposent de fonctions optimisées permettant de calculer A beaucoup plus rapidement.
Dans la pratique, la plupart des DSP ont un jeu d’instructions spécialisé permettant de lire en mémoire une donnée, d’effectuer une multiplication puis une addition, et enfin d’écrire en mémoire le résultat, le tout en un seul cycle d’horloge. Ce type d’opération est nommé MAC, de l’anglais Multiply and ACcumulate.
Effectuer une opération MAC en seul cycle n’est malgré tout pas satisfaisant si le cycle d’horloge est trop « long ». Le principal objectif d’évolution des DSP atoujours été d’améliorer le temps de calcul d’un MAC. La figure 2 (Source [1], page 1-8) présente le progrès réalisé dans ce domaine depuis plus de trois décennies.
Actuellement, un DSP de gamme moyenne effectue une opération MAC sur des données de 16 bits en moins de 25 nS, soit 40 000 000 opérations par seconde. De telles performances sont indispensables pour effectuer des traitements rapides.
Outre le temps d’exécution d’une opération MAC, un autre problème se pose. L’opération MAC étant une multiplication suivie d’une addition, un débordement (1) de l’accumulateur est toujours possible. Pour contourner ce problème, certains DSP possèdent un accumulateur adapté au MAC. Ces accumulateurs ont un format spécial incorporant des bits supplémentaires (bits de garde) par rapport à la taille des données à manipuler. Les problèmes de débordements sont alors contournés, car un programme de traitement correctement conçu ne devrait pas générer des suites d’opérations MAC telles qu’un résultat excède la capacité élargie de l’accumulateur.
NDR (1) : débordement au sens informatique, c.a.d. que l’opération génère un nombre supérieur au plus grand nombre pouvant être manipulé par l’accumulateur.
Page Principale Index Site Page Précédente Page Supérieure Page Suivante
Site créé et maintenu par laurent.battista@laposte.net
© 1998 - 2005 - Laurent Battista