ch1 DSP
ch1 DSP
2ème année IA
• Introduction
• Ch1 : Architecture des DSPs conventionnels
• Ch2: Nouvelles architectures des DSPs
• Ch3 : Flot de développement &Arithmétique des DSPs
Chapitre 2
Architectures des DSPs conventionnels
1. Unité de traitement
2. Unité de mémorisation
3. Unité de contrôle
Principe:
L’architecture des premiers DSPs est directement inspirée de la
structure des filtres numériques
Exemple Filtre FIR sur N points:
Chapitre 1
Architectures des DSPs conventionnels
1. Unité de traitement
2. Unité de mémorisation
3. Unité de contrôle
h1 = h5 = 0,1;
h2 = h4 = -0,3;
h3 = 0,5.
Chapitre 1
Architectures des DSPs conventionnels
1. Unité de traitement
2. Unité de mémorisation
3. Unité de contrôle
Cycle instruction
Ad. 1 2 3 4
Donnée 1 2 3 4
Avantage: programmation
simplifiée
Inconvénients: Electronique
beaucoup plus complexe donc
plus coûteuse.
2 i0 2 i 0 2
Comme N/2 est également un nombre pair, on peut de nouveau partager chacune des
TFD d’ordre N/2 en deux TFD d’ordre N/4 et par itération en un nombre d’étages égal
à log2(N), nous arrivons à une TFD sur 2 points.
Exercice 1:
Reprenons le filtre énoncé au slide 10 et 11. Soit maintenant à réaliser ce
filtre dans le domaine fréquentiel.
– Quelle est la complexité algorithmique de cette nouvelle solution (opérations
et mots mémoire) ?
Exercice 2:
La DCT (Discrete Cosine Transform) ou transformée en cosinus discret
transforme X et Y définis comme les coordonnées du pixel d’une image et Z
sa définition lumineuse en une information fréquentielle, représentant les
fréquences du pixel dans les deux dimensions (horizontale et verticale).
-Les échanges avec le codec sont gérés au niveau matériel par le DSP: port série
bufferisé BSP (Buffered Serial Port), pourvu d’une ABU (Automatic Buffering
Unit), qui possède deux buffers intermédiaires (ping et pong) .
-Un buffer (ping) est rempli pendant que le CPU traite les données de l’autre
buffer (pong).
- Lorsque le buffer est plein, interversion des rôles.
-Peut être implémenté par un buffer découpé en deux.
Chapitre 1: Architecture des DSPs conventionnels -36 -
Chronogramme des échanges de données en DMA
2ème année IA
-Dans le cas d’un traitement par blocs de taille N, les données sont fournies à la
fonction de traitement sous la forme d’un tableau contenant N échantillons
consécutifs x(m) à x(m+N-1).
Le traitement par blocs est associé au DMA. Le DMA peut ainsi copier les
échantillons obtenus sur un port série en entrée directement en mémoire, en
remplissant un tableau. Une fois la configuration du DMA effectuée une fois
pour toute, le processus est autonome. Lorsque le tableau est plein, ou à moitié
plein, une interruption est alors générée, qui vient provoquer le lancement de la
fonction de traitement, qui peut alors prendre un bloc déjà rempli en entrée.
- Lisser les temps de calculs si ceux-ci peuvent varier, et être notamment plus
longs pour un échantillon isolé.
-Plus grande latence entre l’arrivée des échantillons en entrée, et la sortie des
échantillons correspondant : de l’ordre du temps nécessaire pour remplir deux
blocs, soit 2NTe, en notant Te la période d’échantillonnage (l’échantillon x(0) est
le premier du bloc 1, il faut attendre le remplissage du bloc 1 pour que la fonction
de traitement soir lancée, la fonction a le temps du remplissage du bloc 2 pour
fournir un résultat y(0), qui est envoyé en sortie dès le début du remplissage du
bloc 3 => voir le chronogramme slide 37
Chapitre 1
Architectures des DSPs conventionnels
1. Unité de traitement
2. Unité de mémorisation
3. Unité de contrôle