Académique Documents
Professionnel Documents
Culture Documents
Introduction :
Un DSP (de l'anglais « Digital Signal Processor », qu'on pourrait traduire
par « processeur de signal numérique » ou « traitement numérique de
signal ») est un microprocesseur optimisé pour exécuter des applications
de traitement numérique du signal (filtrage, extraction de signaux, etc.)
le plus rapidement possible.
Les DSP sont utilisés dans la plupart des applications du traitement
numérique du signal en temps réel. On les trouve dans
les modems (modem RTC, modem ADSL), les téléphones mobiles, les
appareils multimédia (lecteur MP3), les récepteurs GPS… Ils sont également
utilisés dans des systèmes vidéo, les chaînes de traitement de son, partout
où l'on reçoit un signal complexe que l'on doit modifier à l'aide du filtrage.
II. Traitement numérique du signal :
Le traitement numérique du signal implique la réalisation de nombreuses
opérations mathématiques. En comparaison, un logiciel de traitement de
texte ou une base de données va plutô t passer son temps à manipuler des
données en mémoire. Cela implique que des ordinateurs conçus pour la
bureautique ou d'autres applications générales ne sont pas optimisés pour
exécuter des algorithmes de traitement du signal, comme le filtrage
numérique ou la réalisation d'une analyse de Fourier.
Manipulation de données Calculs mathématiques
Traitement numérique du
Traitement de texte
signal
Applications Base de données
Contrôle de vitesse
typiques Tableur
Simulation scientifique
Système d'exploitation
Simulation électronique
Mouvement de données (A
Opérations → B) Addition (A + B = C)
principales Test de condition (si A=B Multiplication (A x B = C)
alors …)
Les DSP peuvent être combinés avec d'autres composants dans le même
boîtier. Par exemple, un ou plusieurs DSP peuvent être combinés avec un
microprocesseur classique et des convertisseurs ADC et DAC. Ce type
d'assemblage (circuits intégrés dédiés) permet de réduire les coû ts dans
des fabrications de grande série. Les fonctions de traitement de signal
peuvent également être réalisées à l'aide de FPGA, qui peuvent incorporer
des « cœurs DSP » (en général des MAC). La reconfiguration matérielle
permet alors d'accroître le parallélisme des opérations. Les différents types
d'architecture disponibles permettent d'adapter les circuits de traitement
aux besoins spécifiques de l'application.
IV. Programmation :
Dans un appareil équipé de DSP, la vitesse d'exécution des calculs dans le
DSP est généralement la partie déterminante de la vitesse d'exécution du
travail effectué par la machine. Il s'agit souvent de programmes très courts,
de quelques centaines de lignes au maximum dont certaines parties
(boucles) doivent être optimisées au maximum. C'est pourquoi beaucoup de
programmeurs de DSP utilisent l'assembleur et analysent en détail le
schéma d'exécution du code par la machine.
Cependant, certains DSP ont une architecture tellement complexe qu'il
devient long et difficile pour le programmeur d'optimiser manuellement
l'exécution. Il peut alors écrire son programme en C et laisser au
compilateur le soin de réaliser l'optimisation du code. S'il le souhaite, le
programmeur pourra alors analyser le code généré par le compilateur et y
apporter les dernières retouches permettant d'obtenir du DSP la meilleure
performance possible.
Le choix entre ces deux langages se fera donc en fonction de la complexité
du programme, de la vitesse de traitement souhaitée, du nombre de
programmeurs qui travailleront sur le projet et du coû t du produit. D'autres
facteurs comme l'expérience personnelle et les outils que propose le
constructeur doivent aussi être considérés