Intelligent data storage and processing using FPGA devices
First Claim
1. A data processing apparatus comprising:
- a processing device for communicating with a computer system, the computer system including a processor, wherein the processing device comprises a re-configurable logic device configured to perform a plurality of tasks, thereby freeing the processor to perform other tasks;
wherein the re-configurable logic device is configured to receive and process streaming data through a multi-functional pipeline deployed on the re-configurable logic device;
wherein the multi-functional pipeline comprises a plurality of pipelined data processing engines, each pipelined data processing engine being configured to (1) receive streaming data and selectively perform a processing operation on the received streaming data, and (2) be responsive to a control instruction that defines whether that pipelined data processing engine is an activated data processing engine or a deactivated data processing engine, wherein an activated data processing engine is configured to perform the processing operation of that activated data processing engine on streaming data received thereby, and wherein a deactivated data processing engine remains in the pipeline but does not perform the processing operation of that activated data processing engine on streaming data received thereby, the deactivated data processing engine thereby being configured to act as a pass through, the multi-functional pipeline thereby being configured to provide a plurality of different pipeline functions in response to control instructions that are configured to selectively activate and deactivate the pipelined data processing engines, each pipeline function being the combined functionality of each activated pipelined data processing engine in the pipeline at a given time.
3 Assignments
0 Petitions
Accused Products
Abstract
A re-configurable logic device such as a field programmable gate array (FPGA) can be used to deploy a data processing pipeline, the pipeline comprising a plurality of pipelined data processing engines, the plurality of pipelined data processing engines being configured to perform processing operations, wherein the pipeline comprises a multi-functional pipeline, and wherein the re-configurable logic device is further configured to controllably activate or deactivate each of the pipelined data processing engines in the pipeline in response to control instructions and thereby define a function for the pipeline, each pipeline function being the combined functionality of each activated pipelined data processing engine in the pipeline.
-
Citations
21 Claims
-
1. A data processing apparatus comprising:
-
a processing device for communicating with a computer system, the computer system including a processor, wherein the processing device comprises a re-configurable logic device configured to perform a plurality of tasks, thereby freeing the processor to perform other tasks; wherein the re-configurable logic device is configured to receive and process streaming data through a multi-functional pipeline deployed on the re-configurable logic device; wherein the multi-functional pipeline comprises a plurality of pipelined data processing engines, each pipelined data processing engine being configured to (1) receive streaming data and selectively perform a processing operation on the received streaming data, and (2) be responsive to a control instruction that defines whether that pipelined data processing engine is an activated data processing engine or a deactivated data processing engine, wherein an activated data processing engine is configured to perform the processing operation of that activated data processing engine on streaming data received thereby, and wherein a deactivated data processing engine remains in the pipeline but does not perform the processing operation of that activated data processing engine on streaming data received thereby, the deactivated data processing engine thereby being configured to act as a pass through, the multi-functional pipeline thereby being configured to provide a plurality of different pipeline functions in response to control instructions that are configured to selectively activate and deactivate the pipelined data processing engines, each pipeline function being the combined functionality of each activated pipelined data processing engine in the pipeline at a given time. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A data processing apparatus comprising:
-
a field programmable gate array (FPGA) for communicating with a computer system, the computer system including a processor, wherein the FPGA is configured to perform a plurality of tasks, thereby freeing the processor to perform other tasks; wherein the FPGA is configured to receive and process streaming data through a multi-functional pipeline deployed on the FPGA; wherein the multi-functional pipeline comprises a plurality of pipelined data processing engines, each pipelined data processing engine being configured to (1) receive streaming data and selectively perform a processing operation on the received streaming data, and (2) be responsive to a control instruction that defines whether that pipelined data processing engine is an activated data processing engine or a deactivated data processing engine, wherein an activated data processing engine is configured to perform the processing operation of that activated data processing engine on streaming data received thereby, and wherein a deactivated data processing engine remains in the pipeline but does not perform the processing operation of that activated data processing engine on streaming data received thereby, the deactivated data processing engine thereby being configured to act as a pass through, the multi-functional pipeline thereby being configured to provide a plurality of different pipeline functions in response to control instructions that are configured to selectively activate and deactivate the pipelined data processing engines, each pipeline function being the combined functionality of each activated pipelined data processing engine in the pipeline at a given time. - View Dependent Claims (21)
-
Specification