1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1,...

30
12 An Abstract Modeling Approach Towards System- Level Design-Space Exploration F.N. van Wijk 1 , J.P.M. Voeten 1 , and A.J.W.M. ten Berg 2 1 Information and Communication Systems Group Faculty of Electrical Engineering, Eindhoven University of Technology 2 Philips Research Laboratories Eindhoven

Transcript of 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1,...

Page 1: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

12

An Abstract Modeling Approach Towards System-

LevelDesign-Space Exploration

F.N. van Wijk1, J.P.M. Voeten1, and A.J.W.M. ten Berg2

1Information and Communication Systems GroupFaculty of Electrical Engineering, Eindhoven University of

Technology

2Philips Research Laboratories Eindhoven

Page 2: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

2

12Contents

• Motivation• Modeling concepts• Simulation• Performance analysis• Design-space exploration exercise• Case study• Summary

Page 3: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

3

12MotivationTraditional hardware/software co-design methods

suffer from too many iterations that consume too much costly development time.

eed for specification and design methods that support fast exploration of design alternatives at an early stage of the design trajectory at a system-level of abstraction

Embedded systems have heterogenous architecture.Use Y-chart

Page 4: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

4

12The Y-chart

Application(s) Architecture

Mapping

PerformanceAnalysis

Source: A.C.J. Kienhuis. Design Space Exploration of Stream-based Dataflow Architectures: Methods and Tools, Ph.D. thesis, Delft University of Technology, 1999.

Page 5: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

5

12MotivationTraditional hardware/software co-design methods

suffer from too many iterations that consume too much costly development time.

eed for specification and design methods that support fast exploration of design alternatives at an early stage of the design trajectory at a system-level of abstraction

Embedded systems have heterogenous architecture.Use Y-chartUse abstract executable modelsTaking well-founded design decisions requires a well-

defined modeling languageUse POOSL

Page 6: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

6

12Contents

• Motivation• Modeling concepts• Simulation• Performance analysis• Design-space exploration exercise• Case study• Summary

Page 7: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

7

12Model structure

Mapping

System Model

Functional Model

Resource Model

Performance Analysis

R1 R2 R3 R4

T3T1

T2

Page 8: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

8

12Resource ModelThree basic, parameterizable resource types:• Processing Resource (P)• Communication Resource (C)• Storage Resource (S)

Page 9: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

9

12Resource ModelThree basic, parameterizable resource types:• Processing Resource (P)

Operate()()

| instruction: String; instructionDelay: Real |

task?resourceRequest(instruction);

instructionDelay := instructionTable getDelay(instruction);

delay(instructionDelay);

task!acknowledge;

Operate()().

• Communication Resource (C)• Storage Resource (S)

Page 10: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

10

12Resource ModelThree basic, parameterizable resource types:• Processing Resource (P)• Communication Resource (C)

Operate()()

| packetSize, duration: Real |

fifo?requestBW(packetSize);

delay(transferDelay * packetSize);

fifo!ready;

Operate()().

• Storage Resource (S)

Page 11: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

11

12Resource Model• Storage Resource (S)

Operate()()

| packetSize: Real |

sel

[room > 0]fifo?malloc(packetSize);

if room > packetSize then room := room - packetSize

else packetSize := room; room := 0 fi;

fifo!grant(packetSize, room)

or

fifo?free(packetSize);

room := room + packetSize;

fifo!ready(room)

les;

Operate()().

Page 12: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

12

12An example communication channel

Resource Model

C1 S2 P2P1 S1

M a p p i n g

Functional Model

T1 FIFO1

conceptually unbounded FIFO

T2FIFO2

Page 13: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

13

12Contents

• Motivation• Modeling concepts• Simulation• Performance analysis• Design-space exploration exercise• Case study• Summary

Page 14: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

14

12Structure diagram

StorageResource

ComputationResource

StorageResource

Communi-cations

Resource

Producer FifoA FifoB Consumer

ComputationResource

Functional Model

Resource Model

M a p p i n g

Page 15: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

15

12Message flow diagram

StorageResource

ComputationResource

StorageResource

Communi-cations

Resource

Producer FifoA FifoB Consumer

ComputationResource

packet(Packet)

ok()

packet(Packet)

ok()

packet(Packet)

ok()

reso

urce

Req

uest

(Str

ing,

Obj

ect)

ackn

owle

dge(

)

gran

t(In

tege

r, I

nteg

er)

free

(Int

eger

)

mal

loc(

Inte

ger)

read

y(In

tege

r)

gran

t(In

tege

r, I

nteg

er)

free

(Int

eger

)

mal

loc(

Inte

ger)

read

y(In

tege

r)

requ

estB

W(I

nteg

er)

read

y()

reso

urce

Req

uest

(Str

ing,

Obj

ect)

ackn

owle

dge(

)

Page 16: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

16

12Message flow diagram

StorageResource

ComputationResource

StorageResource

Communi-cations

Resource

Producer FifoA FifoB Consumer

ComputationResource

packet(Packet)

ok()

packet(Packet)

ok()

packet(Packet)

ok()

reso

urce

Req

uest

(Str

ing,

Obj

ect)

ackn

owle

dge(

)

gran

t(In

tege

r, I

nteg

er)

free

(Int

eger

)

mal

loc(

Inte

ger)

read

y(In

tege

r)

gran

t(In

tege

r, I

nteg

er)

free

(Int

eger

)

mal

loc(

Inte

ger)

read

y(In

tege

r)

requ

estB

W(I

nteg

er)

read

y()

reso

urce

Req

uest

(Str

ing,

Obj

ect)

ackn

owle

dge(

)

Page 17: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

17

12Contents

• Motivation• Modeling concepts• Simulation• Performance analysis• Design-space exploration exercise• Case study• Summary

Page 18: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

18

12Performance Analysis• Simulation-based reflexive performance

analysis:– Specify performance metrics as (temporal) rewards– Determine the long-run average metric values– Analyze their accuracy based on confidence intervals

• Use POOSL library classes:– Long-Run Sample Average (e.g. latency)– Long-Run Time Average (e.g. utilization)– Long-Run Rate Average (e.g. throughput)

Page 19: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

19

12Long-Run Time Average: utilization

Init()()utilization := new(LRTimeAverage) withConfidence(CL);Operate()().

Operate()()| instruction: String; instructionDelay, t: Real |task?resourceRequest(instruction);instructionDelay := instructionTable getDelay(instruction);timestamp t;utilization sampleRC(1,t,false);delay(instructionDelay);timestamp t;utilization sampleRC(0,t,true);task!acknowledge;Operate()().

Page 20: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

20

12Long-Run Rate Average: throughput

Init()()

LRMPEGDecoderOutputFrameRate := new(LRRateAverage) withConfidence(CL) setBatchSize(BS);

TOutput()().

TOutput()()

| t: Real |

OutputFrame()();

timestamp t;

LRMPEGDecoderOutputFrameRate sample(1,t);

TOutput()().

Page 21: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

21

12Contents

• Motivation• Modeling concepts• Simulation• Performance analysis• Design-space exploration exercise• Case study• Summary

Page 22: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

22

12Example: Producer-Filter-Consumer (PFC)

P1 P2 P3S2 C1 S5 S4 S7

Producer Filter Consumer

Fifo Fifof fl l

alternative 1

Page 23: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

23

12Example: Producer-Filter-Consumer (PFC)

alternative 2

P1 P2 P3S2 C1 S5 S4 S7

Producer Filter Consumer

Fifo Fifof fl l

Page 24: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

24

12PFC-example (cont’d)

Fu

nct

ion

al

Mo

de

lM

ap

pin

gS

che

du

lers

/

Arb

iters

Re

sou

rce

Mo

de

l

alternative 1

Page 25: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

25

12PFC-example (cont’d)

Fu

nct

ion

al

Mo

de

lM

ap

pin

gS

che

du

lers

/

Arb

iters

Re

sou

rce

Mo

de

l

alternative 2

Page 26: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

26

12PFC-example: Performance Analysis

[22.38,22.78]22.58Throughput Consumer (fps)

[0.2227,0.2271]0.2249Utilization P3

[0.2224,0.2268]0.2246Utilization P2

[0.2232,0.2275]0.2253Utilization P1

Confidence IntervalPoint EstimationMetric

Alternative 1 (90% confidence, 1% relative error bound)

[21.13,21.54]21.33Throughput Consumer (fps)

[0.2127,0.2169]0.2148Utilization P2

[0.4264,0.4349]0.4307Utilization P1

Confidence IntervalPoint EstimationMetric

Alternative 2 (90% confidence, 1% relative error bound)

Page 27: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

27

12Contents

• Motivation• Modeling concepts• Simulation• Performance analysis• Design-space exploration exercise• Case study• Summary

Page 28: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

28

12Picture-in-Picture TV case study• Functional model of PiPTV application mapped on

resource model of media processor, co-processors and central data bus => 64 (functional) + 17 (resource) + 6 (environment) = 87 parallel processes (total).

• Analyze long-run average bus and (c0-)processor utilizations and MPEG picture decoding time and frame rate.

• Compare results with outcome of similar experiments with Cadence VCC tool and prototype measurement results => judgement of applicability of developed method.

• Compare models at different levels of abstraction => explore accuracy vs. modeling time and simulation speed trade-off.

• Currently finishing off validation phase. Results of experiments expected early 2003.

Page 29: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

29

12Contents

• Motivation• Modeling concepts• Simulation• Performance analysis• Design-space exploration exercise• Case study• Summary

Page 30: 1212 An Abstract Modeling Approach Towards System-Level Design-Space Exploration F.N. van Wijk 1, J.P.M. Voeten 1, and A.J.W.M. ten Berg 2 1 Information.

PROGRESS 11/12/02

An Abstract Modeling Approach Towards System-Level Design-Space Exploration

30

12Summary• An abstract modeling approach to system-level design-

space exploration for complex heterogeneous systems has been presented.

• The approach supports fast exploration of alternative realizations using abstract executable formal models.

• Functional models are mapped onto Resource models (strict coupling, mutually disconnected resources) and together form a System Model.

• Strict coupling enables the modeling of non-determinism.• Both control and data oriented behavior can be

expressed.• Modeling of resource sharing is straightforward.• Simulation-based performance analysis yields

performance figures. Based on the formal semantics of POOSL, their accuracy can be estimated using confidence intervals.