Reconfigurable Computing for Embedded Systems, FPGA Devices and Software Components

Abstract

In recent years the size and capabilities of field-programmable gate array (FPGA) devices have increased to a point where they can be deployed as adjunct processing elements within a multicomputer environment. This enables these devices to become an element within a reconfigurable system performing processing of high data rate streams of data. Conventionally, these devices have performed basically fixed-function processing at the input to a system. However, through the use of component-based programming models, it is possible to view these devices as general-purpose processing accelerators where the need arises within a system. A common approach to using FPGA devices in systems at present is based on the use of a dedicated driver or software proxy mechanism. The driver or proxy is responsible for controlling the flow of data between the FPGA and other elements within the system. This approach works, but often the driver or proxy requires intimate knowledge of the algorithm running within the FPGA device. As the drive toward reconfigurable computing platforms continues, the need for a standardized middleware that can be implemented and supported on all forms of processing elements increases. Through the use of such a middleware it would be possible to interface any form of processing element, including microprocessors, digital signal processors (DSPs), FPGAs and even application specific signal processors (ASSPs) and application specific integrated circuits (ASICs). The middleware would define the mechanism by which data would be transferred between processing elements and the associated signaling necessary to ensure data integrity within the system.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Feb 01, 2005
Accession Number
ADA433047

Entities

People

  • Graham Bardouleau
  • James Kulp

Tags

DTIC Thesaurus Topics

  • Abstracts
  • Application-Specific Integrated Circuits
  • Assembly
  • Circuits
  • Computer Programming
  • Computer Programs
  • Computers
  • Data Rate
  • Deployment
  • Electronic Equipment
  • Embedded Systems
  • Field Programmable Gate Arrays
  • Infrastructure
  • Integrated Circuits
  • Metadata
  • Middleware
  • Standards

Readers

  • Database Systems and Applications
  • Parallel and Distributed Computing.