Extending component-based design with hardware components

  • Authors:
  • Péter Arató;Zoltán Ádám Mann;András Orbán

  • Affiliations:
  • Department of Control Engineering and Information Technology, Budapest University of Technology and Economics, H-1117 Budapest, Magyar tudósok körútja 2, Hungary;Department of Control Engineering and Information Technology, Budapest University of Technology and Economics, H-1117 Budapest, Magyar tudósok körútja 2, Hungary;Department of Control Engineering and Information Technology, Budapest University of Technology and Economics, H-1117 Budapest, Magyar tudósok körútja 2, Hungary

  • Venue:
  • Science of Computer Programming - Special issue on new software composition concepts
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

In order to cope with the increasing complexity of system design, component-based software engineering advocates the reuse and adaptation of existing software components. However, many applications--particularly embedded systems--consist of not only software, but also hardware components. Thus, component-based design should be extended to systems with both hardware and software components.Such an extension is not without challenges though. The extended methodology has to consider hard constraints on performance as well as different cost factors. Also, the dissimilarities between hardware and software (such as level of abstraction, communication primitives, etc.) have to be resolved.In this paper, the authors propose such an extended component-based design methodology to include hardware components as well. This methodology allows the designer to work at a very high level of abstraction, where the focus is on functionality only. Non-functional constraints are specified in a declarative manner, and the mapping of components to hardware or software is determined automatically based on those constraints in the so-called hardware/software partitioning step.Moreover, a tool is presented supporting the new design methodology. Beside automating the partitioning process, this tool also checks the consistency between hardware and software implementations of a component.The author also present a case study to demonstrate the applicability of the outlined concepts.