Partitioning Decision Process for Embedded Hardware and Software Deployment

Many types of embedded systems applications are implemented as a combination of software and hardware. For such systems the mapping of the application units into hardware and software, i.e. the partitioning process, is a key phase of the design. Although there exist techniques for partitioning, the entire process, in particular in relation to different application requirements and project constraints, is not properly supported. This leads to several unplanned iterations, redesigns and interruptions due to uncontrolled dependencies between hardware and software parts. In order to overcome these problems, we provide a design process that enables the partitioning based on a multiple criteria decision analysis in a late design phase. We illustrate the proposed approach and provide a proof-of concept on an industrial case study to validate the approach applicability.

[1]  P. Arato,et al.  Hardware-software partitioning in embedded system design , 2003, IEEE International Symposium on Intelligent Signal Processing, 2003.

[2]  I. Cmkovic Component-based software engineering for embedded systems , 2005, ICSE 2005.

[3]  Wu Jigang,et al.  Algorithmic aspects for multiple-choice hardware/software partitioning , 2012, Comput. Oper. Res..

[4]  W. Glauert,et al.  Linking codesign and reuse in embedded systems design , 2000, Proceedings of the Eighth International Workshop on Hardware/Software Codesign. CODES 2000 (IEEE Cat. No.00TH8518).

[5]  Peter Marwedel,et al.  An Algorithm for Hardware/Software Partitioning Using Mixed Integer Linear Programming , 1997, Des. Autom. Embed. Syst..

[6]  Juan Carlos López,et al.  On the hardware-software partitioning problem: System modeling and partitioning techniques , 2003, TODE.

[7]  Jürgen Teich,et al.  Hardware/Software Codesign: The Past, the Present, and Predicting the Future , 2012, Proceedings of the IEEE.

[8]  Waseem Ahmed,et al.  Concept-based partitioning for large multidomain multifunctional embedded systems , 2010, TODE.

[9]  Ivica Crnkovic,et al.  Towards a Methodology for Hardware and Software Design Separation in Embedded Systems , 2012, ICSEA 2012.

[10]  Ivica Crnkovic Component-based software engineering for embedded systems , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[11]  Wilian Soares Lacerda,et al.  Hardware/Software co-design using artificial neural network and evolutionaryy computing , 2009, 2009 5th Southern Conference on Programmable Logic (SPL).

[12]  Anneke Kleppe,et al.  MDA explained - the Model Driven Architecture: practice and promise , 2003, Addison Wesley object technology series.

[13]  Michel Auguin,et al.  HW / SW partitioning approach for reconfigurable system design , 2002, CASES '02.

[14]  Séverine Sentilles,et al.  A Classification Framework for Software Component Models , 2011, IEEE Transactions on Software Engineering.

[15]  Mary Shaw,et al.  Writing good software engineering research papers , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[16]  Stephen A. Edwards,et al.  Design of embedded systems: formal models, validation, and synthesis , 1997, Proc. IEEE.

[17]  Wayne H. Wolf A Decade of Hardware/Software Codesign , 2003, Computer.

[18]  Fabio Paternò Model-Based Design and Evaluation of Interactive Applications , 2000 .

[19]  Jerzy W. Rozenblit,et al.  Performance analysis of embedded systems in the virtual component co-design environment , 2004, Proceedings. 11th IEEE International Conference and Workshop on the Engineering of Computer-Based Systems, 2004..

[20]  Yang-Hsin Fan,et al.  Grey Relational Hardware-Software Partitioning for Embedded Multiprocessor FPGA Systems , 2011 .

[21]  Rajesh Gupta,et al.  Hardware/software co-design , 1996, Proc. IEEE.