The Community for Technology Leaders
RSS Icon
Issue No.11 - Nov. (2012 vol.61)
pp: 1638-1650
Pi-Cheng Hsiu , Res. Center for Inf. Technol. Innovation (CITI), Taipei, Taiwan
Cheng-Kang Hsieh , Res. Center for Inf. Technol. Innovation (CITI), Taipei, Taiwan
Der-Nien Lee , Dept. of Comput. Sci. & Inf. Eng., Nat. Taiwan Univ., Taipei, Taiwan
Tei-Wei Kuo , Dept. of Comput. Sci. & Inf. Eng., Nat. Taiwan Univ., Taipei, Taiwan
A major challenge in the design of multicore embedded systems is how to tackle the communications among tasks with performance requirements and precedence constraints. In this paper, we consider the problem of scheduling real-time tasks over multilayer bus systems with the objective of minimizing the communication cost. We show that the problem is NP-hard and determine the best possible approximation ratio of approximation algorithms. First, we propose a polynomial-time optimal algorithm for a restricted case where one multilayer bus, and the unit execution time and communication time are considered. The result is then extended as a pseudopolynomial-time optimal algorithm to consider multiple multilayer buses with arbitrary execution and communication times, as well as different timing constraints and objective functions. We compare the performance of the proposed algorithm with that of some popular heuristics, and provide further insights into the multilayer bus system design.
system buses, approximation theory, computational complexity, embedded systems, multiprocessing systems, optimisation, scheduling, objective functions, multilayer bus optimization, realtime embedded systems, multicore embedded systems, realtime task scheduling, multilayer bus systems, NP-hard problem, approximation algorithms, pseudopolynomial-time optimal algorithm, timing constraints, Program processors, Bridges, Schedules, Heuristic algorithms, Computer architecture, Real time systems, Embedded systems, bus cost optimization, Program processors, Bridges, Schedules, Heuristic algorithms, Computer architecture, Real time systems, Embedded systems, real-time scheduling, Program processors, Bridges, Schedules, Heuristic algorithms, Computer architecture, Real time systems, Embedded systems, precedence constraints, Multilayer-bus embedded systems
Pi-Cheng Hsiu, Cheng-Kang Hsieh, Der-Nien Lee, Tei-Wei Kuo, "Multilayer Bus Optimization for Real-Time Embedded Systems", IEEE Transactions on Computers, vol.61, no. 11, pp. 1638-1650, Nov. 2012, doi:10.1109/TC.2011.200
[1] ARM Limited, “AMBA 2.0 Specification,” technical report, 1999.
[2] ARM Limited, “Multi-Layer AHB Overview,” technical report, 2004.
[3] E. Bini, T.H.C. Nguyen, P. Richard, and S.K. Baruah, “A Response-Time Bound in Fixed-Priority Scheduling with Arbitrary Deadlines,” IEEE Trans. Computers, vol. 58, no. 2, pp. 279-286, Feb. 2009.
[4] C. Brandolese, “Source-Level Estimation of Energy Consumption and Execution Time of Embedded Software,” Proc. 11th EUROMICRO Conf. Digital System Design Architectures, Methods and Tools (DSD), pp. 115-123, 2008.
[5] M. Caldari, M. Conti, M. Coppola, R. Crippa, S. Orcioni, L. Pieralisi, and C. Turchetti, “System-Level Power Analysis Methodology Applied to the AMBA AHB Bus,” Proc. IEEE/ACM Conf. Design, Automation and Test in Europe (DATE), pp. 32-37, 2003.
[6] T. Chantem, X.S. Hu, and M.D. Lemmon, “Generalized Elastic Scheduling for Real-Time Tasks,” IEEE Trans. Computers, vol. 58, no. 4, pp. 480-495, Apr. 2009.
[7] Y.-S. Chen, H.-L. Tsai, and S.-W. Lo, “Multi-Layer Bus Minimization for SoC,” J. Systems and Software, vol. 83, no. 1, pp. 121-132, 2010.
[8] P. Chrétienne and C. Picouleau, Scheduling Theory and Its Applications. John Wiley & Sons, 1995.
[9] R.P. Dick, D.L. Rhodes, and W. Wolf, “TGFF: Task Graphs for Free,” Proc. Sixth Int'l Workshop Hardware/Software Codesign (CODES), pp. 97-101, 1998.
[10] E. Dolif, M. Lombardi, M. Ruggiero, M. Milano, and L. Benini, “Communication-Aware Stochastic Allocation and Scheduling Framework for Conditional Task Graphs in Multi-Processor Systems-on-Chip,” Proc. Seventh ACM and IEEE Int'l Conf. Embedded Software (EMSOFT), pp. 47-56, 2007.
[11] D.W. Engels, J. Feldman, D.R. Karger, and M. Ruhl, “Parallel Processor Scheduling with Delay Constraints,” Proc. Twelfth Ann. ACM-SIAM Symp. Discrete Algorithms (SODA), pp. 577-585, 2001.
[12] S. Fujita, “A Branch-and-Bound Algorithm for Solving the Multiprocessor Scheduling Problem with Improved Lower Bounding Techniques,” IEEE Trans. Computers, vol. 60, no. 7, pp. 1006-1016, July 2011.
[13] F. Harary, Graph Theory, p. 172. Addison-Wesley, 1969.
[14] I. Issenin and N. Dutt, “Data Reuse Driven Energy-Aware MPSoC Co-Synthesis of Memory and Communication Architecture for Streaming Applications,” Proc. IEEE/ACM Fourth Int'l Conf. Hardware/Software Codesign and System Synthesis (CODES+ISSS), pp. 294-299, 2006.
[15] P. Kulasinghe and A. El-Amawy, “On the Complexity of Optimal Bused Interconnections,” IEEE Trans. Computers, vol. 44, no. 10, pp. 1248-1251, Oct. 1995.
[16] K. Lahiri, A. Raghunathan, and S. Dey, “Design Space Exploration for Optimizing On-Chip Communication Architectures,” IEEE Trans. Computer-Aided Design of Integrated Circuits and Systems, vol. 23, no. 6, pp. 952-961, June 2004.
[17] J.Y.-T. Leung, “A New Algorithm for Scheduling Periodic, Real-Time Tasks,” Algorithmica, vol. 4, no. 2, pp. 209-219, 1989.
[18] C.-M. Lien, Y.-S. Chen, and C.-S. Shih, “On-Chip Bus Architecture Optimization for Multi-Core SoC Systems,” Proc. Fifth IFIP WG 10.2 Int'l Conf. Software Technologies for Embedded and Ubiquitous Systems (SEUS), pp. 301-310, 2007.
[19] G.Q. Liu, K.L. Poh, and M. Xie, “Iterative List Scheduling for Heterogeneous Computing,” J. Parallel and Distributed Computing, vol. 65, no. 5, pp. 654-665, 2005.
[20] J.W.S. Liu, Real-Time Systems. Prentice Hall, 2000.
[21] P. Markenscoff, “Bus Scheduling for a Multiple-Processor System with Shared Buses,” IEEE Computers and Digital Techniques, vol. CDT-134, no. 6, pp. 288-294, Nov. 1987.
[22] R.H. Mohring, Computationally Tractable Classes of Ordered Sets, pp. 105-194. Kluwer Academic Publisher, 1989.
[23] T.N. Mudge, J.P. Hayes, and D.C. Winsor, “Multiple Bus Architectures,” Computer, vol. 20, no. 6, pp. 42-48, June 1987.
[24] O. Ogawa, S.B. de Noyerand, P. Chauvet, K. Shinohara, Y. Watanabe, H. Niizuma, T. Sasaki, and Y. Takai, “A Practical Approach for Bus Architecture Optimization at Transaction Level,” Proc. IEEE/ACM Conf. Design, Automation and Test in Europe (DATE), pp. 176-181, 2003.
[25] H. Posadas, F. Herrera, P. Sanchez, E. Villar, and F. Blasco, “System-Level Performance Analysis in SystemC,” Proc. IEEE/ACM Conf. Design, Automation and Test in Europe (DATE), pp. 378-383, 2004.
[26] K.K. Ryu and V.J. Mooney III, “Automated Bus Generation for Multiprocessor SoC Design,” IEEE Trans. Computer-Aided Design of Integrated Circuits and Systems, vol. 23, no. 11, pp. 1531-1549, Nov. 2004.
[27] A. Schranzhofer, J.-J. Chen, and L. Thiele, “Dynamic Power-Aware Mapping of Applications onto Heterogeneous MPSoC Platforms,” IEEE Trans. Industrial Informatics, vol. 6, no. 4, pp. 692-707, Nov. 2010.
[28] M. Sheliga and E.H.-M. Sha, “Bus Minimization and Scheduling of Multi-Chip Systems,” Proc. Fifth Great Lakes Symp. VLSI (GLS-VLSI), pp. 40-45, 1995.
[29] G.C. Sih and E.A. Lee, “A Compile-Time Scheduling Heuristic for Interconnection-Constrained Heterogeneous Processor Architectures,” IEEE Trans. Parallel and Distributed Systems, vol. 4, no. 2, pp. 175-187, Feb. 1993.
[30] O. Sinnen and L. Sousa, “List Scheduling: Extension for Contention Awareness and Evaluation of Node Priorities for Heterogeneous Cluster Architectures,” Parallel Computing, vol. 30, no. 1, pp. 81-101, 2004.
[31] O. Sinnen and L.A. Sousa, “Communication Contention in Task Scheduling,” IEEE Trans. Parallel and Distributed Systems, vol. 16, no. 6, pp. 503-515, June 2005.
[32] Y. Ueda, H. Yamauchi, M. Mukuno, S. Furuichi, M. Fujisawa, F. Qiao, and H.Z. Yang, “6.33mW MPEG Audio Decoding on a Multimedia Processor,” Proc. IEEE Int'l Solid-State Circuits Conf. (ISSCC), pp. 1636-1645, 2006.
[33] K. Vallerio, “Task Graphs for Free (v3.0),” technical report, 2008.
[34] T.A. Varvarigou, V.P. Roychowdhury, T. Kailath, and E.L. Lawler, “Scheduling in and out Forests in the Presence of Communication Delays,” IEEE Trans. Parallel and Distributed Systems, vol. 7, no. 10, pp. 1065-1074, Oct. 1996.
[35] J. Verriet, “The Complexity of Scheduling Graphs of Bounded Width Subject to Non-Zero Communication Delays,” technical report, 1997.
[36] Y. Wang, D. Liu, Z. Qin, and Z. Shao, “Memory-Aware Optimal Scheduling with Communication Overhead Minimization for Streaming Applications on Chip Multiprocessors,” Proc. 31st IEEE Real-Time Systems Symp. (RTSS), pp. 350-359, 2010.
[37] Y. Wang, D. Liu, M. Wang, Z. Qin, and Z. Shao, “Optimal Task Scheduling by Removing Inter-Core Communication Overhead for Streaming Applications on MPSoC,” Proc. 16th IEEE Real-Time and Embedded Technology and Applications Symp. (RTAS), pp. 195-204, 2010.
[38] J. Wu, J.-C. Liu, and W. Zhao, “A General Framework for Parameterized Schedulability Bound Analysis of Real-Time Systems,” IEEE Trans. Computers, vol. 59, no. 6, pp. 776-783, June 2010.
[39] R. Zurawski, Embedded Systems Handbook, pp. 20(1)-20(22). CRC Press, 2006.
21 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool