Presentation is loading. Please wait.

Presentation is loading. Please wait.

Hardware-Software Co-partitioning for Distributed Embedded Systems.

Similar presentations


Presentation on theme: "Hardware-Software Co-partitioning for Distributed Embedded Systems."— Presentation transcript:

1 Hardware-Software Co-partitioning for Distributed Embedded Systems

2 2 Outline 1. Introduction 2. Related Work 3. Distributed Embedded System and System Model 4. Multi-Level Partitioning 5. Case Study

3 3 1. Introduction Hardware-Software Codesign Distributed Embedded System Motivation  Task Graph  Physical Restrictions Distributed Embedded System Codesign (DESC)  Object Modeling Technique (OMT)  Linear Hybrid Automata (LHA)  SES Models

4 4 1. Introduction (cont’) Multi-Level Partitioning  Partitioning Algorithm  Sharing, Clustering Case Studies

5 5 2. Related Work Target Embedded System  1-CPU and 1-ASIC Topology  n-CPU and m-ASIC Topology Optimal Codesign Heuristic Codesign

6 6 2. Related Work (cont’) Codesign of 1-CPU and 1-ASIC Topology  Kumar et al. 1993  Kalavade and Lee 1993  Thomas et al. 1993  Gupta and De Micheli 1993  Barros et al. 1994

7 7 2. Related Work (cont’) Codesign of n-CPU and m-ASIC Topology  Optimal Codesign Approaches: Mixed integer linear programming Prakash and Parker 1992 Exhaustive search Wolf 1994, Haworth et al. 1993 D’Ambrosio and Hu 1994

8 8 2. Related Work (cont’)  Heuristic Codesign Approaches: Iterative and Constructive Iterative: Dick and Jha 1998 --- MOGAC, CORDS Dick and Jha 1999 --- MOCYN

9 9 2. Related Work (cont’) Constructive: Wolf 1996 --- object-oriented Yen and Wolf 1996 --- sensitivity-driven Dave, Lakshminarayana, and Jha 1999 --- COSYN Dave and Jha 1999 --- COFTA Dave and Jha 1998 --- COHRA Our proposed: Distributed Embedded System Codesign (DESC)

10 10 3. Distributed Embedded Systems and System Models An embedded computer system is a system which uses computers but is not a general- purpose computer. In 1971, there were about 142,000 computers world-wide. In 1999, there are now some 350 to 400 million personal computers alone and at least of magnitude more embedded devices.

11 11 3. Distributed Embedded Systems and System Models (cont’) There are several reasons to build distributed hardware engine for embedded system  Cheaper  Faster response time  The devices control may be physically distributed

12 12 3. Distributed Embedded Systems and System Models (cont’) System Models  Object Modeling Technique (OMT) Models Object Model Dynamic Model Functional Model

13 13 3. Distributed Embedded Systems and System Models (cont’)  Linear Hybrid Automata (LHA) Models Internal system model For verifying systems  SES Models SES/workbench is a popular modeling and simulation tool for system performance evaluation

14 14 4. Multi-Level Partitioning Multi-Level Partitioning (MLP) Three Main Phases  Codesign Space Exploration (CSE)  System Structural Partitioning (SSP)  Binary Search Copartitioning (BSC)

15 Fig. 5.1 Overall Flow Chart of Multi-Level Partitioning Overall Flow Chart of Multi-Level Partitioning

16 Detailed Flow Diagram of Multi-Level Partitioning

17 17 where x is a object CPD: Cost-Performance Difference 4. Multi-Level Partitioning (cont’)

18 18 4. Multi-Level Partitioning (cont’) CPU/ASIC Sharing Sharing Threshold Distance (STD) SLI: Subsystem Location Inter-distance

19 19  Interconnect Cost (IC) Model IC (X 1, X 2 ) = α × SLI(S 1, S 2 ) × #Link(X 1, S 2 ) × BW(X 1, S 2 ) + EC(X 1 ) SLI: Subsystem Location Inter-distance S 1 and S 2 : Subsystems X 1 and X 2 : A component (PE or ASIC) α : A parameter that depends on the interconnection technology #Link(X 1, S 2 ) : The number of links between X 1 and S 2 BW(X 1, S 2 ) : The communication bandwidth between X 1 and S 2 EC(X 1 ) : The cost for enhancing X 1 such that both S 1 and S 2 can use X 1. 4. Multi-Level Partitioning (cont’)

20 20 Algorithm 5.2 Share Components Algorithm Share_Components(s){ /* s=, s i =(s i1, s i2 ) where s i1 is the number of PE in subsystem S i and s i2 is the number of ASIC in subsystem S i. s i1, s i2  {0,1, ……} */ for (i = 1, i  , i++) { for (j = i, j  , j++) { if SLI(s i, s j )  STD { if (s i1  0  s j1  0) Share_PE(S i, S j ); /* Refer to Algorithm 5.3 */ if (s i2  0  s j2  0) Share_ASIC(S i, S j ); /* Refer to Algorithm 5.4 */ } 4. Multi-Level Partitioning (cont’)

21 21 Hardware Clustering and Software Grouping  In DESC, hardware clustering is based on Kernighan and Lin basic graph partitioning algorithm, but it is enhanced to include DEMS characteristics.  Software grouping technique similar to load balancing on multiple processors 4. Multi-Level Partitioning (cont’)

22 22 4. Multi-Level Partitioning (cont’) Analysis and Validation of MLP  Complexity analysis r: the number of objects  : the number of subsystems

23 23 5. Case Studies Vehicle Parking Management System (VPMS) Examples of Sharing and Clustering in MLP Application of MLP to Coal Mine System

24 24 Vehicle Parking Management System (VPMS)  VPMS Specifications A VPMS consists of three subsystems: ENTRY management, EXIT management, and DISPLAY. An ENTRY (or an EXIT) subsystem consists of three parts: a ticket facility, a gate controlled by a gate-motor, and a pair of sensors. A DISPLAY subsystem 5. Case Studies (cont’)

25 25  Constraints for the VPMS system A maximum cost of $1,300, A maximum display response time of 14,000 µs, and A maximum ENTRY (EXIT) gate response time of 250 µs. 7. Case Study (cont’)

26 26  Specification and Mapping of VPMS VPMS is described using OMT models consisting of Object Dynamic, and Functional models. 5. Case Study (cont’)

27 Object Model of VPMS

28 Dynamic Model of a DISPLAY Subsystem

29 Functional Model of a DISPLAY Subsystem

30 30 LHA Model of VPMS  Hardware LHA Model  Software LHA Model 5. Case Study (cont’)

31 Hardware LHA of a DISPLAY Subsystem

32 Software LHA of a DISPLAY Subsystem

33 33 SES Models  Using SES/workbench Model A car-simulator An ENTRY management subsystem An EXIT management subsystem A DISPLAY subsystem 5. Case Study (cont’)

34 34  SES Model of a DISPLAY Subsystem 5. Case Study (cont’)

35 35 Applying MLP to VPMS 5. Case Study (cont’)

36 36 5. Case Study (cont’)

37 37 VPMS Emulation  Block Diagram for Prototype D(S C, H S, S M ) 5. Case Study (cont’)

38 38  VPMS Emulation Results 5. Case Study (cont’)

39 39 Examples of Sharing and Clustering in MLP  Sharing and clustering techniques in MLP based on several variants of the VPMS case study.  How object oriented modeling can be advantageous in hierarchical partitioning.  Coal mine control and monitoring system 5. Case Study (cont’)

40 Advantage of Sharing in MLP

41 Advantage of Clustering in MLP


Download ppt "Hardware-Software Co-partitioning for Distributed Embedded Systems."

Similar presentations


Ads by Google