48
1/48 Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient Exploration de l’espace de conception des architectures reconfigurables Lilian Bossuet Soutenance de Thèse de Doctorat, Université de Bretagne Sud Laboratoire d’Électronique des Systèmes Temps Réels Amphithéâtre de l’IUP de Lorient, Vendredi 10 septembre 2004

Exploration de l’espace de conception des architectures reconfigurables

Embed Size (px)

DESCRIPTION

Exploration de l’espace de conception des architectures reconfigurables. Lilian Bossuet Soutenance de Thèse de Doctorat, Université de Bretagne Sud Laboratoire d’Électronique des Systèmes Temps Réels. Amphithéâtre de l’IUP de Lorient, Vendredi 10 septembre 2004. Plan. - PowerPoint PPT Presentation

Citation preview

Page 1: Exploration de l’espace de conception des architectures reconfigurables

1/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Exploration de l’espace de conception des architectures reconfigurables

Lilian Bossuet

Soutenance de Thèse de Doctorat, Université de Bretagne Sud

Laboratoire d’Électronique des Systèmes Temps Réels

Amphithéâtre de l’IUP de Lorient, Vendredi 10 septembre 2004

Page 2: Exploration de l’espace de conception des architectures reconfigurables

2/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Plan

Besoin de flexibilité ? Solution matérielle reconfigurable !

Contribution et positionnement des travaux

Spécifications des applications et des architectures

Méthode de projection architecturale

Méthode d’exploration architecturale

Applications

Conclusion, perspectives et bilan

Page 3: Exploration de l’espace de conception des architectures reconfigurables

3/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Besoin de flexibilité ?

Radio Logicielle différentes normes différents opérateurs interopérabilité évolution des services adaptation à l’environnement

Protection des réseaux évolution des attaques évolution des protections mise à jour

Page 4: Exploration de l’espace de conception des architectures reconfigurables

4/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

entrée 1 entrée 2entrée 1 entrée 2entrée 1 entrée 2

Plate-forme et flexibilité

Solution logicielle

ALU

Banc de registres

µP

sortie

REGREGREGREG

mémoiresinstructions

données

entrée 1 entrée 2

Solution flexible

Solution matérielle dédiée

ASIC 1 ASIC 2 ASIC 3

Solution performante

010111010100101111010101010010101111110000101111110101001010111111

Configuration 1

010100101011111100001011111101010010111010100101111010101010111111

Configuration 2

111111010100101110101001011110101 010100101011111100001001010111111

Configuration 3

010100101011111100001011111101010010111010100101111010101010111111

Configuration 4

Solution matérielle reconfigurable

Architecture Reconfigurable

Page 5: Exploration de l’espace de conception des architectures reconfigurables

5/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Solution matérielle reconfigurable

architecture physiquereconfigurable

éléments configurables de

calculs et mémoires

réseaux configurables de

connexions

architecture logique 1

configuration 1

application 1

configuration

architecture logique 2

configuration 2

application 2

reconfiguration

Page 6: Exploration de l’espace de conception des architectures reconfigurables

6/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Système reconfigurable sur puce (R-SOC)

RSOCRSOC

cluster 1cluster 1 cluster 2cluster 2

cluster 4cluster 4cluster 3cluster 3

Contrôleur de tâchesContrôleur de tâches

Mémoire de donnéesMémoire de données

Mém.Config.Mém.Config.

Mém.Instr.Mém.Instr.

E/ S.E/ S.

logiqueconfigurable

Bloc 3

Bloc 2

Bloc 1

Tranche 1

Bloc 1

Tranche 2

Bloc 1

Tranche 3

Bloc 1

Tranche 4

Interface de configuration Contrôleur DMA

Bus 128 bits

Interface PCI Processeur ARCContrôleurmémoire

Mémoire locale128 x 32 bits

Unité de traitement 32 bits

Unité de traitement 32 bits

Mémoire locale128 x 32 bits

Unité de traitement 32 bits

Unité de traitement 32 bits

Mémoire locale128 x 32 bits

Unité de traitement 32 bits

Unité de traitement 32 bits

Mémoire locale128 x 32 bits

Unité de traitement 32 bits

Mult 16 x 24 Mult 16 x 24

Unité de contrôle

DCTEstimateur demouvements

FIR RISC

Décodeurde Viterbi

RAM

FPGA

Control Interface

Interconnections

CoeursLABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

E/S

E/S

E/S

E/S

E/S

E/S

E/S

E/S

E/S

E/S

E/S

E/S

E/S

E/S

E/S

E/S

E/S

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

E/S

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

E/S

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

E/S

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

LABs

RAM81 Koctets

RAM 72 octets RAM 576 octetsBloc DSP

Switch

Switch

Dnode Dnode

Dnode Dnode

Switch

Switch

Switch

Dnode Dnode

Dnode Dnode

Switch

Switch

Dnode

Dnode

Dnode

Dnode

Switch

Dnode

Dnode

Dnode

Dnode

mémoirecache

données

mémoirecache

instructions

processeurstructure

reconfigurable

mémoireexterne

Mémoire A256 x 32

Mémoire B256 x 32

FPGAGTI1

IN

GTI1

Mémoire256 x 32

Mémoire256 x 32

FPGAALGO1

BC

Mémoire C256 x 32

Mémoire D256 x 32

FPGAGTI2

GTI1

OUTop op op op op op

op op op op op op

op op op op op op

op op op op op op

configurationconfiguration

banc deregistresbanc deregistres

unité degénérationd’adresse

unité degénérationd’adresse unité de

contrôleunité decontrôle

statusstatusbufferbuffer

rDPA

Bus mémoire externe

? ? ?

Page 7: Exploration de l’espace de conception des architectures reconfigurables

7/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Plan

Besoin de flexibilité ? Solution matérielle reconfigurable !

Contribution et positionnement des travaux

Spécifications des applications et des architectures

Méthode de projection architecturale

Méthode d’exploration architecturale

Applications

Conclusion, perspectives et bilan

Page 8: Exploration de l’espace de conception des architectures reconfigurables

8/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

explorationalgorithmique

explorationarchitecturale

cible architecturale

FPGA

gros grain

C1 C2

+*

cycles

opérations

+* +*test test

C18

Ordonnancement séquentiel

C1 C2

+*

cycles

opérations

+*

+*

C3 C4

Ordonnancement pipeline

C1 C2

+*

cycles

opérations

6 iterations

ALU ALU ALU ALU

ALU ALU ALU ALU

ALU ALU ALU ALU

ALU ALU ALU ALUcible architecturale

FPGA

gros grain

LUT LUT LUT

LUT LUT LUT

LUT LUT LUT

RAM

RAM

RAM

RAM

RAM

RAM

RAM

RAM

RAM

RAM

RAM

RAM

RAM

RAM

RAM

RAM

µP µP

DSP

DSP

DSP

DSP

gros grain

grain finFPGA

Espace d’exploration : 3 dimensions

explorationarchitecturale

LUT LUT LUT

LUT LUT LUT

LUT LUT LUT

LUT LUT LUT

LUT LUT LUT

LUT LUT LUT

cible architecturale

FPGA

gros grain

ALU ALU ALU ALU

ALU ALU ALU ALU

ALU ALU ALU ALU

ALU ALU ALU ALU

ALU ALU ALU

ALU ALU ALU

ALU ALU ALU

ALU ALU ALU

ALU ALU ALU

Page 9: Exploration de l’espace de conception des architectures reconfigurables

9/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

routagetaille LUT

taille cluster

VPR

Betz 1997Université de Toronto

Canada

famille

parallélismepipeline

Enzler 2000Institut Technologique

Fédéral de Suisse E.T.H.

ordonnancementparallélismedéroulage

Le Moullec 2003

LESTER

Bossuet 2004

Bilavarn 2002

taille des élémentsfonctions

taille des clustersrépartition hiérarchique

taille des élémentsfonctions

taille des clustersrépartition hiérarchique

LESTER

Bossuet 2004

Bilavarn 2002

DESIGN TROTTER

LESTER

Bossuet 2004

Bilavarn 2002

Le Moullec 2003

Positionnement d’outils d’exploration

explorationalgorithmique

explorationarchitecturale

cible architecturale

FPGA

gros grain

explorationalgorithmique

explorationarchitecturale

cible architecturale

FPGA

gros grain

explorationalgorithmique

explorationarchitecturale

cible architecturale

FPGA

gros grain

explorationalgorithmique

explorationarchitecturale

cible architecturale

FPGA

gros grain

domaine 1

domaine 2

domaine 3

famille

Enzler 2000Institut Technologique

Fédéral de Suisse E.T.H.

Choi 2002Université de Caroline Sud

USA

Lagadec 2001UBO

FranceMADEO-BET

VPR

Betz 1997Université de Toronto

Canada

routagetaille élémenttaille cluster

config configMoritz 1998

M.I.T.USA

KressArray

Nageldinger 1997Université de Kaiserlautern

Allemagne

Raw +-

largeur de l’espace deconception

famille

LESTER

Bilavarn 2002

Précisiondes

estimations

+ -

Page 10: Exploration de l’espace de conception des architectures reconfigurables

10/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Environnement Design TrotterSpécification de l’applicationlangage C

HCDFG

Courbes de compromisressources vs cycles

Parser

ESTIMATIONSYSTEME

Y. Le Moullec

PROJECTIONMATERIELLE

S. Bilavarn

116 Cellules Logiques1 RAM

0 lignes 3 états24 Entrées/Sorties

Th = 5 nsTex = 30 ns

XCV400EPQ240

FPGA

Librairie

estimationsprécises

Architecture modélisée

PROJECTIONARCHITECTURALE

L. Bossuet

68,80%

100% 100%93,80%

ADD/SUB MUL/DIV COMP LOGIC niveau 1

69%

niveau 2

10%

niveau 3

21%

H2 H2

H2

H2

H2

H1

H2 H2

H2

H2

H2

H1

H2 H2

H2

H2

H2

H1H0

MémoireLocale

MémoireLocale

Unité de traitement

Unité de traitement

Unité de traitement

H2

Mul Mul

estimationtaux d’occupation

estimationdistribution des communications

4 5 6 7 8 9 10 cycles

4

2

3

1

5

Nombreressources

add

sous

ram(read)

ram(write)

rom

mul

Réalisation matérielleparallèle

Réalisation logicielle

séquentielle

Page 11: Exploration de l’espace de conception des architectures reconfigurables

11/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

1SpécificationsApplications

et Architectures

2Projection

Architecturale

3Exploration

Architecturale

Plan

Besoin de flexibilité ? Solution matérielle reconfigurable !

Contribution et positionnement des travaux

Spécifications des applications et des architectures

Méthode de projection architecturale

Méthode d’exploration architecturale

Applications

Conclusion, perspectives et bilan

Page 12: Exploration de l’espace de conception des architectures reconfigurables

12/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Spécification des applications : exemple, DCT-1D

X5 X2 X4 X3 X6 X1 X7 X0

+-

x

+-

x

+-

x

+-

x

+-

x

+-

x

+-

x

+-

x

+-

x

+-

x

+-

x

+-

x x

+ +

+ ++

Y7 Y5 Y3 Y1 Y6 Y4Y2 Y0

C4 C4 C4 C4

C6 C2 C6 C2

C5 C7 C3 C1

Graphe flot de données Choix d’un ordonnancement

informations nécessaires ???

4 5 6 7 8 9 10 cycles

4

2

3

1

5

Nombreressources

4 multiplieurs4 soustracteurs3 additionneurslargeur mémoire

add

sous

ram(read)

ram(write)

rom

mul

Page 13: Exploration de l’espace de conception des architectures reconfigurables

13/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Les communications au cœur de la spécification

D’après des études sur la consommation de puissance des ressources d’architectures à grain fin (LESTER, Univ Princeton, ...) Répartition de la consommation de puissance :

Ce sont les ressources de routage qui consomment le plus de puissance !

LOGIQUE

E/S

ROUTAGE

Page 14: Exploration de l’espace de conception des architectures reconfigurables

14/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Réduire l’impact du routage ? Sources : LESTER, Univ Princeton, ...

Conclusion : rapprocher physiquement les ressources qui communiquent le plus

longueur double 31%

longueur triple20%

longue3%

locale46%

longueur double 25%

longueur triple21%

longue23%

locale31%

Utilisation moyenne des ressources de routage

Part de la consommation des ressources de routage

Page 15: Exploration de l’espace de conception des architectures reconfigurables

15/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Nombre decommunications

ACG : mise en évidence des communications

-

20

14

8

(4)

(4) (3)

X5 X2 X4 X3 X6 X1 X7 X0

+-

x

+-

x

+-

x

+-

x

+-

x

+-

x

+-

x

+-

x

+-

x

+-

x

+-

x

+-

x x

+ +

+ ++

Y7 Y5 Y3 Y1 Y6 Y4Y2 Y0

C4 C4 C4 C4

C6 C2 C6 C2

C5 C7 C3 C1

C[0••7] Y[0••7]53 3

8 8

ACG

TRANSFORMATION

NœudsTraitements

NœudsMémoires

X[0••7]

Nombred’opérateurs(ordonnancement)

4 multiplieurs4 soustracteurs3 additionneurslargeur mémoire

4 5 6 7 8 9 10 cycles

4

2

3

1

5

Nombreressources

add

sous

ram(read)

ram(write)

rom

mul

Page 16: Exploration de l’espace de conception des architectures reconfigurables

16/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Modélisation fonctionnelle des architectures

Modélisation possible d’un large spectre d’architectures grain fin, gros grain, hétérogène indépendante de la technologie

Utilisation d’une vue fonctionnelle de l’architecture les ressources sont décrites par les fonctions qu’elles réalisent

La modélisation hiérarchique à deux types d’éléments

Elément Hiérarchique

Elément Fonctionnel

• nom et ID

• liste des opérations réalisables

• liste des mémorisations réalisables

• nombre

Les éléments hiérarchiques sont utilisés pour modéliser le routage et la hiérarchie de l’architecture

Les éléments fonctionnels sont utilisés pour modéliser les ressources de traitements et de mémorisation de l’architecture

• nombre d’éléments contenus

• liste des éléments contenus

• nombre

• nom et ID

Page 17: Exploration de l’espace de conception des architectures reconfigurables

17/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Modélisation fonctionnelle : exemple Cas d'une architecture gros grain hiérarchique (Chameleon)

Élément Hiérarchique Élément Fonctionnel

3 Éléments hiérarchiques• HO = H1*3• H1 = H2*3• H2 = F0*2 + F2*3 + F2*2 + F3

3 Éléments fonctionnels• FO => Unité mémoire• F1 => Unité de traitement• F2 => Mul

H2 H2

H2

H2

H2

H1

H2 H2

H2

H2

H2

H1

H2 H2

H2

H2

H2

H1H0

MémoireLocale

MémoireLocale

Unité de traitement

Unité de traitement

Unité de traitement

H2

Mul Mul

Page 18: Exploration de l’espace de conception des architectures reconfigurables

18/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Cas d'une architecture gros grain hiérarchique (Chameleon) représentation grammaticale

Modélisation fonctionnelle : exemple

<MODEL> Chameleon

<HIERARCHICAL> H0 <ATTRIBUTES> ID:=1 number:=1 h_number:=1 f_number:=0 <ELEMENT> element_1:=2 /* H1 */ <ENDELEMENT> <ENDATTRIBUTES><ENDHIERARCHICAL>

<HIERARCHICAL> H1 <ATTRIBUTES> ID:=2 number:=4 h_number:=1 f_number:=0 <ELEMENT> element_1:= 3 /* H2 */ <ENDELEMENT> <ENDATTRIBUTES><ENDHIERARCHICAL>

<HIERARCHICAL> H2 <ATTRIBUTES> ID:=3 number:=3 h_number:=0 f_number:=3 <ELEMENT> element_1:= 4 /* F0 */ element_2:= 5 /* F1 */ element_3:= 6 /* F2 */ <ENDELEMENT> <ENDATTRIBUTES><ENDHIERARCHICAL>

<FUNCTIONAL> F0 <ATTRIBUTES> ID:=4 number:=2 <MEMORY> m1 RAM 32 128 <ENDMEMORY> <ENDATTRIBUTES><ENDFUNCTIONAL>

<FUNCTIONAL> F1 <ATTRIBUTES> ID:=5 number:=3 <OPERATOR> f1 ALU 32 <ENDOPERATOR> <ENDATTRIBUTES><ENDFUNCTIONAL>

<FUNCTIONAL> F2 <ATTRIBUTES> ID:=6 number:=2 <OPERATOR> f1 MUL_S 16 <ENDOPERATOR> <ENDATTRIBUTES><ENDFUNCTIONAL>

<ENDMODEL> Chameleon

H2 H2

H2

H2

H2

H1

H2 H2

H2

H2

H2

H1

H2 H2

H2

H2

H2

H1H0

MémoireLocale

MémoireLocale

Unité de traitement

Unité de traitement

Unité de traitement

H2

Mul Mul

Page 19: Exploration de l’espace de conception des architectures reconfigurables

19/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

1SpécificationsApplications

et Architectures

2Projection

Architecturale

3Exploration

Architecturale

Plan

Besoin de flexibilité ? Solution matérielle reconfigurable !

Contribution et positionnement des travaux

Spécifications des applications et des architectures

Méthode de projection architecturale

Méthode d’exploration architecturale

Applications

Conclusion, perspectives et bilan

Page 20: Exploration de l’espace de conception des architectures reconfigurables

20/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Projection architecturale Faire une projection de l’ACG de l’application sur le modèle de

l’architecture spécifiée

Stratégie : émuler les outils de CAO en rapprochant hiérarchiquement les opérateurs

et mémoires qui communiquent le plus Estimations :

répartition des communications dans l’architecture regroupement hiérarchique des opérateurs et des mémoires taux d’utilisation des ressources de l’architecture

-

20

14

8

(4)

(4) (3)

C[0••7] Y[0••7]53 3

8 8

X[0••7]

PROJECTION H2 H2

H2

H2

H2

H1

H2 H2

H2

H2

H2

H1

H2 H2

H2

H2

H2

H1H0

MémoireLocale

MémoireLocale

Unité de traitement

Unité de traitement

Unité de traitement

H2

Mul Mul

Page 21: Exploration de l’espace de conception des architectures reconfigurables

21/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Projection architecturalefavoriser la localité hiérarchique

nœudsmémoires

(m) (n)x

(1) (n)y

(1) (1)z

Nœuds les pluscommunicants

+/-

+/-

H2

+/-

H2

RAM

Taille A

H2

RAM

Taille A

Taille B

Compatibilité des nœuds,réalisation hiérarchique

a)

b)

c)

(m-1) (n-1)?

- +?

- +

??

(n-1)A +?

+?

A Bz

Regroupement des nœuds,création du nœud composite

nœudscomposites

nœudstraitements

- +

A +

A B

Page 22: Exploration de l’espace de conception des architectures reconfigurables

22/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Projection architecturaleproposer un intervalle d’estimations

Niveau d’abstraction élevé application : HCDFG architecture : modélisation fonctionnelle

Utilisation de trois algorithmes rapides algorithme minimum algorithme intermédiaire algorithme maximum

architecture A

architecture C

architecture B

Coût de communication

Résultat de l’outil de synthèse

Résultat de l'estimation

Page 23: Exploration de l’espace de conception des architectures reconfigurables

23/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Projection architecturale : les trois algorithmes

ACG initial

(1)

+

–×

14

20

8

(2) (2)

+

–×

9.33 5.33

(1)

(1) (1)

× –20

7.33

MINIM

UM

L’algorithme minimum considère que toutes les communications entre x et - se font dans le nœud composite

+

–×

9.33 5.33

(1)

(1) (1)

× –10

7.33

10INTERMEDIAIRE

L’algorithme intermédiaire privilégie les communications entre x et - au niveau du nœud composite

+

–×

7 4

(1)

(1) (1)

× –5

11

5

5 5

MAXIMUM

L’algorithme maximum répartie uniformément les communications sans prendre en compte la spécificité du nœud composite

Page 24: Exploration de l’espace de conception des architectures reconfigurables

24/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Algorithme Minimum Exemple

+

–×

9.33 5.33

(1)

(1) (1)

× –20

7.33étape 2

H1

+/-

×

+/- +/-

×H2H2

-

5.33

(1)

× –20

× +9.33

7.33étape 3

H1

+/-

×

+ +/-

×H2H2

-

(1)

+

–×

14

20

8

(2) (2)étape 1début

Modifications de l’ACG Modifications de l’architecture

H1

+/-

×

+/- +/-

×H2H2

+/-

élément fonctionnel non utilisé

élément fonctionnel utilisé

× –20

× + –14.66

7.33étape 4fin

H1

+/-

×

+ -

×H2H2

-

Nc H2 : 34,66 Nc H1 : 7,33

A chaque étape un nouveau nœud composite est créé

Les éléments fonctionnels sont successivement alloués

Le processus se termine lorsqu’il ne reste que des nœuds composites

A la fin du processus il est possible de calculer le nombre de communications dans les éléments hiérarchiques H1 et H2

Page 25: Exploration de l’espace de conception des architectures reconfigurables

25/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

(1)

+

–×

14

20

8

(2) (2)

+

–×

7 4

(1)

(1) (1)

× –5

11

– (1)

×+ –16

×+ –16

× –5

21

étape 1début

étape 2

étape 3

étape 4fin

Modifications de l’ACG Modifications de l’architecture

H1

+/-

×

+/- +/-

×H2H2

+/-

H1

+/-

×

+/- +/-

×H2H2

-

H1

+

×

+/- +/-

×H2H2

-

H1

+

×

- +/-

×H2H2

-

Nc H2 : 21 Nc H1 : 21

5

5 5

×(1)

5

912

Algorithme MaximumAlgorithme Intermédiaire

+

–×

9.33 5.33

(1)

(1) (1)

× –10

7.33étape 2

H1

+/-

×

+/- +/-

×H2H2

-

× –10

étape 3

H1

+/-

×

+ +/-

×H2H2

-

(1)

+

–×

14

20

8

(2) (2)étape 1début

Modifications de l’ACG Modifications de l’architecture

H1

+/-

×

+/- +/-

×H2H2

+/-

× –10

× – +24.66

7.33étape 4fin

H1

+/-

×

+ -

×H2H2

-

Nc H2 : 34,66 Nc H1 : 7,33

10

×(1) × –10

14.66

7.33

Page 26: Exploration de l’espace de conception des architectures reconfigurables

26/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

De la projection à l’exploration architecturale

PROJECTIONARCHITECTURALE

Architecture modélisée

H2 H2

H2

H2

H2

H1

H2 H2

H2

H2

H2

H1

H2 H2

H2

H2

H2

H1H0

MémoireLocale

MémoireLocale

Unité de traitement

Unité de traitement

Unité de traitement

H2

Mul Mul

68,80%

100% 100%93,80%

ADD/SUB MUL/DIV COMP LOGIC

niveau 169%

niveau 210%

niveau 321%

Estimation dutaux d’occupation

Estimations de la distribution hiérarchique des communications

niveau 1

58%

niveau 3

25%

niveau 2

17%niveau 2

41%

niveau 3

35%

niveau 1

24%

minimum intermédiaire maximum

-

20

14

8

(4)

(4) (3)

C[0••7] Y[0••7]53 3

8 8

ACG

X[0••7]

EXPLORATIONARCHITECTURALE

Page 27: Exploration de l’espace de conception des architectures reconfigurables

27/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Plan

Besoin de flexibilité ? Solution matérielle reconfigurable !

Contribution et positionnement des travaux

Spécifications des applications et des architectures

Méthode de projection architecturale

Méthode d’exploration architecturale

Applications

Conclusion, perspectives et bilan

1SpécificationsApplications

et Architectures

2Projection

Architecturale

3Exploration

Architecturale

Page 28: Exploration de l’espace de conception des architectures reconfigurables

28/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Flot d’exploration architecturale

Choix des fonctions critiques

Projection architecturaleExploration architecture

Choix d’une architecture commune

Estimation pour l’application communications & taux d’utilisation

F6F5

F4F3

F2

F1

Spécification HCDFG desfonctions de l’application

ESTIMATION SYSTEME

Fonctions critiquesde l’application

ArchitectureModélisée

n°1

Spécification desarchitectures

Architecture choisie

Page 29: Exploration de l’espace de conception des architectures reconfigurables

29/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Localité des communications

F2 est plus critique que F1 pour la localité des communications si et seulement si :

On peut faire la même chose avec le nombre de ressources mémoires

Nombre de ressources de traitement

Nombre de communications

F1

F2

Aire critique

il y a en moyenne de nombreusescommunications pour peu de ressources

Ncomm1 Ncomm2

Nress1

Nress2

Ncomm2

Nress2

Ncomm1

Nress1

Page 30: Exploration de l’espace de conception des architectures reconfigurables

30/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Méthodologie d’exploration architecturale

Nombre d’éléments fonctionnels

Taille des clusters

Taille des mémoires

Point de départ

Point d’arrivée

Taille des clusters

Taille mémoire Choix des clusters

Taux d’utilisation

Choix compromis

Étude de l’ACG

Sur la ou les fonctions critiques de l’application

Sur l’ensemble des fonctions de l’application

Page 31: Exploration de l’espace de conception des architectures reconfigurables

31/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Plan

Besoin de flexibilité ? Solution matérielle reconfigurable !

Contribution et positionnement des travaux

Spécifications des applications et des architectures

Méthodes de projection architecturale

Méthodes d’exploration architecturale

Applications

Conclusion, perspectives et bilan

Page 32: Exploration de l’espace de conception des architectures reconfigurables

32/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

ICAM : Intelligent CAMera - LIST CEA

Détection de mouvement par différence d’intensité et mise à jour de l’image de fond

Applications gestion du flux automobile mouvement de foule (métro)

Page 33: Exploration de l’espace de conception des architectures reconfigurables

33/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

ICAM : fonctions critiques

nombre de communications

nom

bre

de r

ess

ou

rces

nombre de communicationsn

om

bre

de c

ycl

es

envelop

testGravité

reconstDilat

etiquet

errorBin

gethistogram

add

sub

div

absolute

thresholdAdapt

convolveTabHisto

histoThershold

setvalue

Plan de criticité selon la Localité spatiale des communications

Plan de criticité selon la congestion temporelle des ressources communications

Ressources de traitementFonction

Nombre decommunications

Nombre decycles add/sub mul/div comp logique

Ressources

mémoires

envelop 15 643 324 1 360 648 66 18 84 327*20 +

3*35536

testGravité 7 523 319 264 758 60 1 176 59 15*20

Page 34: Exploration de l’espace de conception des architectures reconfigurables

34/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

ICAM : étude de l’ACG

Répartition des communications dans la fonction testGravité

50.3 % mémoires <--> mémoires 32.9 % comparateurs <--> mémoires 16.4% comparateurs <--> logiques 0.2 % add/sous <--> mémoires 0.1 % add/sous <--> mul/div 0.1 % mul/div <--> mémoires

Deux types de cluster comparateurs + logiques + mémoires add/sous + mul/div + mémoires

Taille mémoire Choix des clusters

Taille des clusters

Taux d’utilisation

Choix compromis

Étude de l’ACG

Hniveau3

Hniveau2

cluster1

+/- +/-

×/÷

+/-

×/÷

20*16 20*16cluster2

L

CP

20

*16

L L L

CP

C1 C2 C2

C1 C2 C2

C1 C2 C2

C1 C2 C2

C1 C2 C2

Hniveau2

C1 C2 C2

C1 C2 C2

C1 C2 C2

C1 C2 C2

C1 C2 C2

Hniveau2

C1 C2 C2

C1 C2 C2

C1 C2 C2

C1 C2 C2

C1 C2 C2

<- Niveau 1 ->

Page 35: Exploration de l’espace de conception des architectures reconfigurables

35/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

ICAM : exploration taille mémoireTaille mémoire

Étude de l’ACG

Taille mémoire Choix des clusters

Taille des clusters

Taux d’utilisation

Choix compromis

Étude de l’ACG

cluster 2

54

55

56

57

1 * 20 2 * 20 3 * 20 4 * 20

taille de l'élément mémoire

% d

es

com

mu

nic

ati

on

sau

niv

eau

1

cluster 1

54

55

56

57

1 * 20 2 * 20 3 * 20 4 * 20

taille de l'élément mémoire

% d

es

com

mu

nic

ati

on

sau

niv

eau

1

Page 36: Exploration de l’espace de conception des architectures reconfigurables

36/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

ICAM : choix des clustersÉtude de l’ACG

Taille mémoire Choix des clusters

Taille des clusters

Taux d’utilisation

Choix compromis

Étude de l’ACG

55

56

57

58

59

% d

es

com

mu

nic

ati

on

s

{1

AD

D, 1

MU

L}

{1

CO

MP, 1

LO

GIC

}

{1

AD

D, 1

MU

L}

{2

CO

MP, 1

LO

GIC

}

{2

AD

D, 1

MU

L}{

2 C

OM

P, 1

LO

GIC

}

{1

AD

D, 1

MU

L}{

4 C

OM

P, 1

LO

GIC

}

{2

AD

D, 1

MU

L}{

4 C

OM

P, 1

LO

GIC

}

{1

AD

D, 1

MU

L}

{6

CO

MP, 1

LO

GIC

}

{2

AD

D, 1

MU

L}{

6 C

OM

P, 1

LO

GIC

}

Page 37: Exploration de l’espace de conception des architectures reconfigurables

37/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

ICAM : tailles des clustersÉtude de l’ACG

Taille mémoire Choix des clusters

Taille des clusters

Taux d’utilisation

Choix compromis

Étude de l’ACG

0%

20%

40%

60%

80%

100%

4 cluster 2 6 cluster 2 8 cluster 2 10 cluster 2

% d

es

com

mu

nic

ati

on

s

0%

20%

40%

60%

80%

100%

4 cluster 1 6 cluster 1 8 cluster 1 10 cluster 1

% d

es

com

mu

nic

ati

on

s

niveau 1

niveau 2

niveau 3

Coût descommunications

++

+

-

Page 38: Exploration de l’espace de conception des architectures reconfigurables

38/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

ICAM : Choix finalÉtude de l’ACG

Taille mémoire Choix des clusters

Taille des clusters

Taux d’utilisation

Choix compromis

Étude de l’ACG

98,50% 96,10%

36,70%

70,10%

ADD/SUB MUL/DIV COMP LOGIC

Taux d’utilisationdes ressources de

l’architecturepour l’application

complète

Hn2

Hn2

Hn2

Hn2

Hn2

Hn2

Hn2

Hn2

Hn2

Hn2

Hn2 Hn2

Hn2

Hn2

Hn2

Hn2

Hn2

Hn2

Hn2

Hn2

Hn2

Hn2 Hn2 Hn2

Hn2

Hn2

Hn2

Hn2

Hniveau3

niveau 3

Hniveau3={28 Hniveau2 }

Hniveau2

C1 C2

C1

C1

C1

C1

C2

C2

C2

C2

C2

C2

C2

C2C3

niveau 2

Hn2

Hniveau2={5C1, 9C2, C3}

cluster1

×/÷

20*16

+/- +/-

+/- +/-

cluster2

CP L LCP

CPCP CP

20*16 20*16

cluster3

35536

niveau 1

C1

C2

C3

Grosgrain

Grainfin

Mémoire

Page 39: Exploration de l’espace de conception des architectures reconfigurables

39/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

ICAM : Distribution des communications

0%

20%

40%

60%

80%

100%

hist

oThe

rsho

ld

test

Gravité

geth

istog

ram

etiq

uet

enve

lop

dila

tBin

reco

nstD

ilat

erro

rBin

% d

es

com

munic

ati

ons niveau 1

37%niveau 3

28%

niveau 2

35%

niveau 1

niveau 2

niveau 3++

+

-

niveau 1

58%

niveau 3

25%

niveau 2

17%niveau 2

41%

niveau 3

35%

niveau 1

24%

testGravité envelop

niveau 1

57%

niveau 3

13%

niveau 2

30%

Distribution avec des clusters de grande taille:

cluster 1 : 20 add/sous, 10 mul, 5 memcluster 2 : 21 comp, 12 log, 6 mem

Page 40: Exploration de l’espace de conception des architectures reconfigurables

40/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

ICAM : Conclusion

Définition d’une architecture un cluster gros grain un cluster grain fin un cluster mémoire (image) cluster de niveau 2 de grande taille

Autres applications de traitement d’images compression Matching Pursuit (décodage) compression norme MPEG-2 (codeur)

Définition d’un type d’architecture adapté au domaine du traitement d’images

Page 41: Exploration de l’espace de conception des architectures reconfigurables

41/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

AES : Advanced Encryption Standard

Algorithme de chiffrement par blocs à clé secrète 10 rounds sans générateur de clefs

Architecture résultat de l’exploration :

Hn2

niveau 3

Hniveau3={4 Hniveau2 }

Hn2

Hn2 Hn2

Hniveau3

cluster1RAM

×/÷+/-

CP L L

niveau 1

Gros grain

Grain fin

Mémoire

C1

niveau 2

Hniveau2={4C1}

Hniveau2

C1 C1

C1 C1

Hn2

Page 42: Exploration de l’espace de conception des architectures reconfigurables

42/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

AES : Résultats

niveau 1

69%

niveau 2

10%

niveau 3

21%

Taux d’utilisationdes ressources de l’architecture

68,80%

100% 100%93,80%

ADD/SUB MUL/DIV COMP LOGIC

Répartition des communications

niveau 1

50%

niveau 2

14%

niveau 3

36% Architecture traitement image diminution de 19% au niveau 1 augmentation de 15% au niveau 3

Page 43: Exploration de l’espace de conception des architectures reconfigurables

43/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Applications : conclusion

Possibilité de définir des architectures par domaine d’applications

Proposer des architectures avec des "zones" adaptées à des parties d’une application

Intervalles de résultat

0%

20%

40%

60%

80%

100%

MAX 19% 62% 30% 60%

MIN 66% 98% 58% 90%

INTER 37% 63% 37% 69%

ICAM MPEG Matching AES

% des communications au plus bas niveau de hiérarchie (niveau 1)

Page 44: Exploration de l’espace de conception des architectures reconfigurables

44/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Plan

Besoin de flexibilité ? Solution matérielle reconfigurable !

Contribution et positionnement des travaux

Spécifications des applications et des architectures

Méthode de projection architecturale

Méthode d’exploration architecturale

Applications

Conclusion, perspectives et bilan

Page 45: Exploration de l’espace de conception des architectures reconfigurables

45/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Conclusion

Principales contributions Mise en évidence de l’impact des communications sur les

performances des architectures reconfigurables Développement d’un outil d’estimation de l’adéquation

architecture/application Définition d’une méthodologie d’exploration architecturale

Réduction significative du fossé entre la description algorithmique des applications et la définition des architectures reconfigurables par une approche originale intervenant dès les phases de spécification algorithmique visant un large espace de conception architecturale convergeant rapidement vers une solution efficace

Identification de motifs architecturaux adaptés à des domaines d’applications

Page 46: Exploration de l’espace de conception des architectures reconfigurables

46/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Perspectives

Intégration de l’approche au sein d’un flot de conception complet renforcement du lien avec l’outil MADEO spécialisation de la modélisation pour des architectures spécifiques

(Systolic Ring, aSoC) prise en compte de la reconfiguration dynamique

Développement d’un Générateur Automatique d’Architecture Reconfigurable (après GAUT, GAAR ?) basé sur une approche logique floue

Proposition d’architectures reconfigurables à multi-granularités adaptées à des domaines émergents à spécifications mouvantes architectures reconfigurables sécurisées architectures reconfigurables pour la radio logicielle

Page 47: Exploration de l’espace de conception des architectures reconfigurables

47/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Bilan des travaux de thèse Publications

6 conférences internationales dont 5 IEEE 3 conférences nationales 1 article pour la revue IEEE Transaction on Computer Aided Design en

révision 1 article à paraître dans la revue International Journal of Embedded

Systems,Inderscience Publishers

Collaborations Internationale : Université du Massachusetts - VSPG Nationale : Université de Bretagne Occidentale - A&S En projet : Université de Montpellier - LIRMM

Enseignements Cours : Architecture, Conception et Utilisation des FPGA (ENS Cachan et

DEA électronique UBS) TP/ TD initiation aux FPGA Xilinx (licence GEII IUP Lorient)

Page 48: Exploration de l’espace de conception des architectures reconfigurables

48/48

Soutenance de Thèse Vendredi 10 septembre 2004, IUP Lorient

Merci,Questions ...

[email protected]