Hardware-Software Partitioning for Real-Time Embedded Systems

In this paper, we present an approach to hardware-software partitioning for real-time embedded systems. Hardware and software components are modeled at the system level, so that cost and performance tradeoffs can be studied early in the design process and a large design space can be explored. Feasibility factor is introduced to measure the possibility of a real-time system being feasible, and is used as both a constraint and an attribute during the optimization process. An imprecise value function is employed to model the tradeoffs among multiple performance attributes. Optimal partitioning is achieved through the use of an existing computer-aided design tool. We demonstrate the application of our approach through the design of an example embedded system.

[1]  Deborah L Thurston,et al.  A formal method for subjective design evaluation with multiple attributes , 1991 .

[2]  Harvey F. Silverman,et al.  Processor reconfiguration through instruction-set metamorphosis , 1993, Computer.

[3]  Edward A. Feigenbaum,et al.  Switching and Finite Automata Theory: Computer Science Series , 1990 .

[4]  William P. Birmingham,et al.  Preference-directed design , 1995, Artificial Intelligence for Engineering Design, Analysis and Manufacturing.

[5]  Ahmed Amine Jerraya,et al.  COSMOS: a codesign approach for communicating systems , 1994, Third International Workshop on Hardware/Software Codesign.

[6]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[7]  Stephen C.-Y. Lu,et al.  Hierarchical and interactive decision refinement methodology for engineering design , 1992 .

[8]  Wayne Wolf,et al.  Hardware-software co-design of embedded systems , 1994, Proc. IEEE.

[9]  R. L. Keeney,et al.  Decisions with Multiple Objectives: Preferences and Value Trade-Offs , 1977, IEEE Transactions on Systems, Man, and Cybernetics.

[10]  Herman Schmit,et al.  A Model and Methodology for Hardware-Software Codesign , 1993, IEEE Des. Test Comput..

[11]  Andrew P. Sage,et al.  A model of multiattribute decisionmaking and trade-off weight determination under uncertainty , 1984, IEEE Transactions on Systems, Man, and Cybernetics.

[12]  Wayne H. Wolf,et al.  Performance Estimation for Real-Time Distributed Embedded Systems , 1998, IEEE Trans. Parallel Distributed Syst..

[13]  Xiaobo Sharon Hu,et al.  Codesign of architectures for automotive powertrain modules , 1994, IEEE Micro.

[14]  Wayne Wolf,et al.  Communication synthesis for distributed embedded systems , 1995, Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[15]  W. Rosenstiel,et al.  A method for hardware software partitioning , 1992, CompEuro 1992 Proceedings Computer Systems and Software Engineering.

[16]  Luciano Lavagno,et al.  Hardware-software codesign of embedded systems , 1994, IEEE Micro.

[17]  Petru Eles,et al.  VHDL system-level specification and partitioning in a hardware/software co-synthesis environment , 1994, Third International Workshop on Hardware/Software Codesign.

[18]  John P. Lehoczky,et al.  The rate monotonic scheduling algorithm: exact characterization and average case behavior , 1989, [1989] Proceedings. Real-Time Systems Symposium.

[19]  William A. Wulf,et al.  Object-oriented techniques in hardware design , 1994, Computer.

[20]  Edward A. Lee,et al.  A global criticality/local phase driven algorithm for the constrained hardware/software partitioning problem , 1994, Third International Workshop on Hardware/Software Codesign.

[21]  Mani Srivastava,et al.  Rapid-prototyping of hardware and software in a unified framework , 1991, 1991 IEEE International Conference on Computer-Aided Design Digest of Technical Papers.

[22]  Jörg Henkel,et al.  Hardware-software cosynthesis for microcontrollers , 1993, IEEE Design & Test of Computers.

[23]  Alan K. Mackworth Constraint Satisfaction , 1985 .

[24]  Giovanni De Micheli,et al.  Hardware-software cosynthesis for digital systems , 1993, IEEE Design & Test of Computers.

[25]  John P. Lehoczky,et al.  An optimal algorithm for scheduling soft-aperiodic tasks in fixed-priority preemptive systems , 1992, [1992] Proceedings Real-Time Systems Symposium.

[26]  Xiaobo Hu,et al.  Configuration-level hardware/software partitioning for real-time embedded systems , 1994, Third International Workshop on Hardware/Software Codesign.

[27]  Joseph Y.-T. Leung,et al.  On the complexity of fixed-priority scheduling of periodic, real-time tasks , 1982, Perform. Evaluation.