SlideShare une entreprise Scribd logo

Chapitre 3-architecture-des-dsp

gfgfg

1  sur  6
Télécharger pour lire hors ligne
Architecture des DSP
Chapitre 3 : Architecture des DSP
24 Site : http://www.technologuepro.com
1. Architecture d’un processeur
Un processeur est un composant intégré (en technologie C-MOS) ou une
partie de composant susceptible d'exécuter des instructions selon un programme
d'instructions préétabli sur des données numériques. Le programme, et parfois les
données, sont enregistrés dans des mémoires numériques.
L’architecture est ce qui détermine d'emblée et de manière définitive les
principales caractéristiques du processeur en particulier la rapidité d'exécution des
instructions. Elles sont liées au nombre de bus internes, qui sont des liaisons
parallèles à N bits, à la valeur même de N, aux opérations possibles sur les données
transitant sur les bus et enfin à la puissance de calcul de l'unité centrale.
Les bus sont reliés à des registres temporaires pour stocker provisoirement
les codes d'instructions, des adresses ou des données. D'autres types de registres
existent:
 les registres de contrôle ou d'état, qui ne sont pas stockés en mémoire car ils
sont adressés directement par une instruction, par mesure de sécurité. Ces
registres sont essentiels car ils déterminent le déroulement précis d'une
instruction. Certains d'entre eux sont en lecture seule, d'autres en écriture
seule.
 les registres définissant les conditions de fonctionnement d'un port (série, DMA,
hôte ...), des interfaces avec des mémoires de sortie ou du Timer, qui ont une
adresse en mémoire de données.
Les instructions s'exécutant au cœur du processeur appelé unité centrale,
comportant dans le cas le plus classique, une seule unité arithmétique de
traitement des données. À l'entrée des unités de calcul constituant l'unité centrale,
Architecture des DSP
Chapitre 3 : Architecture des DSP
25 Site : http://www.technologuepro.com
les données sont chargées dans des registres temporaires qui, lors de la réalisation
de l'instruction de calcul, vont être reliés à l'unité de calcul ; le résultat de
l'opération sera disponible dans un registre (temporaire) de sortie. L’architecture
est conçue pour que les instructions puissent :
 Charger les données dans un registre temporaire d'entrée en lisant le contenu
d'une mémoire vive à une adresse donnée, les données transitant par un bus de
données et les adresses pour la lecture par un autre bus ;
 Effectuer une opération logique ou arithmétique sur une donnée ou entre deux
données dans l'unité centrale;
 Effectuer des tests sur le résultat obtenu (dépassement, signe...) ;
 Modifier certains registres ;
 Aller écrire un résultat à une adresse de la mémoire prévue.
Toutes ces instructions doivent en principe être exécutées en un seul cycle
d'horloge.
L’architecture contient donc un noyau DSP si elle comporte une unité
centrale laquelle est composée d'une ou plusieurs unités de traitement, chacune
comportant des unités de calcul, dont l'ALU (Arithmetic and Logic Unit) le MAC
(Multiplier and ACcumulator), le décaleur à barillet (Barrel Shifter) et enfin des
multiplexeurs d'aiguillage des données. En plus de l'unité centrale, le noyau DSP
comporte un séquenceur, pour envoyer les adresses des instructions enregistrées
dans la mémoire programme, et un ou plusieurs générateurs d'adresses (parfois
appelés pointeurs) agissant sur les bus d'adresses.
Architecture des DSP
Chapitre 3 : Architecture des DSP
26 Site : http://www.technologuepro.com
2. Architecture de Von Neumann et de Harvard
À chaque cycle d'horloge, le processeur sait par le compteur de programme
l'instruction qu'il doit faire exécuter. Nous avons vu qu'il va chercher chaque
instruction en mémoire, l'exécute avec les données correspondantes et retourne
les données résultantes en mémoire.
Dans l'architecture de la machine de Von Neumann, le programme et les
données sont enregistrés sur la même mémoire. Chaque instruction contient la
commande de l'opération à effectuer et l'adresse de la donnée à utiliser, il faut
donc souvent plusieurs cycles d'horloge pour exécuter une instruction. La Figure
3.1 indique une architecture simple de Von Neumann, constituée d’un bus de
données et de programme et d’un bus d'adresses.
Figure 3.1 : Architecture de Von Neumann
On voit que les échanges s'effectuent de manière simple entre l'unité
arithmétique et logique (ALU), c'est-à-dire l'unité centrale et la mémoire unique,
par un bus transitant les codes de programme et les données. On a ainsi des
données « collées » aux instructions. Les microprocesseurs et beaucoup de
microcontrôleurs utilisent cette architecture car elle est très souple pour la
programmation.
Architecture des DSP
Chapitre 3 : Architecture des DSP
27 Site : http://www.technologuepro.com
Dans l'architecture dite de Harvard (car mise au point dans cette université
américaine en 1930), on sépare systématiquement la mémoire de programme de
la mémoire des données : l'adressage de ces mémoires est indépendant. La Figure
3.2 indique une architecture simple de Harvard, constituée d’un bus de données,
d’un bus de programme et de deux bus d'adresse.
Figure 3.2 : Architecture de Harvard
On voit que les échanges s'effectuent de manière double entre l'unité
centrale et les deux mémoires, ce qui permet une grande souplesse pour
l'enregistrement et l'utilisation des données. D'ailleurs, la mémoire de programme
est également utilisée en partie comme mémoire de données pour obtenir encore
plus de possibilités de traitement avec des algorithmes complexes.
L’architecture généralement utilisée par les microprocesseurs est la
structure Von Neuman (exemples : la famille Motorola 68XXX, la famille Intel
80X86). L’architecture Harvard est plutôt utilisée dans des microprocesseurs
spécialisés pour des applications temps réels, comme les DSP.
Il existe cependant quelques rares DSP à structure Von Neuman. La raison de
ceci est liée au coût supérieur de la structure de type Harvard. En effet, elle
requiert deux fois plus de bus de données, d’adresses, et donc de broches sur la
puce. Or un des éléments augmentant le coût de productions des puces est
précisément le nombre de broches à implanter.
Architecture des DSP
Chapitre 3 : Architecture des DSP
28 Site : http://www.technologuepro.com
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.
3. Utilisation de pipelines
Pour améliorer les performances de l’unité de traitement, les DSP les plus
récents utilisent la méthode du pipeline. Elle consiste à imposer un ordre et un
rythme dans le déroulement des instructions de manière à optimiser en rapidité
leur exécution. En un cycle processeur, les opérations élémentaires suivantes
peuvent être exécutées en parallèle :
1. Aller chercher l’instruction en mémoire programme (Fetch) ;
2. Réaliser le décodage de l’instruction, et des adresses des opérandes (Decode) ;
3. Lire les opérandes en mémoire de données (Read) ;
4. Exécuter l’opération et écrire le résultat (Execute).
Le principe de pipeline consiste à découper le travail en tâches élémentaires
de même durée pour permettre leur réalisation en parallèle. Il faut prévoir des
registres tampon entre chaque opération élémentaire, ce qui montre le Tableau
3 .1. Il y a donc en permanence quatre instructions dans le pipeline, ce qui est le
plus souvent invisible, sauf s’il y a « conflit » dans le pipeline, ce qui se passe quant
l’une des quatre instructions exige plus d’un cycle d’horloge. Dans la plupart des
cas, DSP « rattrape » le conflit en décalant alors les autres instructions d’un cycle.
Architecture des DSP
Chapitre 3 : Architecture des DSP
29 Site : http://www.technologuepro.com
Instruction t t+1tclk t+2tclk t+3tclk t+4tclk t+5tclk t+6tclk
n Fetch Decode Read Execute … … …
n+1 Fetch Decode Read Execute … …
n+2 Fetch Decode Read Execute …
n+3 Fetch Decode Read Execute
Tableau 3.1 : Principe de pipeline

Recommandé

Architecture des ordinateurs : memoires
Architecture des ordinateurs : memoiresArchitecture des ordinateurs : memoires
Architecture des ordinateurs : memoiresAbdoulaye Dieng
 
Chapitre ii mémoires
Chapitre ii mémoiresChapitre ii mémoires
Chapitre ii mémoiresSana Aroussi
 
Les memoires
Les memoiresLes memoires
Les memoiresdigidid
 
Theme memoires des ordinateurs gpe 1
Theme memoires des ordinateurs gpe 1Theme memoires des ordinateurs gpe 1
Theme memoires des ordinateurs gpe 1Penn Hardikhan
 
Architecture 2
Architecture 2Architecture 2
Architecture 2coursuniv
 
Cours de microcontrôleurs
Cours de microcontrôleursCours de microcontrôleurs
Cours de microcontrôleurssarah Benmerzouk
 
Gestion des threads
Gestion des threadsGestion des threads
Gestion des threadsSana Aroussi
 

Contenu connexe

Tendances

Ch8 architecture
Ch8 architectureCh8 architecture
Ch8 architecturemickel iron
 
Architecture des ordinateurs : microprocesseur
Architecture des ordinateurs : microprocesseurArchitecture des ordinateurs : microprocesseur
Architecture des ordinateurs : microprocesseurAbdoulaye Dieng
 
Architecture des ordinateurs 3
Architecture des ordinateurs 3Architecture des ordinateurs 3
Architecture des ordinateurs 3coursuniv
 
Gestion de la Memoire dans un Système d'exploitation
Gestion de la Memoire dans un Système d'exploitationGestion de la Memoire dans un Système d'exploitation
Gestion de la Memoire dans un Système d'exploitationiMitwe
 
Scheduling et gestion des ressources CPU sous Solaris
Scheduling et gestion des ressources CPU sous SolarisScheduling et gestion des ressources CPU sous Solaris
Scheduling et gestion des ressources CPU sous Solarisgloumps
 
Chapitre iii interruptions
Chapitre iii interruptionsChapitre iii interruptions
Chapitre iii interruptionsSana Aroussi
 
Système d’exploitation: Principe
Système d’exploitation: PrincipeSystème d’exploitation: Principe
Système d’exploitation: PrincipeSouhaib El
 
Chapitre 2.1 - architecture d'un microprocesseur - bus et communication
Chapitre 2.1 -  architecture d'un microprocesseur - bus et communicationChapitre 2.1 -  architecture d'un microprocesseur - bus et communication
Chapitre 2.1 - architecture d'un microprocesseur - bus et communicationTarik Zakaria Benmerar
 
Base des systèmes à microprocesseur
Base des systèmes à microprocesseurBase des systèmes à microprocesseur
Base des systèmes à microprocesseurPeronnin Eric
 
Assembleur i8086
Assembleur i8086Assembleur i8086
Assembleur i8086ahmedyes
 
Chapitre 5 - fichiers EXE-COM pour le dos
Chapitre 5 -  fichiers EXE-COM pour le dosChapitre 5 -  fichiers EXE-COM pour le dos
Chapitre 5 - fichiers EXE-COM pour le dosTarik Zakaria Benmerar
 
A la découverte d'abus
A la découverte d'abusA la découverte d'abus
A la découverte d'abusThierry Gayet
 

Tendances (19)

Ch8 architecture
Ch8 architectureCh8 architecture
Ch8 architecture
 
Structure_Des_Ordinateurs
Structure_Des_OrdinateursStructure_Des_Ordinateurs
Structure_Des_Ordinateurs
 
Architecture des ordinateurs : microprocesseur
Architecture des ordinateurs : microprocesseurArchitecture des ordinateurs : microprocesseur
Architecture des ordinateurs : microprocesseur
 
Ch memoires
Ch memoiresCh memoires
Ch memoires
 
Architecture des ordinateurs 3
Architecture des ordinateurs 3Architecture des ordinateurs 3
Architecture des ordinateurs 3
 
Gestion de la Memoire dans un Système d'exploitation
Gestion de la Memoire dans un Système d'exploitationGestion de la Memoire dans un Système d'exploitation
Gestion de la Memoire dans un Système d'exploitation
 
Scheduling et gestion des ressources CPU sous Solaris
Scheduling et gestion des ressources CPU sous SolarisScheduling et gestion des ressources CPU sous Solaris
Scheduling et gestion des ressources CPU sous Solaris
 
Cours s epartie2
Cours s epartie2Cours s epartie2
Cours s epartie2
 
Chapitre iii interruptions
Chapitre iii interruptionsChapitre iii interruptions
Chapitre iii interruptions
 
Système d’exploitation: Principe
Système d’exploitation: PrincipeSystème d’exploitation: Principe
Système d’exploitation: Principe
 
Chapitre3 prog dsplf3
Chapitre3 prog dsplf3Chapitre3 prog dsplf3
Chapitre3 prog dsplf3
 
Chapitre 2.1 - architecture d'un microprocesseur - bus et communication
Chapitre 2.1 -  architecture d'un microprocesseur - bus et communicationChapitre 2.1 -  architecture d'un microprocesseur - bus et communication
Chapitre 2.1 - architecture d'un microprocesseur - bus et communication
 
Base des systèmes à microprocesseur
Base des systèmes à microprocesseurBase des systèmes à microprocesseur
Base des systèmes à microprocesseur
 
Assembleur i8086
Assembleur i8086Assembleur i8086
Assembleur i8086
 
Chap2 dsp
Chap2 dspChap2 dsp
Chap2 dsp
 
Chapitre 5 - fichiers EXE-COM pour le dos
Chapitre 5 -  fichiers EXE-COM pour le dosChapitre 5 -  fichiers EXE-COM pour le dos
Chapitre 5 - fichiers EXE-COM pour le dos
 
Cell process
Cell processCell process
Cell process
 
A la découverte d'abus
A la découverte d'abusA la découverte d'abus
A la découverte d'abus
 
Chapitre 7 - la pile
Chapitre 7 -  la pileChapitre 7 -  la pile
Chapitre 7 - la pile
 

Similaire à Chapitre 3-architecture-des-dsp

Le microprocesseur
Le microprocesseurLe microprocesseur
Le microprocesseurISIG
 
a_introduction ElectroniqueDesSysEmbarqués.pdf
a_introduction ElectroniqueDesSysEmbarqués.pdfa_introduction ElectroniqueDesSysEmbarqués.pdf
a_introduction ElectroniqueDesSysEmbarqués.pdfAnasAsran1
 
Cours de PIC Généralités.pdf
Cours de PIC Généralités.pdfCours de PIC Généralités.pdf
Cours de PIC Généralités.pdfAliRami3
 
Chapitre 05 architecture microprocesseur (2).pptx
Chapitre 05 architecture microprocesseur (2).pptxChapitre 05 architecture microprocesseur (2).pptx
Chapitre 05 architecture microprocesseur (2).pptxFazaTabbana1
 
Chapitre1.ppt-------------------------------
Chapitre1.ppt-------------------------------Chapitre1.ppt-------------------------------
Chapitre1.ppt-------------------------------NasriMohsen2
 
Cours Benhabiles TMS320.pdf
Cours Benhabiles TMS320.pdfCours Benhabiles TMS320.pdf
Cours Benhabiles TMS320.pdfHouBou3
 
DSP FPGA.pdf
DSP FPGA.pdfDSP FPGA.pdf
DSP FPGA.pdfHouBou3
 
Architecture ordinateur-2-architecture-de-base
Architecture ordinateur-2-architecture-de-baseArchitecture ordinateur-2-architecture-de-base
Architecture ordinateur-2-architecture-de-baseAbdoulaye Dieng
 
Cours Systemes embarques.pptx
Cours Systemes embarques.pptxCours Systemes embarques.pptx
Cours Systemes embarques.pptxSihemNasri3
 
cours-gratuit.com--system1id048.pdf
cours-gratuit.com--system1id048.pdfcours-gratuit.com--system1id048.pdf
cours-gratuit.com--system1id048.pdfKamalZeghdar
 
Etude DéTailléé de la pile réseau sous GNU Linux
Etude DéTailléé de la pile réseau sous GNU LinuxEtude DéTailléé de la pile réseau sous GNU Linux
Etude DéTailléé de la pile réseau sous GNU LinuxThierry Gayet
 
ch8_architecture.ppt
ch8_architecture.pptch8_architecture.ppt
ch8_architecture.pptamine17157
 
Architecture1
Architecture1Architecture1
Architecture1coursuniv
 
Exposé Le Microprocesseur
Exposé   Le MicroprocesseurExposé   Le Microprocesseur
Exposé Le MicroprocesseurTheCrazyMan
 
Arm système embarqué
Arm système embarquéArm système embarqué
Arm système embarquéHoussem Rouini
 
Cour systeme d'exploitation sghaier anouar
Cour systeme d'exploitation sghaier anouarCour systeme d'exploitation sghaier anouar
Cour systeme d'exploitation sghaier anouarAnouar Sghaier
 

Similaire à Chapitre 3-architecture-des-dsp (20)

Le microprocesseur
Le microprocesseurLe microprocesseur
Le microprocesseur
 
DSP
DSPDSP
DSP
 
a_introduction ElectroniqueDesSysEmbarqués.pdf
a_introduction ElectroniqueDesSysEmbarqués.pdfa_introduction ElectroniqueDesSysEmbarqués.pdf
a_introduction ElectroniqueDesSysEmbarqués.pdf
 
Cours de PIC Généralités.pdf
Cours de PIC Généralités.pdfCours de PIC Généralités.pdf
Cours de PIC Généralités.pdf
 
Chapitre 05 architecture microprocesseur (2).pptx
Chapitre 05 architecture microprocesseur (2).pptxChapitre 05 architecture microprocesseur (2).pptx
Chapitre 05 architecture microprocesseur (2).pptx
 
Chapitre1.ppt-------------------------------
Chapitre1.ppt-------------------------------Chapitre1.ppt-------------------------------
Chapitre1.ppt-------------------------------
 
Cours Benhabiles TMS320.pdf
Cours Benhabiles TMS320.pdfCours Benhabiles TMS320.pdf
Cours Benhabiles TMS320.pdf
 
DSP FPGA.pdf
DSP FPGA.pdfDSP FPGA.pdf
DSP FPGA.pdf
 
Architecture ordinateur-2-architecture-de-base
Architecture ordinateur-2-architecture-de-baseArchitecture ordinateur-2-architecture-de-base
Architecture ordinateur-2-architecture-de-base
 
Cours Systemes embarques.pptx
Cours Systemes embarques.pptxCours Systemes embarques.pptx
Cours Systemes embarques.pptx
 
cours-gratuit.com--system1id048.pdf
cours-gratuit.com--system1id048.pdfcours-gratuit.com--system1id048.pdf
cours-gratuit.com--system1id048.pdf
 
Etude DéTailléé de la pile réseau sous GNU Linux
Etude DéTailléé de la pile réseau sous GNU LinuxEtude DéTailléé de la pile réseau sous GNU Linux
Etude DéTailléé de la pile réseau sous GNU Linux
 
Chapitre1
Chapitre1Chapitre1
Chapitre1
 
Chapitre1
Chapitre1Chapitre1
Chapitre1
 
ch8_architecture.ppt
ch8_architecture.pptch8_architecture.ppt
ch8_architecture.ppt
 
Architecture1
Architecture1Architecture1
Architecture1
 
Exposé Le Microprocesseur
Exposé   Le MicroprocesseurExposé   Le Microprocesseur
Exposé Le Microprocesseur
 
Arm système embarqué
Arm système embarquéArm système embarqué
Arm système embarqué
 
1488135632336.pdf
1488135632336.pdf1488135632336.pdf
1488135632336.pdf
 
Cour systeme d'exploitation sghaier anouar
Cour systeme d'exploitation sghaier anouarCour systeme d'exploitation sghaier anouar
Cour systeme d'exploitation sghaier anouar
 

Dernier

Activités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdfActivités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdfLallaJamilaFtaich1
 
Fabriquer une femme.Livre écrit par Marie Darrieussecq
Fabriquer une femme.Livre écrit par Marie DarrieussecqFabriquer une femme.Livre écrit par Marie Darrieussecq
Fabriquer une femme.Livre écrit par Marie DarrieussecqTxaruka
 
Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024frizzole
 
Modulation Fm Tp presentation avancée USTHB
Modulation Fm Tp presentation avancée USTHBModulation Fm Tp presentation avancée USTHB
Modulation Fm Tp presentation avancée USTHBUsaPlay2
 
antigone de jean Anouilh la tragédie moderne
antigone de jean Anouilh la tragédie moderneantigone de jean Anouilh la tragédie moderne
antigone de jean Anouilh la tragédie moderneayoubrhammadi2
 
Le langage n'est-il qu'un instrument de communication ? (V2)
Le langage n'est-il qu'un instrument de communication ? (V2)Le langage n'est-il qu'un instrument de communication ? (V2)
Le langage n'est-il qu'un instrument de communication ? (V2)Gabriel Gay-Para
 
Offres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptxOffres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptxMissionLocale
 
Français langue étrangère: Le but et l'obligation 2024
Français langue étrangère: Le but et l'obligation 2024Français langue étrangère: Le but et l'obligation 2024
Français langue étrangère: Le but et l'obligation 2024Paulo Marques
 
Français langue étrangère: L'impératif présent 2024
Français langue étrangère: L'impératif présent 2024Français langue étrangère: L'impératif présent 2024
Français langue étrangère: L'impératif présent 2024Paulo Marques
 
Marseille XIXe fiche de travail 2024.pdf
Marseille XIXe fiche de travail 2024.pdfMarseille XIXe fiche de travail 2024.pdf
Marseille XIXe fiche de travail 2024.pdfNadineHG
 

Dernier (10)

Activités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdfActivités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdf
 
Fabriquer une femme.Livre écrit par Marie Darrieussecq
Fabriquer une femme.Livre écrit par Marie DarrieussecqFabriquer une femme.Livre écrit par Marie Darrieussecq
Fabriquer une femme.Livre écrit par Marie Darrieussecq
 
Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024
 
Modulation Fm Tp presentation avancée USTHB
Modulation Fm Tp presentation avancée USTHBModulation Fm Tp presentation avancée USTHB
Modulation Fm Tp presentation avancée USTHB
 
antigone de jean Anouilh la tragédie moderne
antigone de jean Anouilh la tragédie moderneantigone de jean Anouilh la tragédie moderne
antigone de jean Anouilh la tragédie moderne
 
Le langage n'est-il qu'un instrument de communication ? (V2)
Le langage n'est-il qu'un instrument de communication ? (V2)Le langage n'est-il qu'un instrument de communication ? (V2)
Le langage n'est-il qu'un instrument de communication ? (V2)
 
Offres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptxOffres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptx
 
Français langue étrangère: Le but et l'obligation 2024
Français langue étrangère: Le but et l'obligation 2024Français langue étrangère: Le but et l'obligation 2024
Français langue étrangère: Le but et l'obligation 2024
 
Français langue étrangère: L'impératif présent 2024
Français langue étrangère: L'impératif présent 2024Français langue étrangère: L'impératif présent 2024
Français langue étrangère: L'impératif présent 2024
 
Marseille XIXe fiche de travail 2024.pdf
Marseille XIXe fiche de travail 2024.pdfMarseille XIXe fiche de travail 2024.pdf
Marseille XIXe fiche de travail 2024.pdf
 

Chapitre 3-architecture-des-dsp

  • 1. Architecture des DSP Chapitre 3 : Architecture des DSP 24 Site : http://www.technologuepro.com 1. Architecture d’un processeur Un processeur est un composant intégré (en technologie C-MOS) ou une partie de composant susceptible d'exécuter des instructions selon un programme d'instructions préétabli sur des données numériques. Le programme, et parfois les données, sont enregistrés dans des mémoires numériques. L’architecture est ce qui détermine d'emblée et de manière définitive les principales caractéristiques du processeur en particulier la rapidité d'exécution des instructions. Elles sont liées au nombre de bus internes, qui sont des liaisons parallèles à N bits, à la valeur même de N, aux opérations possibles sur les données transitant sur les bus et enfin à la puissance de calcul de l'unité centrale. Les bus sont reliés à des registres temporaires pour stocker provisoirement les codes d'instructions, des adresses ou des données. D'autres types de registres existent:  les registres de contrôle ou d'état, qui ne sont pas stockés en mémoire car ils sont adressés directement par une instruction, par mesure de sécurité. Ces registres sont essentiels car ils déterminent le déroulement précis d'une instruction. Certains d'entre eux sont en lecture seule, d'autres en écriture seule.  les registres définissant les conditions de fonctionnement d'un port (série, DMA, hôte ...), des interfaces avec des mémoires de sortie ou du Timer, qui ont une adresse en mémoire de données. Les instructions s'exécutant au cœur du processeur appelé unité centrale, comportant dans le cas le plus classique, une seule unité arithmétique de traitement des données. À l'entrée des unités de calcul constituant l'unité centrale,
  • 2. Architecture des DSP Chapitre 3 : Architecture des DSP 25 Site : http://www.technologuepro.com les données sont chargées dans des registres temporaires qui, lors de la réalisation de l'instruction de calcul, vont être reliés à l'unité de calcul ; le résultat de l'opération sera disponible dans un registre (temporaire) de sortie. L’architecture est conçue pour que les instructions puissent :  Charger les données dans un registre temporaire d'entrée en lisant le contenu d'une mémoire vive à une adresse donnée, les données transitant par un bus de données et les adresses pour la lecture par un autre bus ;  Effectuer une opération logique ou arithmétique sur une donnée ou entre deux données dans l'unité centrale;  Effectuer des tests sur le résultat obtenu (dépassement, signe...) ;  Modifier certains registres ;  Aller écrire un résultat à une adresse de la mémoire prévue. Toutes ces instructions doivent en principe être exécutées en un seul cycle d'horloge. L’architecture contient donc un noyau DSP si elle comporte une unité centrale laquelle est composée d'une ou plusieurs unités de traitement, chacune comportant des unités de calcul, dont l'ALU (Arithmetic and Logic Unit) le MAC (Multiplier and ACcumulator), le décaleur à barillet (Barrel Shifter) et enfin des multiplexeurs d'aiguillage des données. En plus de l'unité centrale, le noyau DSP comporte un séquenceur, pour envoyer les adresses des instructions enregistrées dans la mémoire programme, et un ou plusieurs générateurs d'adresses (parfois appelés pointeurs) agissant sur les bus d'adresses.
  • 3. Architecture des DSP Chapitre 3 : Architecture des DSP 26 Site : http://www.technologuepro.com 2. Architecture de Von Neumann et de Harvard À chaque cycle d'horloge, le processeur sait par le compteur de programme l'instruction qu'il doit faire exécuter. Nous avons vu qu'il va chercher chaque instruction en mémoire, l'exécute avec les données correspondantes et retourne les données résultantes en mémoire. Dans l'architecture de la machine de Von Neumann, le programme et les données sont enregistrés sur la même mémoire. Chaque instruction contient la commande de l'opération à effectuer et l'adresse de la donnée à utiliser, il faut donc souvent plusieurs cycles d'horloge pour exécuter une instruction. La Figure 3.1 indique une architecture simple de Von Neumann, constituée d’un bus de données et de programme et d’un bus d'adresses. Figure 3.1 : Architecture de Von Neumann On voit que les échanges s'effectuent de manière simple entre l'unité arithmétique et logique (ALU), c'est-à-dire l'unité centrale et la mémoire unique, par un bus transitant les codes de programme et les données. On a ainsi des données « collées » aux instructions. Les microprocesseurs et beaucoup de microcontrôleurs utilisent cette architecture car elle est très souple pour la programmation.
  • 4. Architecture des DSP Chapitre 3 : Architecture des DSP 27 Site : http://www.technologuepro.com Dans l'architecture dite de Harvard (car mise au point dans cette université américaine en 1930), on sépare systématiquement la mémoire de programme de la mémoire des données : l'adressage de ces mémoires est indépendant. La Figure 3.2 indique une architecture simple de Harvard, constituée d’un bus de données, d’un bus de programme et de deux bus d'adresse. Figure 3.2 : Architecture de Harvard On voit que les échanges s'effectuent de manière double entre l'unité centrale et les deux mémoires, ce qui permet une grande souplesse pour l'enregistrement et l'utilisation des données. D'ailleurs, la mémoire de programme est également utilisée en partie comme mémoire de données pour obtenir encore plus de possibilités de traitement avec des algorithmes complexes. L’architecture généralement utilisée par les microprocesseurs est la structure Von Neuman (exemples : la famille Motorola 68XXX, la famille Intel 80X86). L’architecture Harvard est plutôt utilisée dans des microprocesseurs spécialisés pour des applications temps réels, comme les DSP. Il existe cependant quelques rares DSP à structure Von Neuman. La raison de ceci est liée au coût supérieur de la structure de type Harvard. En effet, elle requiert deux fois plus de bus de données, d’adresses, et donc de broches sur la puce. Or un des éléments augmentant le coût de productions des puces est précisément le nombre de broches à implanter.
  • 5. Architecture des DSP Chapitre 3 : Architecture des DSP 28 Site : http://www.technologuepro.com 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. 3. Utilisation de pipelines Pour améliorer les performances de l’unité de traitement, les DSP les plus récents utilisent la méthode du pipeline. Elle consiste à imposer un ordre et un rythme dans le déroulement des instructions de manière à optimiser en rapidité leur exécution. En un cycle processeur, les opérations élémentaires suivantes peuvent être exécutées en parallèle : 1. Aller chercher l’instruction en mémoire programme (Fetch) ; 2. Réaliser le décodage de l’instruction, et des adresses des opérandes (Decode) ; 3. Lire les opérandes en mémoire de données (Read) ; 4. Exécuter l’opération et écrire le résultat (Execute). Le principe de pipeline consiste à découper le travail en tâches élémentaires de même durée pour permettre leur réalisation en parallèle. Il faut prévoir des registres tampon entre chaque opération élémentaire, ce qui montre le Tableau 3 .1. Il y a donc en permanence quatre instructions dans le pipeline, ce qui est le plus souvent invisible, sauf s’il y a « conflit » dans le pipeline, ce qui se passe quant l’une des quatre instructions exige plus d’un cycle d’horloge. Dans la plupart des cas, DSP « rattrape » le conflit en décalant alors les autres instructions d’un cycle.
  • 6. Architecture des DSP Chapitre 3 : Architecture des DSP 29 Site : http://www.technologuepro.com Instruction t t+1tclk t+2tclk t+3tclk t+4tclk t+5tclk t+6tclk n Fetch Decode Read Execute … … … n+1 Fetch Decode Read Execute … … n+2 Fetch Decode Read Execute … n+3 Fetch Decode Read Execute Tableau 3.1 : Principe de pipeline