Worm-hole run-time reconfigurable processor field programmable gate array (FPGA)
First Claim
1. A data stream driven Worm-hole run-time reconfigurable field programmable gate array (FPGA) implemented on a single chip comprising:
- a plurality of independent bi-directional data ports for receiving one or more data streams and outputting one or more data streams, each said data stream containing variable length self-configuring header information and variable length data;
a mesh of interconnected and configurable functional units capable of performing programmed arithmetic operations as defined by said header information; and
an interconnection network responsive to said header information for configuring pathways interconnecting data ports and configurable functional units, said field programmable gate array being configurable at run-time through said plurality of independent bi-directional ports to partially reconfigure for one task while simultaneously performing computations for another task.
2 Assignments
0 Petitions
Accused Products
Abstract
Higher performance is gained through a new architecture which implements a new method of computational resource allocation, utilization and programming based on the concept of Worm-hole Run-Time Reconfiguration (RTR). A stream-driven Worm-hole RTR methodology extends contemporary data-flow paradigms to utilize the dynamic creation of operators and pathways, based upon stream processing in which parcels of data move through custom created pathways and interact with other parcels to achieve the desired computation. These parcels independently allocate the necessary computing resources and data paths as they navigate through the platform. The Worm-hole RTR platform consists of a large number of configurable functional units that perform the custom computations and rich, configurable interconnection pathways between the functional units. Once a computational pathway has been established (sensitized) by the head of the stream parcel, data are processed through the pathway with zero overhead. All ports entering the computing platform serve both to configure operations and pathways and to pass computational data streams. As a result, programming and configuration is not limited to a single port. Configuration through multiple independent ports allows greater concurrency, faster reconfiguration, and fewer computational dependencies, all with relatively low cost in silicon.
-
Citations
12 Claims
-
1. A data stream driven Worm-hole run-time reconfigurable field programmable gate array (FPGA) implemented on a single chip comprising:
-
a plurality of independent bi-directional data ports for receiving one or more data streams and outputting one or more data streams, each said data stream containing variable length self-configuring header information and variable length data; a mesh of interconnected and configurable functional units capable of performing programmed arithmetic operations as defined by said header information; and an interconnection network responsive to said header information for configuring pathways interconnecting data ports and configurable functional units, said field programmable gate array being configurable at run-time through said plurality of independent bi-directional ports to partially reconfigure for one task while simultaneously performing computations for another task. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method of allocating resources in a Worm-hole run-time reconfigurable field programmable gate array (FPGA), comprising the steps of:
-
inputting a plurality of data streams comprising a self-configuring header and data; and stripping configuration information from headers of said plurality of data streams and programming computational elements and interconnection resources in the system to form a self-steering stream paths within the system allowing said plurality of data streams to propagate through the field programmable gate array simultaneously. - View Dependent Claims (8, 9, 10, 11)
-
-
12. A data stream driven Worm-hole run-time reconfigurable field programmable gate array (FPGA), comprising:
-
a plurality of independent bi-directional data ports for receiving one or more data streams and outputting one or more data streams, each said data stream containing variable length self-configuring header information and variable length data; a plurality of interconnected and configurable functional units capable of performing programmed operations as defined by said header information; at least one interconnection network responsive to said header information for configuring pathways interconnecting data ports and configurable functional units; and at least one stream controller connected to said interconnection network, said field programmable gate array being dynamically configurable by said stream controller at run-time through said plurality of independent bi-directional ports to partially reconfigure for one task while simultaneously performing computations for another task.
-
Specification