15 | | Nous allons nous concentrer sur la traduction en matériel de la tâche la plus gourmande |
16 | | en ressources du TCG: la tâche `Idct`. |
| 15 | L'introduction d'un ''accélérateur'' matériel n'est pas toujours justifiée. |
| 16 | La loi d'Amdhal précise qu'il est inutile d'accélérer un traitement |
| 17 | qui ne représente qu'une petite partie du temps de calcul total |
| 18 | de l'application. De plus, il faut prendre en compte les temps |
| 19 | de communication entre le coprocesseur et la plate-forme. |
| 20 | |
| 21 | La tâche IDCT étant la plus gourmande en temps de calcul, vous allez |
| 22 | analyser l'implantation de cette tâche comme un processeur matériel spécialisé. |
| 23 | |
| 24 | Pour éviter de re-écrire toute l'application logicielle, on s'impose que le coprocesseur |
| 25 | matériel utilise les mêmes canaux de communication (en entrée et en sortie), que ceux |
| 26 | utilisés par la tâche logicielle. Il faut donc que le coprocesseur matériel respecte le protocole |
| 27 | MWMR à 5 étapes: |
| 28 | * prise du verrou, |
| 29 | * consultation de l'éta de la FIFO logicielle, |
| 30 | * transfert des données, |
| 31 | * mise à jour de l'état de la FIFO logicielle, |
| 32 | * libération du verrou. |
| 33 | |
| 34 | Pour simplifier le travail des outils de synthèse, on utilise pour cela un composant |
| 35 | matériel génériqueavec prise de verrou) |
| 36 | que les |
| 37 | |
| 38 | Il existe plusieurs solutions micro-architecturales pour la synthèse |
| 39 | d'un coprocesseur spécialisé. Dans le cas d'une transformation IDCT, |
| 40 | suivant le nombre d'opérateurs arithmétiques utilisés, |
| 41 | on peut effectuer le calcul d'un bloc de 64 pixels en un cycle, |
| 42 | 8 cycles, 64 cycles ou 256 cycles. Le coût matériel est inversement |
| 43 | proportionnel au temps de calcul. |
| 44 | |
| 45 | Avant de se lancer dans la synthèse, il faut donc évaluer précisément |
| 46 | les temps de calcul requis pour le coprocesseur, une fois celui-ci placé |
| 47 | dans son environnement de travail. |
| 48 | |
| 49 | Pour un coprocesseur IDCT, parmatériel et le |
| 50 | |
| 51 | |