Presentation is loading. Please wait.

Presentation is loading. Please wait.

CprE 588 Embedded Computer Systems

Similar presentations


Presentation on theme: "CprE 588 Embedded Computer Systems"— Presentation transcript:

1 CprE 588 Embedded Computer Systems
Prof. Joseph Zambreno Department of Electrical and Computer Engineering Iowa State University Lecture #8 – Architectural Specialization

2 CprE 588 – Embedded Computer Systems
Outline Motivation Related Work Design Flow Basic Concepts Multi-Metrics Experimental Results Conclusion L. Cai, A. Gerstlauer, and D. Gajski, “Retargetable Profiling for Rapid, Early System-Level Design Space Exploration”, In Proceedings of the Design Automation Conference (DAC), 2004. CprE 588 – Embedded Computer Systems Mar 3-5, 2009

3 Higher levels of abstraction
Motivation Time-to-market SoC Complexity Higher levels of abstraction Exploration Estimation Modeling level n Verification Refinement n+1 Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

4 System Level Estimation
Fast Accurate  Fidelity Different abstraction levels Wide range of metrics Wide variety of target implementation Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

5 CprE 588 – Embedded Computer Systems
Related Work Static analysis-based approaches Examples WCET (Y. Li), scheduling analysis (G. Buttazzo) Memory size estimation (Y. Zhao) Limitations Time-consuming, manual interference Dynamic simulation-based approaches Profiling tools (GNU profiler) Instruction-set simulators Multi-processor, multi-level co-simulation (P. Gerin) Trace-based simulation (K. Lahir, P. Lieverse) A simulation is required for each design alternative Target/host machine-dependent characteristics Operation-related data Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

6 CprE 588 – Embedded Computer Systems
Design Flow Refinement Estimation GUI Spec Simulation model Profiling Profiling Spec characteristics Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

7 CprE 588 – Embedded Computer Systems
Design Flow (cont.) Refinement Estimation GUI Spec Simulation model Profiling Profiling Spec characteristics Design decision Retargeting Refining Retargeting Back Implt annotation Characteristics Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

8 CprE 588 – Embedded Computer Systems
Design Flow (cont.) Refinement Estimation GUI Spec Instru- model menting Profiling Profiling Spec characteristics Design decision Retargeting Refining Retargeting Back Implt annotation Characteristics Refined Simulation/ Implt. Simulation- estimation model estimation Estimates Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

9 CprE 588 – Embedded Computer Systems
Explore and Trim Exploration Space Profiling Implt independent simulation One-time retargeting Implt dependent simulation ... /estimation ... Design Time Profiling Retargeting Simulation- stage stage estimation stage Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

10 CprE 588 – Embedded Computer Systems
Profiling Instrumentation-based profiling Bb: The execution counts of basic block b Cb,i,d: No. of computed characteristics for item type i and data type d in the block b Data type i: float, int, .. Item type d: metric dependant Ri,d = bC b,i,d Bb R = idRi,d int b,c; if( a = 0){ b++; } else{ c++; B1 = 1 C1,++,int = 1 B3 = 3 C3,++,int = 2 R++,int=  i [ Bi * Ci,++,int ] =1 x x 2 = 7 Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

11 CprE 588 – Embedded Computer Systems
Retargeting Impl. characteristics Ri,d: Spec. characteristics Wi,d : weights of components which the entity mapped to Manual Simulation E = id(Ri,d X Wi,d ) Time complexity: O(n) v c B1 B2 B R(B1)++,int= 7 W(PE1)++,int= 1 PE1 PE2 Mem E(B1,PE1)++,int= 7 x 1 = 7 CprE 588 – Embedded Computer Systems Mar 3-5, 2009

12 CprE 588 – Embedded Computer Systems
Challenges Separating dynamic and static analysis Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

13 CprE 588 – Embedded Computer Systems
Challenges (cont.) Separating dynamic and static analysis Supporting complex models Hierarchy Recursion v c B1 B2 B Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

14 CprE 588 – Embedded Computer Systems
Challenges (cont.) Separating dynamic and static analysis Supporting complex models Hierarchy Recursion Multi-dimensional analysis v c B1 B2 B Traditional approach Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

15 CprE 588 – Embedded Computer Systems
Challenges (cont.) Separating dynamic and static analysis Supporting complex models Hierarchy Recursion Multi-dimensional analysis Multi-entities Behavior, channel, port, variable v c B1 B2 B Entities Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

16 CprE 588 – Embedded Computer Systems
Challenges (cont.) Separating dynamic and static analysis Supporting complex models Hierarchy Recursion Multi-dimensional analysis Multi-entities Behavior, channel, port, variable Multi-metrics Operation, traffic, storage Static, dynamic v c B1 B2 B Entities Metrics CprE 588 – Embedded Computer Systems Mar 3-5, 2009

17 CprE 588 – Embedded Computer Systems
Challenges (cont.) Separating dynamic and static analysis Supporting complex models Hierarchy Recursion Multi-dimensional analysis Multi-entities Behavior, channel, port, variable Multi-metrics Operation, traffic, storage Static, dynamic Multi-levels Application, transaction, bus-functional v c B1 B2 B Entities Levels Metrics CprE 588 – Embedded Computer Systems Mar 3-5, 2009

18 CprE 588 – Embedded Computer Systems
Operation Metrics Entities: behavior Item types 84 basic types: ‘+’.., ‘=‘.., ‘if’.. Special operation types: global function Specification characteristics Mapping: behavior  PE Implementation characteristics Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

19 CprE 588 – Embedded Computer Systems
Traffic Metrics Entities: port, variable, channel, behavior Item types: in, out Specification characteristics Mapping: Port  PE Variable/channel  bus Implementation characteristics Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

20 Deriving Traffic Metrics
Profiling for the hierarchically instantiated behaviors and recursively called functions A.p1  B.p2  B.F1.p3  B.F2.P4 Different abstraction levels PE1 PE2 Beh1 Beh2 PE1 PE2 v1 Beh.port → Var Beh.port → Chan Chan in Chan Beh.port → Pin Chan.port  Chan CprE 588 – Embedded Computer Systems Mar 3-5, 2009

21 CprE 588 – Embedded Computer Systems
Storage Metrics Entity: variable, behavior Item types: local, global Specification characteristics Mapping: Variable  local/global memory Implementation characteristics Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

22 Exp. Result: Vocoder Profiling
Floating –point not required Dedicated hardware multipliers HW acceleration Table 1: Computational complexity of top-level Vocoder behaviors Table 2: Codebook operation mix Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

23 Exp. Result: Vocoder Profiling (cont.)
1500 2500 3500 4500 10 30 50 70 90 110 130 150 170 u Timing constraint (2990) Time (ms) Cost B (73, 2980) 8 behaviors  3 PEs Total 38 =6561 design alternatives Evaluation time: 3:15 hour 1 simulation (2.23s) 1 profiling (8.41s) 6561 retargeting (0.8s) 6561mapping (0.97s) yellows Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

24 Exp. Result: JPEG Encoder
Implementation characteristics vs implementation estimates 50 100 150 200 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Design alternatives Execution time (ms)) Estimates Char. Map 4 behaviors  2 PEs: 24 design alternatives Accuracy: 12.5%, fidelity = 100% Mar 3-5, 2009 CprE 588 – Embedded Computer Systems

25 CprE 588 – Embedded Computer Systems
Conclusion Dynamic profiling + static retargeting Profiling: helps completely comprehend the specification Retargeting: ultra-fast (linear time), enables initial, exhaustive exploration of design space. Multi-dimensional analysis Multi-entities Behavior, channel, variable, port Multi-abstraction levels Application level, transaction level, bus-functional level Multi-metrics Operation, traffic, storage Static, dynamic Mar 3-5, 2009 CprE 588 – Embedded Computer Systems


Download ppt "CprE 588 Embedded Computer Systems"

Similar presentations


Ads by Google