Presentation is loading. Please wait.

Presentation is loading. Please wait.

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.

Similar presentations


Presentation on theme: "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."— Presentation transcript:

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 and Communication Systems Group Faculty of Electrical Engineering, Eindhoven University of Technology 2 Philips Research Laboratories Eindhoven

2 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration2 Contents Motivation Modeling concepts Simulation Performance analysis Design-space exploration exercise Case study Summary

3 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration3 Motivation Traditional 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

4 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration4 The Y-chart Application(s) Architecture Mapping Performance Analysis Source: A.C.J. Kienhuis. Design Space Exploration of Stream-based Dataflow Architectures: Methods and Tools, Ph.D. thesis, Delft University of Technology, 1999.

5 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration5 Motivation Traditional 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  Use abstract executable models Taking well-founded design decisions requires a well-defined modeling language  Use POOSL

6 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration6 Contents Motivation Modeling concepts Simulation Performance analysis Design-space exploration exercise Case study Summary

7 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration7 Model structure Mapping System Model Functional Model Resource Model Performance Analysis R1R2R3R4 T3T1 T2

8 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration8 Resource Model Three basic, parameterizable resource types: Processing Resource (P) Communication Resource (C) Storage Resource (S)

9 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration9 Resource Model Three 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)

10 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration10 Resource Model Three 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)

11 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration11 Resource 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()().

12 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration12 An example communication channel Resource Model C1S2P2P1S1 M a p p i n g Functional Model T1 FIFO1 conceptually unbounded FIFO T2 FIFO2

13 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration13 Contents Motivation Modeling concepts Simulation Performance analysis Design-space exploration exercise Case study Summary

14 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration14 Structure diagram Storage Resource Computation Resource Storage Resource Communi- cations Resource ProducerFifoAFifoBConsumer Computation Resource Functional Model Resource Model M a p p i n g

15 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration15 Message flow diagram Storage Resource Computation Resource Storage Resource Communi- cations Resource ProducerFifoAFifoBConsumer Computation Resource packet(Packet) ok() packet(Packet) ok() packet(Packet) ok() resourceRequest(String, Object) acknowledge() grant(Integer, Integer) free(Integer) malloc(Integer) ready(Integer) grant(Integer, Integer) free(Integer) malloc(Integer) ready(Integer) requestBW(Integer) ready() resourceRequest(String, Object)acknowledge()

16 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration16 Message flow diagram Storage Resource Computation Resource Storage Resource Communi- cations Resource ProducerFifoAFifoBConsumer Computation Resource packet(Packet) ok() packet(Packet) ok() packet(Packet) ok() resourceRequest(String, Object) acknowledge() grant(Integer, Integer) free(Integer) malloc(Integer) ready(Integer) grant(Integer, Integer) free(Integer) malloc(Integer) ready(Integer) requestBW(Integer) ready() resourceRequest(String, Object) acknowledge()

17 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration17 Contents Motivation Modeling concepts Simulation Performance analysis Design-space exploration exercise Case study Summary

18 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration18 Performance 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)

19 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration19 Long-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()().

20 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration20 Long-Run Rate Average: throughput Init()() LRMPEGDecoderOutputFrameRate := new(LRRateAverage) withConfidence(CL) setBatchSize(BS); TOutput()(). TOutput()() | t: Real | OutputFrame()(); timestamp t; LRMPEGDecoderOutputFrameRate sample(1,t); TOutput()().

21 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration21 Contents Motivation Modeling concepts Simulation Performance analysis Design-space exploration exercise Case study Summary

22 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration22 Example: Producer-Filter-Consumer (PFC) P1 P2 P3S2C1 S5S4 S7 ProducerFilterConsumer Fifo ffll alternative 1

23 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration23 Example: Producer-Filter-Consumer (PFC) alternative 2 P1 P2 P3S2C1 S5S4 S7 ProducerFilterConsumer Fifo ffll

24 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration24 PFC-example (cont’d) Functional Model Mapping Schedulers/ Arbiters Resource Model alternative 1

25 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration25 PFC-example (cont’d) Functional Model Mapping Schedulers/ Arbiters Resource Model alternative 2

26 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration26 PFC-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)

27 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration27 Contents Motivation Modeling concepts Simulation Performance analysis Design-space exploration exercise Case study Summary

28 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration28 Picture-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.

29 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration29 Contents Motivation Modeling concepts Simulation Performance analysis Design-space exploration exercise Case study Summary

30 1212 PROGRESS 11/12/02An Abstract Modeling Approach Towards System-Level Design-Space Exploration30 Summary 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.


Download ppt "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."

Similar presentations


Ads by Google