Tackling the Complexity of Timing-Relevant Deployment Decisions in Multicore-Based Embedded Automotive Software Systems

被引:1
作者
Schwitzer, Wolfgang [1 ]
Schneider, Rolf [2 ]
Reinhardt, Dominik [3 ]
Hofstetter, Georg [4 ]
机构
[1] Tech Univ Muenchen, Munich, Germany
[2] AUDI AG, Ingolstadt, Germany
[3] BMW AG, Munich, Germany
[4] Elektron Fahrwerksysteme GmbH, Braunlingen, Germany
关键词
Crystal microstructure - Energy utilization - Application programs - Complex networks - Embedded systems - Computer architecture - Grain size and shape - Scheduling - Timing circuits - Open source software;
D O I
10.4271/2013-01-1224
中图分类号
U [交通运输];
学科分类号
08 ; 0823 ;
摘要
Multicore-based ECUs are increasingly used in embedded automotive software systems to allow more demanding automotive applications at moderate cost and energy consumption. Using a high number of parallel processors together with a high number of executed software components results in a practically unmanageable number of deployment alternatives to choose from. However correct deployment is one important step for reaching timing goals and acceptable latency, both also a must to reach safety goals of safety-relevant automotive applications. In this paper we focus at reducing the complexity of deployment decisions during the phases of allocation and scheduling. We tackle this complexity of deployment decisions by a mixed constructive and analytic approach. On the constructive side, we model a multicore-based embedded automotive software system as a tuple S = (L, R) with a given architecture L of the system's software component network and a given architecture R of the system's platform component network. On the analytic side, we derive models of the system's deployment as a tuple D = (M, Z), where the relation M: L -> R describes the allocation mapping from software components to platform components and the relation (Z:L -> N)(0) describes the scheduled start times of software components. The architectures L and R allow to describe hierarchically nested software-and platform-component networks. Hence, we are able to represent coarse-grain structures like domain functions and domain networks as well as fine-grain structures like individual driver-calls, algorithms, ECUs and CPU-cores as well. With all this architectural information contained in precise models, deployment alternatives (allocations and schedules) can be automatically derived and analyzed for conformance with timing requirements, given by a set of timing constraints C. To demonstrate the usability of the approach, we implemented an architecture description language in the academic open source tool CADMOS together with a prototypical allocation and scheduling support. We are evaluating the practicability of the approach within a case study in the German national joint project ARAMiS using a close-to-production multicorebased system in cooperation with Technische Universitat Munchen, AUDI AG and BMW AG.
引用
收藏
页码:478 / 488
页数:11
相关论文
共 13 条
[1]  
Asanovic K., 2006, TECHNICAL REPORT
[2]  
Broy M, 1998, SOFTWARE-CONC TOOL, V19, P57, DOI 10.1007/s003780050008
[3]  
BROY M, 2001, SPECIFICATION DEV IN
[4]  
Dijkstra E.W., 1982, SEL WRITINGS COMPUT, P60, DOI 10.1007/978-1-4612-5695-3_12
[5]  
Feilkas M., 2011, TECHNICAL REPORT
[6]  
Gilles K., 1974, INFORM PROCESSING, V74, P471
[7]  
Kahn G., 1977, INFORMATION PROCESSI, P993
[8]   STATIC RATE-OPTIMAL SCHEDULING OF ITERATIVE DATA-FLOW PROGRAMS VIA OPTIMUM UNFOLDING [J].
PARHI, KK .
IEEE TRANSACTIONS ON COMPUTERS, 1991, 40 (02) :178-195
[9]   CRITERIA TO BE USED IN DECOMPOSING SYSTEMS INTO MODULES [J].
PARNAS, DL .
COMMUNICATIONS OF THE ACM, 1972, 15 (12) :1053-&
[10]  
Sinnen O., 2007, TASK SCHEDULING PARA