Vol: 53(67) No: 1 / March 2008 Survey of Approaches for Successful Design and Programming of Multiprocessor Systems on Chip Krste Mitric School of Information Technology and Engineering, University of Ottawa, Canada, e-mail: kmitr027@uottawa.ca Miodrag Bolic School of Information Technology and Engineering, University of Ottawa, Canada, e-mail: mbolic@uottawa.ca Voicu Groza School of Information Technology and Engineering, University of Ottawa, Canada, e-mail: vgroza@uottawa.ca Keywords: Multiprocessor System on Chip, design process, interconnection topology Abstract Multiprocessor System on Chip (MPSoC) has become an ultimate solution for many applications with high processing requirements over the last couple of years. Multimedia, Network Processing, Gaming and Automotive are just some of examples where solutions using a single processor hit performance and power consumption wall, despite the trend of performance increase with newly emerging processors. Strict requirements for high processing power and low power consumption for some of these applications can only be met using heterogeneous MPSoC, with different types of processors targeting appropriate segments of the application. A correct interconnection topology with proper communication, including data exchange and synchronization, appears to be the key for meeting application requirements. Therefore, the interconnection among processing and memory elements has the largest weight in MPSoC design process. In this paper we discuss MPSoC design with emphasis on processors interconnection as the key for successful mapping of the parallelized application software onto multiple processing elements. We focus on issues, challenges and proposed solutions by leading experts from industry and academia in the area of MPSoC design methodology and automation. In addition to interconnection, we discus the design space exploration, types of selected processors that determine the system architecture, power consumption, parallelizing sequential software and mapping of the software onto MPSoC - issues that system architects and designers face when creating an MPSoC. References [1]. Acquaviva, A. Alimonda, S. Carta and M. Pittau, “Assessing Task Migration Impact on Embedded Soft Real-Time Streaming Multimedia Applications,” EURASIP Journal on Embedded Sysytems, Vol. 2008, Article ID 518904, 15 pages, October 2007. [2] F. Angiolini, F. Menichelli, A. Ferrero, L. Benini and M. Olivieri, “A post-compiler approach to scratchpad mapping of code,” in Proc. International Conference on Compilers, Architecture, and Synthesis for Embedded Systems, 2004, pp. 259-267. [3] T. A. Bartic, D. Desmet, J.-Y. Mignolet, J. Miller and F. Robert, “Mapping concurrent applications on network-on-chip platforms,” in Proc. IEEE Workshop Signal Processing Systems Design and Implementation, 2005, pp. 154-159. [4] G. Beltrame, D. Sciuto, C. Silvano, P. Paulin and E. Bensoudane, “An Application Mapping Methodology and Case Study for Multi-Processor On-Chip Architectures,” in Proc. 14th IFIP International Conference on Very Large Scale Integration and System-on-Chip, 2006, pp. 146-151. [5] C. Bobda and A. Ahmadinia, “Dynamic interconnection of reconfigurable modules on reconfigurable devices”, IEEE Design & Test of Computers, Vol. 22, Issue 5, pp. 443-451, Sept.-Oct. 2005. [6] B. K. Dwivedi, A. Kumar and M. Balakrishnan, “Automatic synthesis of system on chip multiprocessor architectures for process networks,” in Proc. International Conference on Hardware/Software Codesign and System Synthesis, 2004, pp. 60–65. [7] P. Gerin, H. Shen, A. Chureau, A. Bouchhima, A. Jerraya, “Flexible and Executable Hardware/Software Interface Modeling for Multiprocessor SoC Design Using SystemC,” in Proc. Design Automation Conference, 2007, pp. 390–395. [8] D. Goodwin and D. Petkov, “Automatic generation of application specific processors,” in Proc. International Conference on Compilers, Architecture and Synthesis for Embedded Systems, 2007, pp.137-147. [9] A. Grasset, F. Rousseau and A. A. Jerraya, “Network interface generation for MPSOC: from communication service requirements to RTL implementation,” in Proc. 15th IEEE International Workshop on Rapid System Prototyping, 2004, pp. 66- 69. [10] A. A. Jerraya, A. Baghdadi, W. Cesa´rio, L. Gauthier, D. Lyonnard, G. Nicolescu, Y. Paviot and S. Yoo, “Application-specific multiprocessor Systems-on-Chip,” Microelectronics Journal, Vol. 33, Issue 11, pp. 891-898, Nov. 2002. [11] A. A. Jerraya, O. Franza, M. Levy, M. Nakaya, P. Paulin, U. Ramacher, D. Talla and W. Wolf, “Roundtable: Envisioning the Future for Multiprocessor SoC”, IEEE Design & Test of Computers, Vol. 24, Issue 2, pp. 174-183, Feb. 2007. [12] M. Kreutz, A. Cesar, M. Luigi, C. Flavio, W. Altamiro and A. Susin, “Design space exploration comparing homogeneous and heterogeneous network-on-chip architectures”, in Proc. 18th annual Symposium on Integrated Circuits and System Design, 2005, pp. 190–195. [13] R. Leupers, \"Compiler Design Issues for Embedded Processors,\" in Proc. IEEE Design & Test, 2002, vol.19, no. 4, pp. 51-58. [14] J. Liang, A. Laffely, S. Srinivasan and R. Tessier, “An architecture and compiler for scalable on-chip communication,” IEEE Transactions on VLSI Systems, Vol. 12, Issue 7, pp. 711-726, July 2004. [15] D. Lyonnard, S. Yoo, A. Baghdadi and A. A. Jerraya, “Automatic Generation of Application-Specific Architectures for Heterogeneous Multiprocessor System-on-Chip,” in Proc. 38th Conference on Design Automation, 2001, pp. 518-523. [16] R. B. Mouhoub and O. Hammami, “Multiprocessor on chip: beating the simulation wall through multiobjective design space exploration with direct execution”, in Proc. 20th International Parallel and Distributed Processing Symposium, 2006, pp. 8-15. [17] H. Nikolov, T. Stefanov and E. Deprettere, “Systematic and Automated Multiprocessor System Design, Programming and Implementation,” IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, Vol. 27, Issue 3, pp. 542-555, March 2008. [18] P. P. Pande, G. D. Micheli, C. Grecu, A. Ivanov and R. Saleh, “Design, synthesis, and test of networks on chips,” IEEE Design & Test of Computers, Vol. 22, No. 5, pp. 404-413, Sep./Oct. 2005. [19] P. G. Paulin, C. Pilkington, M. Langevin, E. Bensoudane, D. Lyonnard, O. Benny, B. Lavigueur, D. Lo, G. Beltrame, V. Gagné and G. Nicolescu, “Parallel programming models for a multiprocessor SoC platform applied to networking and multimedia,” IEEE Transactions on VLSI Systems, Vol. 14, Issue 7, pp. 667-680, July 2006. [20] N. Pazos, P. Ienne, Y. Leblebici and A. Maxiaguine, “Parallel Modelling Paradigm in Multimedia Applications: Mapping and Scheduling onto a Multi-Processor System-on-Chip\", Int. Global Signal Processing Conference, 2004. [21] K. Popovici, X. Guerin, L. Brisolara and A. Jerraya, “Mixed Hardware Software Multilevel Modeling and Simulation for Multithreaded Heterogeneous MPSoC”, in Proc. VLSI Design, Automation and Test, 2007, pp. 1-4. [22] V. K. Prasanna and G. R. Morris, “Sparse Matrix Computations on Reconfigurable Hardware,” IEEE Computer, Vol. 40, Issue 3, pp. 58-64, March 2007. [23] V. Soteriou and L. S. Peh, “Exploring the Design Space of Self-Regulating Power-Aware On/Off Interconnection Networks,” IEEE Transactions on Parallel and Distributed Systems, Vol. 18, Issue 3, pp. 393-408, March 2007. [24] N. Tabrizi and N. Bagherzadeh, “A Distributed and Shared Register File for a Multiprocessor-on-Chip to Support Real-Time Applications,” in Proc. 6th International Workshop on System-on-Chip for Real-Time Applications, 2006, pp. 215-220. [25] A. Vaidya, C. Das and A. Sivasubramaniam, “A Testbed for Evaluation of Fault-Tolerant Routing in Multiprocessor Interconnection Networks,” IEEE Transactions on Parallel and Distributed Systems, Vol. 10, Issue 10, pp. 1052-1066, October 1999. [26] A. Wieferink, M. Doerper, R. Leupers, G. Ascheid, H. Meyr, T. Kogel, G. Braun and A. Nohl, “System level processor/communication co-exploration methodology for multiprocessor system-on-chip platforms,” in Proc. IEE Computers and Digital Techniques, 2005, Vol. 152, Issue 1, pp. 3-11. |