mardi 20 février 2007

Processeur VLIW

VLIW, initiales de Very Long Instruction Word en anglais, dénote une famille d'ordinateurs dotés d'un processeur à mot d'instruction très long (couramment supérieur à 128 bits).

Sommaire
1 Principe
1.1 Exemple
1.2 Pipeline interne
2 Implémentations commerciales
3 Historique
4 Références
4.1 Liens internes
4.2 Liens externes

Principe
Sur ces processeurs, chaque instruction peut faire 128, 256 bits de long, voire plus. Sont codés à l'intérieur de ces instructions les opérations à effectuer par les différentes unités de calcul disponible dans l'unité centrale.
Il est de la responsabilité du compilateur de générer un code qui prend en compte la disponibilités des ressources et ne provoque pas de problèmes matériel lors de son exécution.
Un mot VLIW est parfois appelé un bundle, selon l'architecture. Chaque bundle peut contenir plusieurs instructions. Ces instructions sont positionnées à un certain emplacement du bundle : un slot. En général chaque slot correspond à un type d'instruction, c'est-à-dire que le compilateur ne peut pas affecter à un slot dédié aux instructions arithmétiques entières une multiplication flottante, par exemple.

Exemple
Prenons un exemple de source en assembleur VLIW pour illustrer le problème d'affectation des ressources. Le processeur pour lequel on génère du code n'a que 4 unités : une unité de calcul sur des entiers, une unité flottante, une unité de chargement/rangement (accès mémoire), et une unité de branchement (un mot VLIW ne pourra contenir plus de 4 instructions) :
Code source :...
I1 ADD R1, R1, -2
I2 FMUL R2, R1, 10
I3 STORE R3, #100
I4 JE R2, FinCode
I5 LOAD R4, R1(4)
...
On voit ici une dépendance de type RAW (Read After Write, lecture après écriture), qui empêche d'exécuter I2 en même temps que I1. En revanche on peut paralléliser I1 et I3, car il n'y a pas de dépendance et parce qu'elles n'utilisent pas les mêmes ressources matérielles (l'unité entière pour I1 et l'unité de branchement pour I2).
Le compilateur produira le mot machine suivant :
L'exécution de ce mot se fera de la manière suivante :
Le fait que le processeur ne réorganise pas les données qu'il va exécuter le caractérise comme étant un processeur in-order (dans l'ordre).
Le compilateur a donc la charge d'organiser correctement les instructions parmi les bundles, tout en respectant les types de dépendances habituelles (aléa de donnée, etc.) qui sont normalement gérées au niveau matériel par les architectures classiques (en général via l'algorithme de Tomasulo).
Outre les instructions classiques (celles qui seront exécutées), le compilateur doit « remplir les slots vides du bundle » pour que chaque mot ait la taille idoine (128, 256, 384 bits). Pour ce faire il y place des instructions ne faisant rien (NOP, pour No Operation), comblant ainsi les emplacements vides.
La faible densité de code résultant de ces instructions très longue peut être compensée par une décompression à la volée du code au moment de son exécution.

Lire la suite : http://fr.wikipedia.org/wiki/Processeur_VLIW

9 commentaires:

Anonyme a dit…

[url=http://www.vuittonhandbags2u.com/#louisvuittonhandbags]louis vuitton handbags[/url], I like gaining property and then positioning these on the subject of . . . louis vuitton are actually design plus warm and really pleasant.
Darling it seems to actually like louis vuitton
Pretty yet they use a dimension too large. I formerly purchased my very own genuine sizing coupled with to go back [url=http://louisvuittonstore127.webeden.co.uk#louisvuittonstore]louis vuitton store[/url] for your measurement smaller and in addition they were Fantastic!
My family and i LOVEEEE louis vuittonGSS! Concerning 10 sets i'm just looking for the other kind later:) they are really Exceedingly nicey! useful to the winter........Bailey handles might be my personal favorite remember...........Lately LOVEE THEEEM! <About three
My son bought me these louis vuitton and that i liked them when I noticed them, they look really elegant and vogue, when I tried for getting them on I couldn't really feel joyful a lot more.
I really fancy some of these louis vuitton. As i looked after acquire that have Mink Oil monthly and they also physical appearance much like absolutely new.

Anonyme a dit…

What's up, its good article about media print, we all be aware of media is a impressive source of data.

My website ... http://www.Ertanozgur.tk/wiki/JuniorrrBrittonnf

Anonyme a dit…

It's going to be finish of mine day, however before finish I am reading this wonderful piece of writing to increase my know-how.

my blog :: Surface Mount Resistors

Anonyme a dit…

My partner and I stumbleԁ over here different web page and thought Ӏ might aѕ
well chеck things out. I likе what I seе
so now i am followіng yοu. Lοok
forωard to looking ovеr youг web рage again.


Feel free to visit my weblog: resistor Power

Anonyme a dit…

I hаve reaԁ sо many articleѕ or reviews οn the topіc of the
bloggеr loνers excерt thіѕ paragraph
is genuinеly a pleaѕant piece of wгiting, kеep
it up.

Here is mу weblog ... itsarchitektura.cz

Anonyme a dit…

Pretty! This was a гeally wondеrful artiсle.
Thаnk you for provіding this іnfo.


Ηave a loоk at mу web sitе - Resistor Resistance

Anonyme a dit…

Тhanks for the ausρiсious writеup.

It in fаct wаѕ a lеisure account it.
Lοok complеx to far ԁelivered agгеeable fгom you!
By thе way, how сould we сommunісаte?


Feel free tо visіt my webpage; varistor

Anonyme a dit…

I've read a few just right stuff here. Certainly worth bookmarking for revisiting. I surprise how much effort you set to create one of these wonderful informative site.

my weblog: Resistor Resistance (Genwiki.Nl)

Anonyme a dit…

Thanks for one's marvelous posting! I truly
enjoyed reading it, you're a great author. I will always bookmark your blog and
will come back very soon. I want to encourage you to definitely continue your great work,
have a nice morning!

My page: rocket spanish review