Design Automation for Embedded Systems

, Volume 16, Issue 1, pp 45-69

Open Access This content is freely available online to anyone, anywhere at any time.

On fast development of FPGA-based SOA services—machine vision case study

  • A. RutaAffiliated withDepartment of Computer Science, AGH University of Science and Technology Email author 
  • , R. Brzoza-WochAffiliated withDepartment of Computer Science, AGH University of Science and Technology
  • , K. ZielinskiAffiliated withDepartment of Computer Science, AGH University of Science and Technology


Development of FPGA-based, network-enabled embedded systems in Register Transfer Level hardware description languages is tedious. Despite the automation of this process with numerous EDA tools available, no well-established design patterns exist. Moreover, the entire production cycle requires appropriate theoretical background and hardware design intuition from the developer which discourages the software community. To improve productivity and minimize time to market when assembling such systems, we propose a new hardware/software co-design approach to building reconfigurable hardware web services. The proposed integrated development platform features a programmable FPGA board where computations of different nature and purpose are logically distributed among a sequential soft-core processor program, a massively parallel accelerator and an independent communication module that handles remote clients’ requests. Our second contribution is a set of tools that make the development of the aforementioned services essentially a software design undertaking with the extensive use of high-level programming languages. The platform has been tuned to act as a flexible runtime environment for image processing services, thus providing functionality of an intelligent camera. Two example services built from scratch according to the new methodology are discussed. Reduced development time and significant performance gain observed prove validity of the proposed approach and unveil a large potential of the assembled prototype.


HW/SW co-design FPGA Parallel image processing Service-oriented architecture High-level synthesis