Minimizing System Modification in an Incremental Design Approach Paul Pop, Petru Eles, Traian Pop, Zebo Peng Department of Computer and Information Science, Linköpings universitet, Sweden Summary I/O Interface RAM Future applications Do not exist yet at Version N! Current applications Map and schedule so that the future applications will have a chance to fit. N Version N+1 Incremental Design N-1 Existing applications Modify (re-map) so that the current applications will fit. n Mapping and scheduling of distributed embedded systems for hard-real time applications ROM CPU ASIC Comm. Controller n Static cyclic scheduling of processes and messages, n Bus access scheme: time-division multiple-access. Node n Incremental design process n Already existing system, n Implement new functionality, n a) Existing system modified as little as possible, b) new functionality can be easily added to the system. S0 S1 S2 S0 S3 S1 S2 S3 Slot n Mapping strategy TDMA Round Cycle of two rounds n a) Subset selection to minimize modification time, n b) Two design criteria, objective function. n Start from an already existing system with applications n Implement new functionality on this system Mapping and Scheduling Problem Formulation n To reduce design and testing time: As few as possible modifications of the existing applications n Input n After the new functionality has been implemented: It should be easy to add functionality in the future Characterizing existing applications: 150 n A set of existing applications. n A current application to be mapped. n The system architecture. n Output n Requirements a) b) c) 50 Γ3 70 Γ4 50 Γ5 Γ6 Γ9 Γ10 20 Γ7 Characterizing future applications: § Typical WCETs § Typical message sizes § Smallest expected period Tmin § Expected necessary processor time tneed § Expected necessary bandwidth bneed n a) constraints of the current application are satisfied and minimal modifications are performed to the existing applications. P1 n Initial mapping and scheduling n Requirement a) Subset selection problem Select that subset Ω of existing applications so that the current application fits and the modification cost R(Ω) is minimized: R (Ω ) = ∑R Γi ∈Ω i Three approaches to the subset selection problem n Exhaustive Search (ES) n Ad-Hoc Solution (AH) n Second criterion: C2P, C2m How well the slack is distributed in time to accommodate Tmin, tneed and bneed Paul Pop, Petru Eles, Traian Pop, Zebo Peng: An approach to Incremental Design of Distributed Embedded Systems, Design Automation Conference, 2001 n Subset Selection Heuristic (SH) n Requirement b) Objective function minimization: C = w1P (C1P ) + w1m (C1m ) + w2P max(0, tneed − C 2P ) + w2m max(0, bneed − C2m ) Average Modification Cost R(Ω) 360 ms Periodic slack min(40, 80, 0) = 0ms n min(40, 0, 80) = 0ms min(80, 80, 40) = 40ms S1 S2 S3 S1 S2 S3 S1 S2 S3 S1 S2 S3 C P2 = 40ms a) Round 0 Round 1 Round 2 Round 3 Period 0 Period 1 Period 2 min(40, 40, 40) = 40ms min(40, 40, 40) = 40ms min(80, 80, 40) = 40ms S1 S2 S3 S1 S2 S3 S1 S2 S3 S1 S2 S3 CP 2 = 120ms b) Round 0 Round 1 Round 2 Round 3 T mi Mapping Strategy 1200 AH SH ES 1000 800 600 400 200 0 320 400 480 560 640 Number of processes 140 Average Execution Time [min] Slac k AH SH ES 120 100 80 60 40 20 0 320 Percentage of future applications [%] Curren tP2 n First criterion: C1P, C1m How well the resulted slack sizes accommodate a future application N1 N2 N3 Bus Γ2 n b) new future applications can be mapped on the resulted system. Existin g Future P1 : N1 N2 N3 Bus 70 Γ8 n A mapping and scheduling of the current application, so that the incremental design requirements are satisfied. Design Criteria Γ1 400 480 560 640 Number of processes 120 MS* 100 AD 80 60 40 20 0 40 1 of240 16 April 25, 2006 80 160 Number of processes in the current application