This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Performance Estimation for Real-Time Distributed Embedded Systems
November 1998 (vol. 9 no. 11)
pp. 1125-1136

Abstract—Many embedded computing systems are distributed systems: communicating processes executing on several CPUs/ASICs. This paper describes a performance analysis algorithm for a set of tasks executing on a heterogeneous distributed system. Tight bounds are essential to the synthesis and verification of application-specific distributed systems, such as embedded computing systems. Our bounding algorithms are valid for a general problem model: The system can contain several tasks with hard real-time deadlines and different periods; each task is partitioned into a set of processes related by data dependencies. The periods of tasks and the computation times of processes are not necessarily constant and can be specified by a lower bound and an upper bound. Such a model requires a more sophisticated algorithm, but leads to more accurate results than previous work. Our algorithm both provides tighter bounds and is faster than previous methods.

[1] T.-Y. Yen and W. Wolf, "Sensitivity-Driven Co-Synthesis of Distributed Embedded Systems," Proc. Eighth Int'l Symp. System Synthesis, pp. 4-9, 1995.
[2] An excellent source, used here, for computer development from 1945 to the late 1990s is P. E. Ceruzzi, A History of Modern Computing, MIT Press, Cambridge, Mass., 1998. Ceruzzi's volume of pre-1945 "computing" history is also recommended: P.E. Ceruzzi, Reckoners: The Prehistory of the Digital Computer, from Relay to the Stored Program, 1935-1945, Greenwood Press, Westport, Conn., 1983.
[3] K.G. Shin and P. Ramanathan, "Real-Time Computing: A New Discipline of Computer Science and Engineering," Proc. IEEE, vol. 82, no. 1, Jan. 1994.
[4] C. Rosebrugh and E.-K. Kwang, "Multiple Microcontrollers in an Embedded System," Dr. Dobbs J., Jan. 1992.
[5] C.H. Papadimitriu and K. Steiglitz, Combinatorial Optimization: Algorithms and Complexity. Prentice Hall, 1987.
[6] J.Y.-T. Leung and J. Whitehead, "On the Complexity of Fixed-Priority Scheduling of Periodic, Real-Time Tasks," Performance Evaluation, vol. 2, 1982.
[7] S. Li and S. Malik, "Performance Analysis of Embedded Software Using Implicit Path Enumeration," Proc. Design Automation Conf., 1995.
[8] T.-Y. Yen and W. Wolf, “Performance Estimation for Real-Time Distributed Embedded Systems,” Proc. Int'l Conf. Computer Design, 1995.
[9] T.-Y. Yen and W. Wolf, Hardware-Software Co-Synthesis of Distributed Embedded Systems.Norwell, Mass.: Kluwer Academic, 1996.
[10] C.Y. Park, "Predicting Deterministic Execution Times of Real-Time Programs," PhD thesis, Univ. of Washington, Seattle, Aug. 1992.
[11] W. Ye, R. Ernst, T. Benner, and J. Henkel, "Fast Timing Analysis for Hardware-Software Co-Synthesis," Proc. IEEE Int'l Conf. Computer Design, 1993.
[12] C.L. Liu and J.W. Layland, “Scheduling Algorithms for Multiprogramming in a Hard Real-Time Environment,” J. ACM, vol. 20, no. 1, pp. 40-61, 1973.
[13] L. Sha, R. Rajkumar, and S.S. Sathaye, "Generalized Rate-Monotonic Scheduling Theory: A Framework for Developing Real-Time Systems," Proc. IEEE, vol. 82, no. 1, Jan. 1994.
[14] L.Y. Liu and R.K. Shyamasundar, "Static Analysis of Real-Time Distributed Systems," IEEE Trans. Software Eng., vol. 16, no. 4, Apr. 1990.
[15] T. Amon, H. Hulgaard, S.M. Burns, and G. Borriello, "An Algorithm for Exact Bounds on the Time Separation of Events in Concurrent Systems," Proc. IEEE Int'l Conf. Computer Design, 1993.
[16] W.W. Chu, C.-M. Sit, and K.K. Leung, "Task Response Time for Real-Time Distributed Systems with Resource Contentions," IEEE Trans. Software Eng., vol. 17, no. 10, Oct. 1991.
[17] W.W. Chu and L.M-T. Lan,“Task allocation and precedence relations for distributed real-time systems,” IEEE Trans. on Computers, vol. 36, no. 6, June 1982.
[18] Chiodo, Guisto, Hsieh, Jurecska, Lavagno, and Sangiovanni-Vincentelli, "Configuration-Level Hardware/Software Partitioning for Real-Time Embedded Systems," Proc. Int'l Workshop Hardware-Software Co-Design, 1993.
[19] J. Lehoczky, L. Sha, and Y. Ding, The Rate Monotonic Scheduling Algorithm: Exact Characterization and Average Case Behavior Proc. IEEE Real-Time Systems Symp., pp. 166-171, 1989.
[20] K. Ramamritham and J.A. Stankovic, “Scheduling Algorithms and Operating System Support for Real Time Systems,” Proc. IEEE, vol. 82, no. 1, Jan. 1994.
[21] D.-T. Peng and K.G. Shin, "Static Allocation of Periodic Tasks with Precedence Constraints," Proc. Int'l Conf. Distributed Computing Systems, 1989.
[22] K. Ramamritham, “Allocation and Scheduling of Precedence-Related Periodic Tasks,” IEEE Trans. Parallel and Distributed Systems, vol. 6, no. 4, pp. 412-420, Apr. 1995.
[23] C.J. Hou and K.G. Shin, "Allocation of Periodic Task Modules with Precedence and Deadline Constraints in Distributed Real-Time Systems," Proc. Real-Time Systems Symp., 1982.
[24] R. Gerber, W. Pugh, and M. Saksena, "Parametric Dispatching of Hard Real-Time Tasks," IEEE Trans. Computers, vol. 44, no. 3, pp. 471-479, Mar. 1995.
[25] D.W. Leinbaugh and M.-R. Yamini, "Guaranteed Response Times in a Distributed Hard-Real-Time Environment," Proc. Real-Time Systems Symp., 1982.
[26] J.G. D'Ambrosio and X. Hu, "Configuration-Level Hardware/Software Partitioning for Real-Time Embedded Systems," Proc. Int'l Workshop Hardware-Software Co-Design, 1994.
[27] S. Prakash and A.C. Parker, "SOS: Synthesis of Application-Specific Heterogeneous Multiprocessor Systems," J. Parallel and Distributed Computing, vol. 16, 1992.
[28] R.K. Gupta and G. De Micheli, "Hardware Software Cosynthesis for Digital Systems," IEEE Design&Test, Vol. 10, No. 3, Sept. 1993, pp. 29-41.
[29] R. Ernst, J. Henkel, and T. Benner, "Hardware Software Cosynthesis for Microcontrollers," IEEE Design&Test, Vol. 10, No. 4, Dec. 1993, pp. 64-75.
[30] T.H. Cormen,C.E. Leiserson, and R.L. Rivest,Introduction to Algorithms.Cambridge, Mass.: MIT Press/McGraw-Hill, 1990.
[31] P. Vanbekbergen, G. Goossens, and H. De Man, "Specification and Analysis of Timing Constraints in Signal Transition Graphs," Proc. European Conf. Design Automation, 1992.
[32] K. McMillan and D. Dill, "Algorithms for Interface Timing Verification," Proc. IEEE Int'l Conf. Computer Design, 1992.
[33] S. Li and P.-W. Ong, "Cinderella for DSP3210," unpublished report, 1994.
[34] K. Ramamritham, “Allocation and Scheduling of Complex Periodic Tasks,” Proc. 10th IEEE Int'l Conf. Distributed Computing Systems, 1990.
[35] T.-Y. Yen and W. Wolf, “Communication Synthesis for Distributed Embedded Systems,” Proc. IEEE Int'l Conf. Computer-Aided Design, 1995.

Index Terms:
Embedded systems, distributed systems, real-time systems, performance analysis, periodic tasks
Citation:
Ti-Yen Yen, Wayne Wolf, "Performance Estimation for Real-Time Distributed Embedded Systems," IEEE Transactions on Parallel and Distributed Systems, vol. 9, no. 11, pp. 1125-1136, Nov. 1998, doi:10.1109/71.735959
Usage of this product signifies your acceptance of the Terms of Use.