Gaspard Methodology The Y Model approach - PowerPoint PPT Presentation

1 / 45
About This Presentation
Title:

Gaspard Methodology The Y Model approach

Description:

Paving vector = identifies origin of each pattern inside the array of ports at ... Paving limit is given by the cardinality associated to the repeated part (in ... – PowerPoint PPT presentation

Number of Views:24
Avg rating:3.0/5.0
Slides: 46
Provided by: Luk100
Category:

less

Transcript and Presenter's Notes

Title: Gaspard Methodology The Y Model approach


1
Gaspard MethodologyThe Y Model approach
  • Models and UML profiles

Arnaud CUCCURU, phd student ModEasy meeting,
Lille, February 2005
2
Outline
  • Y Model overview
  • Common modeling paradigms
  • Application modeling
  • Hardware Architecture modeling
  • Association modeling

3
Y model overview (1/2)
4
Y overview (2/2)
  • Component Oriented Modeling
  • Factorization mechanisms

Y
  • Expression of data dependences
  • Data parallelism expression
  • Resource dimensionning
  • Grid modeling
  • Spatial and temporal mapping of an application
    on an architecture

5
Common modeling paradigms
  • Component oriented modeling
  • Components libraries
  • Factorization mechanisms

6
Common modeling paradigms Component Oriented
Modeling (1/2)
  • Benefits
  • Strong encapsulation (to ease reuse)
  • Hierarchichal description (to handle complexity)

7
Common modeling paradigms Component Oriented
Modeling (2/2)
ComponentB
InterfaceZ
InterfaceB
InterfaceB
InterfaceZ
ComponentC
InterfaceC
InterfaceC
Component Reusable design element
Connector Messages media
8
Common modeling paradigms Components Libraries
  • Predefined components ElementaryComponent
  • No internal structure description
  • Supposed to be implemented in a library

9
Common modeling paradigms Factorization
mechanisms (1/4)
Metaclass ElementaryComponent
Multidimentional Cardinalities
  • Definition of a repetition space
    RepetitiveComponent
  • Use of multidimentional cardinalities on
    structural elements (parts and ports)
  • Use of smart connectors to interconnect
    factorized elements RepetitiveConnector

Mechanisms inspired by the Array Oriented Language
10
Common modeling paradigms Factorization
mechanisms (2/4)
Component
Ports
Parts
Connectors
Potential factorization
11
Common modeling paradigms Factorization
mechanisms (2/4)
Component
a3 ComponentA
2

a2 ComponentA
2
3
6

a1 ComponentA
2

Ports
Potential factorization
gt Cardinalities
12
Common modeling paradigms Factorization
mechanisms (2/4)
Component
a ComponentA 3
2
3
6

Potential factorization
Parts
gt Cardinalities
13
Common modeling paradigms Factorization
mechanisms (2/4)
Component
RepetitiveConnector
RepetitiveConnector
a ComponentA 3
2
3
6

Several informations (vectors) are associated to
Repetitive Connectors to describe connection
patterns between ports Origin, Paving, Fitting
Potential factorization
Connectors
gt RepetitiveConnector
14
Common modeling paradigms Factorization
mechanisms (2/4)
RepetitiveComponent
Component
Factorization expressed In the context of a
repetitive component
RepetitiveConnector
RepetitiveConnector
a ComponentA 3
2
3
6

Note A repetitive component contains a
repetition of a single part
15
Common modeling paradigms Factorization
mechanisms (3/4)
Component
a3 ComponentA
1
0
5
4
2
a2 ComponentA
1
1
3
0
2
0
1
a1 ComponentA
0
1
0
  • Basic idea Handle ports with cardinalities as
    arrays of ports
  • Dependences can be defined between patterns
    inside ports in the boundaries, and ports of the
    repeated parts

16
Common modeling paradigms Factorization
mechanisms (3/4)
Component
Origin 0 Paving 2
Origin 0 Paving 1
a3 ComponentA
1
0
5
4
2
a2 ComponentA
1
1
3
0
2
0
1
a1 ComponentA
0
1
0
  • Paving vector gt identifies origin of each
    pattern inside the array of ports at the
    boundary, from a given Origin vector
  • Paving limit is given by the cardinality
    associated to the repeated part (in this case 3)

17
Common modeling paradigms Factorization
mechanisms (3/4)
Component
Origin 0 Paving 2
Origin 0 Paving 1
a3 ComponentA
1
2
0
5
4
2
a2 ComponentA
1
1
3
1
0
2
0
1
a1 ComponentA
0
1
0
0
  • An index vector is implicitely associated to
    each repetition of the part (Coordinates in the
    repetition space)
  • Origin of the pattern associated to each part
    origin index x paving

18
Common modeling paradigms Factorization
mechanisms (3/4)
Component
Origin 0 Paving 2
Origin 0 Paving 1
a3 ComponentA
1
0
5
Fitting 1
Fitting
4
2
a2 ComponentA
1
1
3
0
2
0
1
a1 ComponentA
0
1
0
  • Fitting vector gt determines the ports that
    belong to a given pattern inside of an array
    (from the origin of the pattern given by the
    Paving)
  • Fitting limit is given by the cardinality
    associated to the ports of the repeated part

19
Common modeling paradigms Factorization
mechanisms (3/4)
RepetitiveComponent
a ComponentA 3
RepetitiveConnector Origin0 Paving1 Fttin
g
RepetitiveConnector Origin0 Paving2 Fitti
ng1
2
3
6

Final compact representation
20
Common modeling paradigms Factorization
mechanisms (4/4)
Metaclass ElementaryComponent
Metaclass RepetitiveComponent
  • Expression of connections between repeated
    instances SelfConnector
  • Connection between different points of the
    repetition space

Metaclass RepetitiveConnector
21
Common modeling paradigms Factorization
mechanisms (4/4)
Component
a3 ComponentA
prov
req
a2 ComponentA
prov
req
a1 ComponentA
prov
req
  • Example Ring topology
  • Each instance is able to communicate with its
    neighbour

22
Common modeling paradigms Factorization
mechanisms (4/4)
RepetitiveComponent
a ComponentA 3
prov
req
SelfConnector RepetitionSpaceDependance
1 Modulo true
  • Factorization of parts in the context of a
    RepetitiveComponent
  • Connection between points of the repetition
    space Connection between different instances of
    the repeated part gt SelfConnector

23
Common modeling paradigms Factorization
mechanisms (4/4)
RepetitiveComponent
2 1 mod 3
a3 ComponentA
a2 ComponentA
a1 ComponentA
2
1
0
prov
req
prov
req
prov
req
1 1 mod 3
0 1 mod 3
  • index of the neighbour index
    RepititionSpaceDependence mod RepetitionSpace
    size (i.e. Cardinality of the repeated part)

24
Application modeling
  • Data Parallelism expression
  • Spatial and temporal dimensions unification
  • Inter-repetition dependences

25
Application modeling
  • AppComponent Function
  • Ports Data handled (mainly multidimentional
    arrays)
  • Connectors Data dependencies
  • gt Expression of applications via expression of
    Data dependencies

26
Application modelingData parallelism expression
(1/2)
array
array
pattern
pattern
  • Example Computations on a 4x4 array to produce
    a 2x2
  • Input and output arrays can be decomposed into
    patterns

27
Application modeling Data parallelism
expression (1/2)
1,1
array
array
0,1
1,0
Origin 0,0 Paving 2,0,0,2 Fitting
1,0,0,1
Origin 0,0 Paving 1,0,0,1 Fitting
,
0,0
  • Example Computations on a 4x4 array to produce
    a 2x2
  • Input and output arrays can be decomposed into
    patterns
  • Each pattern can be computed independently
    Potential Data Parallelism
  • gt Represented with the common factorization
    mechanisms

28
Application modelingData parallelism expression
(2/2)
array
array
pattern
pattern
29
Application modelingData parallelism expression
(2/2)
RepetitiveComponent
array
array
pattern
pattern
30
Application modelingData parallelism expression
(2/2)
RepetitiveComponent
array
array
pattern
pattern
p Part
31
Application modelingData parallelism expression
(2/2)
RepetitiveComponent
p Part
4,4
2,2

2,2
32
Application modelingData parallelism expression
(2/2)
RepetitiveComponent
RepetitiveConnector
RepetitiveConnector
p Part 2,2
4,4
2,2

2,2
33
Application modeling Spatial and Temporal
dimensions unification (1/2)
Infinite vector
Infinite vector
  • Example Signal processing application Infinite
    stream of data consumed and produced
  • Idea Infinite stream Infinite dimension of an
    Array
  • Spatial and temporal dimension in an array
  • gt Modeling of time and space dependences with
    the same formalism

34
Application modelingSpatial and Temporal
dimensions unification (2/2)
RepetitiveComponent
RepetitiveConnector
RepetitiveConnector
p Part
Origin 0 Paving 1 Fitting
Origin 0 Paving 1 Fitting




35
Application modeling Inter repetition
dependences (1/2)
  • Inter repetition dependences

36
Application modelingInter repetition
dependences (2/2)
RepetitiveComponent
RepetitiveConnector
RepetitiveConnector
p Part 3
Origin 0 Paving 1 Fitting
Origin 0 Paving 1 Fitting
3
1
1
3
SelfConnector RepetitionSpaceDependance
1 Modulo false
37
Hardware Architecture modeling
  • Resources classification
  • Complex connection patterns expression
  • Grid topologies modeling

38
Hardware Architecture modeling
  • HwComponent Hardware resource

39
Hardware Architecture modeling Resources
classification
  • Passive to support data. Example RAM, ROM, SAM
  • Active able to read or write in passive
    resources, with or without modifications, and to
    sequence operations. Example CPU, DMA.
  • Interconnect interconnection between passive and
    active elements, or active and active. Example
    Bus, static/dynamic interconnection networks,

40
Hardware Architecture modeling Complex
connection patterns (1/2)
CompoundHwComponent Omega8x8
41
Hardware Architecture modeling Complex
connection patterns (2/2)
HwRepetitiveComponent OmegaStage
Crossbar2x2 2,2
RepetitiveConnector
RepetitiveConnector
8
2
2
8
origin 0 paving 2,2 fitting 1
origin 0 paving 4,1 fitting 2
42
Hardware Architecture modeling Grid topologies
modeling (1/2)
  • Example 4x4 cyclic grid of communicating PEs

43
Hardware Architecture modeling Grid topologies
modeling (2/2)
HwRepetitiveComponent CyclicGrid4x4
SelfConnector RepetitionSpaceDependance
1,0 Modulo true
pe PE 4,4
SelfConnector RepetitionSpaceDependance
1,0 Modulo true
  • Example 4x4 cyclic grid of communicating PEs

44
Association modeling
  • In progress

45
Association modeling
  • Association distribution scheduling
  • distribution spatial mapping
  • code on active (and passive)
  • data on passive
  • communications on paths
  • scheduling temporal mapping
  • for tasks
  • memory allocation
Write a Comment
User Comments (0)
About PowerShow.com