• Aucun résultat trouvé

4.2 Vers un turbo-d´ ecodeur convolutif flexible

4.2.2 Assurer les performances

Comme d´ecrit dans le chapitre 3, le parall´elisme au niveau des m´etriques BCJR est le seul niveau de parall´elisme situ´e `a l’int´erieur d’un d´ecodeur BCJR-SISO. Nous avons vu par ailleurs que ce niveau de parall´elisme maximise le crit`ere d´ebit-complexit´e. Ainsi, un processeur voulant atteindre le haut d´ebit se doit d’exploiter au mieux tout ce parall´elisme.

D’apr`es les d´ecisions prises pour la flexibilit´e du codeur dans la section pr´ec´edente, un degr´e de parall´elisme ´egal `a 32 permet d’exploiter totalement le parall´elisme de transition de treillis (section 3.1.1.1) pour tous les standards. En outre, nous avons d´ecid´e d’organiser ce parall´elisme de mani`ere `a optimiser les performances d’un code double binaire 8 ´etats en veillant `a conserver la flexibilit´e pour l’ensemble des autres codes.

Pour les turbocodes simple binaire disposant d’un degr´e de parall´elisme de transition de treillis inf´erieur `a 32, l’exploitation sous-optimale du parall´elisme de transition de treillis peut ˆetre am´elior´ee en recourant `a la technique de compaction de treillis [92] [123]. Le principe de la compaction de treillis consiste `a regrouper plusieurs sections cons´ecutives du treillis initial pour ne former qu’une section du treillis compact´e. Par exemple, il est possible de compacter le treillis d’un code convolutif simple binaire 8 ´etats en un code convolutif double binaire 8 ´

etats, qui maximise l’utilisation des ressources mises en parall`ele.

Pour les turbocodes disposant d’un degr´e de parall´elisme de transition de treillis sup´erieur `a 32, tels qu’ils pourraient apparaˆıtre dans de futurs standards, le treillis peut ˆetre d´ecompos´e en sous-sections ayant un degr´e de parall´elisme 32. Ces sous-sections pourront ensuite ˆetre trait´es s´equentiellement.

Au vue du parall´elisme des calculs BCJR (section 3.1.1.2), nous avons choisi d’int´egrer seulement deux unit´es alors que trois ou quatre unit´es auraient ´et´e n´ecessaires pour compl`etement parall´eliser tous les sch´emas de d´ecodage BCJR. De part ces bonnes per- formances, le sch´ema de d´ecodage papillon a ´et´e retenu comme sch´ema de r´ef´erence. Or, l’utilisation de quatre unit´es de calculs BCJR avec un sch´ema papillon conduit `a une sous-

4.2. VERS UN TURBO-D ´ECODEUR CONVOLUTIF FLEXIBLE 79

utilisation des unit´es, car les unit´es servant `a produire les informations extrins`eques ne sont utilis´ees que la moiti´e du temps. En revanche, deux unit´es suffisent `a maximiser l’activit´e des unit´es de calculs BCJR. Dans ce cas, les unit´es doivent traiter s´equentiellement r´ecursions et production d’informations extrins`eques dans la seconde moiti´e du sch´ema.

Les d´ecisions qui viennent d’ˆetre d´ecrites fixent les performances maximum de l’ASIP qui sont ´evalu´ees dans la suite de ce chapitre. Cependant ces performances risquent d’ˆetre insuffisantes pour l’ensemble des utilisations. Dans ces cas, une architecture multiprocesseur est indispensable et l’ASIP doit ˆetre con¸cu de mani`ere `a favoriser l’exploitation du parall´elisme de d´ecodeur SISO BCJR.

Concernant le parall´elisme de sous-bloc, la principale contrainte r´eside dans la capacit´e de l’ASIP `a initialiser les m´etriques de r´ecursions. Or la gestion de multiples fenˆetres impose d´ej`a `a l’ASIP des m´ecanismes d’initialisation. Ce dernier doit simplement int´egrer en plus des interfaces lui permettant de recevoir des initialisations depuis l’ext´erieur, i.e. depuis d’autres ASIPs.

Pour implanter efficacement le parall´elisme de d´ecodeur composant au travers du d´ecodage combin´e, le temps de propagation tp d’une information extrins`eque doit ˆetre le plus faible

possible par rapport `a sa p´eriode d’´emission te. En se basant sur les simulations expos´ees par

exemple sur la figure 3.17 (avec des trames de 752 symboles), on peut estimer l’acc´el´eration apport´ee par le d´ecodage combin´e `a l’ASIP. Ainsi elle est repr´esent´ee sur cette figure dans la zone o`u les degr´es de parall´elisme sont sup´erieurs `a 12 ce qui correspond `a des tailles de sous-bloc inf´erieure `a 64 symboles (taille maximum de sous-bloc pour le processeur). Dans cette zone, l’acc´el´eration apport´ee par ce parall´elisme s’affaiblit fortement lorsque le temps de propagation devient sup´erieur `a trois temps d’´emission. On tˆachera donc de respecter l’in´egalit´e suivante pour mettre en oeuvre efficacement le d´ecodage combin´e :

tp

te

≤ 3 (4.1)

Dans le cas d’une mise en oeuvre sur un processeur, on peut ´ecrire ce ratio en fonction du temps tr´eseau n´ecessaire pour mettre `a jour une information extrins`eque entre deux pro-

cesseurs au travers d’un r´eseau d’interconnexion, du nombre de cycles d’horloge #cycle ext du processeur pour ex´ecuter le programme d’un calcul d’information extrins`eque, de la pro- fondeur du pipeline cpipe ext entre l’´etage d’entr´ee pour une information extrins`eque et son

´

etage de sortie, et de la fr´equence de fonctionnement du processeur f :

tp= tr´eseau+

cpipe ext− 1 + #cycle ext

f (4.2) te= #cycle ext f (4.3) tp te = tr´eseau.f #cycle ext+ cpipe ext− 1 #cycle ext + 1 (4.4)

R´e´ecrit ainsi l’´equation de contrainte 4.1 impose : cpipe ext− 1

Vue comme une contrainte de conception, cela impose de concevoir un processeur avec un pipeline plutˆot court (au moins pour les chemins de donn´ees des informations extrins`eques) tout en morcelant en plusieurs instructions le calcul d’une information extrins`eque. Dis au- trement, cette d´ecision r´eduit un peu les performances du processeur car elle impose une exploitation sous-optimale du parall´elisme d’instruction (ou temporel) des calculs BCJR. Une exploitation optimale de ce parall´elisme, comme c’est le cas dans l’ASIP propos´e dans [119], conduirait `a un ratio tp

te sup´erieur `a 8 rendant peu efficace l’utilisation d’un parall´elisme de d´ecodeur composant. Outre un d´ecodage combin´e efficace, la contrainte de conception a aussi l’avantage d’imposer une architecture de processeur plus facilement extensible, puis- qu’elle impose un pipeline court et donc moins contraignant sur le parall´elisme temporel d’applications d’extension.