Minimizing System Modification in an Incremental Design Approach Incremental Design

advertisement
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
Incremental Design
Future
applications
Map and schedule
so that the
future applications
will have a chance
to fit.
N-1
Existing
applications
Modify (re-map)
so that the
current applications
will fit.
ROM
CPU
ASIC
Comm. Controller
 Static cyclic scheduling of processes and messages,
 Bus access scheme: time-division multiple-access.
Node
 Incremental design process
 Already existing system,
 Implement new functionality,
 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
Version N+1
Current
applications
Do not exist yet
at Version N!
 Mapping and scheduling of distributed
embedded systems for hard-real time applications
TDMA Round
 Mapping strategy
Cycle of two rounds
 a) Subset selection to minimize modification time,
 b) Two design criteria, objective function.
 Start from an already existing system with applications
 Implement new functionality on this system
Mapping and Scheduling
Problem Formulation
 To reduce design and testing time:
As few as possible modifications of the existing applications
 After the new functionality has been implemented:
It should be easy to add functionality in the future
Characterizing existing applications:
 Input
150
 A set of existing applications.
 A current application to be mapped.
 The system architecture.
 Output
 Requirements
a)
b)
c)
50
G3
70
G4
50
G5
G6
G9
G10
20
G7
Characterizing future applications:
 Typical WCETs
 Typical message sizes
 Smallest expected period Tmin
 Expected necessary processor time tneed
 Expected necessary bandwidth bneed
 a) constraints of the current application are satisfied
and minimal modifications are performed to the
existing applications.
C1P,
Mapping Strategy
C1m
 First criterion:
How well the resulted slack sizes
accommodate a future application
 Initial mapping and scheduling
360 ms
Periodic slack
min(40, 80, 0) = 0ms
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
Tmin
P1
Round 0 Round 1 Round 2 Round 3
Period 0
Period 1
Period 2
a)
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
C P2 = 120ms
Round 0 Round 1 Round 2 Round 3
b)
 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
 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() 
 Ri
Gi 
Three approaches to the subset selection problem
 Exhaustive Search (ES)
 Ad-Hoc Solution (AH)
 Subset Selection Heuristic (SH)
1200
AH
SH
ES
1000
800
600
400
200
0
320
400
480
560
640
Number of processes
140
Average Execution Time [min]
P2
Average Modification Cost R()
Slack
 Requirement b)
Objective function minimization:
AH
SH
ES
120
100
80
60
40
20
0
320
400
480
560
640
Number of processes
C  w1P (C1P )  w1m (C1m )  w2P max( 0, t need  C2P )  w2m max( 0, bneed  C2m )
Percentage of future applications [%]
Current
Future: P1
N1
N2
N3
Bus
G2
 b) new future applications can be mapped
on the resulted system.
Existing
N1
N2
N3
Bus
70
G8
 A mapping and scheduling of the current application,
so that the incremental design requirements are satisfied.
Design Criteria
G1
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
Download