This Article 
 Bibliographic References 
 Add to: 
Task Construction for Model-Based Design of Embedded Control Software
April 2006 (vol. 32 no. 4)
pp. 254-264
Shige Wang, IEEE
Constructing runtime tasks, or operating system-level processes/threads, from the components of software design models is crucial to the model-based development of embedded control software. A better method should explore more design choices and reduce the overheads of the runtime system to meet the timing and resource constraints of embedded control software. This paper presents a novel, two-step method for systematic and automatic construction of runtime tasks from software design models. It uses graph transformation to construct a task set meeting system-level end-to-end (e2e) timing constraints. Its first step decomposes the system-level e2e timing constraints into the components' timing constraints, which form a necessary condition for any valid and feasible schedule. The second step iteratively merges the components into tasks and sequences their executions. A thus-constructed task set is proven to meet both intercomponent precedence and system-level e2e timing constraints and to minimize runtime overheads by minimizing the total number of resultant tasks. Our evaluation results based on randomly generated software models have shown that the proposed method outperforms commonly used methods and is also scalable.

[1] AIRES Group, http://kabru.eecs.umich.eduaires, 2001.
[2] A. Burns and A.J. Wellings, “A Structured Design Method for Hard Real-Time Systems,” Technical Report YCS-93-199, Univ. of York, Heslington, York, U.K., , 1993.
[3] P. Cornwell and A. Wellings, “Transaction Specification for Object-Oriented Real-Time Systems in HRT-HOOD,” Lecture Notes in Computer Science (LNCS 1031), pp. 365-378, 1996.
[4] D. de Niz and R. Rajkumar, “Time Weaver: A Software-through-Models Framework for Embedded Real-Time Systems,” Proc. 2003 ACM SIGPLAN Conf. Language, Compiler, and Tool for Embedded Systems, pp. 144-152, June 2003.
[5] ETAS, Inc., “ETAS Ascet Manual,” 2001.
[6] Ford Motor Company, General Motors Corporation, and Motorola Automotive and Industrial Electronics Group, “SmartVehicle Challenge Problems,”, 2000.
[7] M.R. Garey and D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness. New York: W.H. Freeman and Company, 1979.
[8] R. Gerber, S. Hong, and M. Saksena, “Guaranteeing Real-Time Requirements with Resource-Based Calibration of Periodic Processes,” IEEE Trans. Software Eng., vol. 21, no. 7, pp. 107-131, July 1995.
[9] A. Girault, B. Lee, and E.A. Lee, “Hierarchical Finite State Machines with Multiple Concurrency Models,” IEEE Trans. Computer-Aided Design of Integrated Circuits and Systems, vol. 18, no. 6, pp. 742-760, 1999.
[10] Z. Gu, S. Kodase, S. Wang, and K.G. Shin, “A Model-Based Approach to System-Level Dependency and Real-Time Analysis of Embedded Software,” Proc. Ninth IEEE Real-Time and Embedded Technology and Applications Symp. (RTAS 2003), pp. 78-87, May 2003.
[11] J. Jonsson and K.G. Shin, “Deadline Assignments in Distributed Hard Real-Time Systems with Relaxed Locality Constraints,” Proc. IEEE Int'l Conf. Distributed Computing Systems, pp. 432-440, May 1997.
[12] S. Kim, S. Cho, and S. Hong, “Schedulability-Aware Mapping of Real-Time Object-Oriented Models to Multi-Threaded Implementations,” Proc. IEEE Real-Time Computing Systems and Applications Symp., pp. 7-14, 2000.
[13] H. Kopetz, “The Time-Triggered Model of Computation,” Proc. IEEE Real-Time Systems Symp., pp. 168-177, Dec. 1998.
[14] C.M. Krishna and K.G. Shin, Real-Time Systems. The McGraw-Hill Companies, 1997.
[15] J. Liu, “Responsible Frameworks for Heterogeneous Modeling and Design of Embedded Systems,” PhD dissertation, Dept. of Electrical Eng. and Computer Science, Univ. of California at Berkeley, 2001.
[16] J. Liu and E.A. Lee, “Timed Multitasking for Real-Time Embedded Software,” IEEE Control Systems Magazine, vol. 23, no. 1, pp. 65-75, Feb. 2003.
[17] J.R. Merrick, S. Wang, K.G. Shin, J. Song, and W. Milam, “Priority Refinement for Dependent Tasks in Large Real-Time Software,” Proc. 11th IEEE Real-Time and Embedded Technology and Applications Symp. (RTAS 2005), pp. 365-374, Mar. 2005.
[18] T. Quatrani, Visual Modeling with Rational Rose and UML. Addison-Wesley, 1998.
[19] M. Saksena, P. Karvelas, and Y. Wang, “Automatic Synthesis of Multi-Tasking Implementations from Real-Time Object-Oriented Models,” Proc. IEEE Symp. Object-Oriented Real-Time Distributed Computing, pp. 360-367, Mar. 2000.
[20] B. Selic, G. Gullekson, and P.T. Ward, Real-Time Object-Oriented Modeling. John Wiley & Sons, 1994.
[21] J. Stankovic, “VEST: A Toolset for Constructing and Analyzing Component Based Operating Systems for Embedded and Real-Time Systems,” technical report, Univ. of Virginia, http://www. , 2000.
[22] D.B. Stewart, R.A. Volpe, and P.K. Khosla, “Design of Dynamically Reconfigurable Real-Time Software Using Port-Based Objects,” IEEE Trans. Software Eng., vol. 23, no. 12, pp. 759-775, Dec. 1997.
[23] J. Sun, “Fixed-Priority End-to-End Scheduling in Distributed Real-Time Systems,” PhD dissertation, Dept. of Computer Science, Univ. of Illinois at Urbana-Champaign, , 1997.
[24] The Boeing Company, “Challenge Problems for Model-Based Integration of Embedded Software: Weapon System Open Experimental Platform,” 2001.
[25] The MathWorks, Inc., “Real-Time Workshop User's Guide,” help/toolboxrtw, 2004.
[26] S. Wang, “Performance Modeling and Analysis Techniques and Its Application for Embedded Control Software Design,” PhD dissertation, Dept. of Electrical Eng. and Computer Science, Univ. of Michigan, Ann Arbor, Sept. 2004.
[27] S. Wang, J.R. Merrick, and K.G. Shin, “Component Allocation with Multiple Resource Constraints for Large Embedded Real-Time System Design,” Proc. 10th IEEE Real-Time and Embedded Technology and Applications Symp. (RTAS 2004), pp. 219-226, May 2004.

Index Terms:
Task construction, model transformation, model-based design, embedded software.
Shige Wang, Kang G. Shin, "Task Construction for Model-Based Design of Embedded Control Software," IEEE Transactions on Software Engineering, vol. 32, no. 4, pp. 254-264, April 2006, doi:10.1109/TSE.2006.39
Usage of this product signifies your acceptance of the Terms of Use.