Claims Analysis
Total Claims: 88
Claim 1
Independent Claim
187 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: a plurality of functional units that are interconnectably arranged to perform a plurality of functions on data, the data comprising a plurality of bits; a plurality of interconnectors that selectably interconnect the functional units to control the flow of data between the functional units; a set of first signals generated to create a state that remains unchanged over the execution cycles of any one of the applications; a set of second signals generated to create a plurality of states that are changeable over the execution cycles; and an input and an output for data, wherein the function being performed on the data by the functional units is selectable by the first signals and the second signals and the interconnectors are arranged in a single dimension to transport the data from the input and to the output and to provide the data to the functional units, the interconnectors interconnect the functional units such that the flow of the data between the functional units is selectable.
Claim 2
Dependent Claim
187 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: a plurality of functional units that are interconnectably arranged to perform a plurality of functions on data, the data comprising a plurality of bits; a plurality of interconnectors that selectably interconnect the functional units to control the flow of data between the functional units; a set of first signals generated to create a state that remains unchanged over the execution cycles of any one of the applications; a set of second signals generated to create a plurality of states that are changeable over the execution cycles; and an input and an output for data, wherein the function being performed on the data by the functional units is selectable by the first signals and the second signals and the interconnectors are arranged in a single dimension to transport the data from the input and to the output and to provide the data to the functional units, the interconnectors interconnect the functional units such that the flow of the data between the functional units is selectable.
Claim 3
Dependent Claim
16 words
The computing architecture of claim 1, wherein the interconnectors include a plurality of rows of buses.
Claim 4
Dependent Claim
16 words
The computing architecture of claim 2, wherein the buses include a plurality of interconnected segmented buses.
Claim 5
Dependent Claim
27 words
The computing architecture of claim 3, wherein the segmented buses are interconnected by a plurality of bus connectors that transfer the data between the interconnected segmented buses.
Claim 6
Dependent Claim
20 words
The computing architecture of claim 4, wherein the bus connectors are controlled in response to the set of first signals.
Claim 7
Dependent Claim
20 words
The computing architecture of claim 4, wherein the bus connectors are controlled in response to the set of second signals.
Claim 8
Dependent Claim
26 words
The computing architecture of claim 4, wherein the bus connectors are controlled in response to the set of first signals and the set of second signals.
Claim 9
Dependent Claim
12 words
The computing architecture of claim 4, wherein the bus connectors include registers.
Claim 10
Dependent Claim
37 words
The computing architecture of claim 2, wherein each functional unit has an input terminal, and wherein the interconnectors further include a plurality of multiplexers, the multiplexers connecting the input terminals of the functional units to the buses.
Claim 11
Dependent Claim
33 words
The computing architecture of claim 9, wherein the multiplexers are coupled to receive the second signals, the multiplexers selecting the buses for connection to the functional units in response to the second signals.
Claim 12
Dependent Claim
33 words
The computing architecture of claim 9, wherein the multiplexers are coupled to receive the first signals, the multiplexers selecting the buses for connection to the functional units in response to the first signals.
Claim 13
Dependent Claim
37 words
The computing architecture of claim 9, wherein the multiplexers are coupled to receive the first and second signals, the multiplexers selecting the buses for connection to the functional units in response to the first and second signals.
Claim 14
Dependent Claim
37 words
The computing architecture of claim 2, wherein each functional unit has an output terminal, and wherein the interconnectors further include a plurality of switches, the switches connecting the output terminals of the functional units to the buses.
Claim 15
Dependent Claim
33 words
The computing architecture of claim 13, wherein the switches are coupled to receive the first signals, the switches selecting the buses for connection to the functional units in response to the first signals.
Claim 16
Dependent Claim
33 words
The computing architecture of claim 13, wherein the switches are coupled to receive the second signals, the switches selecting the buses for connection to the functional units in response to the second signals.
Claim 17
Dependent Claim
37 words
The computing architecture of claim 13, wherein the switches are coupled to receive the first and second signals, the switches selecting the buses for connection to the functional units in response to the first and second signals.
Claim 18
Dependent Claim
20 words
The computing architecture of claim 1, wherein the function performed by the functional unit is selectable by the first signal.
Claim 19
Dependent Claim
20 words
The computing architecture of claim 1, wherein the function performed by the functional unit is selectable by the second signal.
Claim 20
Dependent Claim
22 words
The computing architecture of claim 1, wherein the function performed by the functional unit is selectable by the first and second signals.
Claim 21
Dependent Claim
13 words
The computing architecture of claim 1, wherein the functional units include a multiplier.
Claim 22
Dependent Claim
15 words
The computing architecture of claim 1, wherein the functional units include an arithmetic logic unit.
Claim 23
Dependent Claim
15 words
The computing architecture of claim 1, wherein the functional units include a memory cell array.
Claim 24
Dependent Claim
13 words
The computing architecture of claim 1, wherein the functional units include a register.
Claim 25
Dependent Claim
16 words
The computing architecture of claim 1, wherein the functional units include a general purpose configurable unit.
Claim 26
Dependent Claim
25 words
The computing architecture of claim 1, wherein the functional units provide a set of third signals for use in generating the set of second signals.
Claim 27
Dependent Claim
32 words
The computing architecture of claim 1, wherein the first signals are stored in a plurality of memory cells, the memory cells being coupled to provide the first signals to the functional units.
Claim 28
Dependent Claim
31 words
The computing architecture of claim 1, wherein the first signals are stored in a plurality of memory cells, the memory cells being coupled to provide the first signals to the interconnectors.
Claim 29
Dependent Claim
215 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of instructions having states that are changeable over the execution cycles; a linear array of interpreters that receive the set of instructions and provide a set of second signals having states that are changeable over the execution cycles; means for interconnecting the interpreters; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units being selectable by the first signals and the second signals; and means for interconnecting the functional units that are arranged in a single dimension to transport the data between the input and output means and to provide the data to the functional units, the functional units being interconnected by the means for interconnecting the functional units such that the flow of data between the functional units is selectable, wherein the data operated on by the functional units comprises a plurality of bits.
Claim 30
Dependent Claim
215 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of instructions having states that are changeable over the execution cycles; a linear array of interpreters that receive the set of instructions and provide a set of second signals having states that are changeable over the execution cycles; means for interconnecting the interpreters; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units being selectable by the first signals and the second signals; and means for interconnecting the functional units that are arranged in a single dimension to transport the data between the input and output means and to provide the data to the functional units, the functional units being interconnected by the means for interconnecting the functional units such that the flow of data between the functional units is selectable, wherein the data operated on by the functional units comprises a plurality of bits.
Claim 31
Dependent Claim
21 words
The computing architecture of claim 28, wherein the means for interconnecting the interpreters include a plurality of rows of control buses.
Claim 32
Dependent Claim
17 words
The computing architecture of claim 29, wherein the buses include a plurality of interconnected segmented control buses.
Claim 33
Dependent Claim
20 words
The computing architecture of claim 30, wherein the segmented control buses are interconnected by a plurality of control bus connectors.
Claim 34
Dependent Claim
13 words
The computing architecture of claim 31, wherein the control bus connectors include registers.
Claim 35
Dependent Claim
21 words
The computing architecture of claim 31, wherein the control bus connectors are controlled in response to the set of first signals.
Claim 36
Dependent Claim
16 words
The computing architecture of claim 28, wherein each interpreter includes means for generating an output signal.
Claim 37
Dependent Claim
17 words
The computing architecture of claim 34, wherein the output signal-generating means generates the set of second signals.
Claim 38
Dependent Claim
50 words
The computing architecture of claim 34, wherein the output signal-generating means includes an input terminal coupled to receive an input signal, the output signal being selected from a group of signals consisting of the input signal, a logic complement of the input signal, a logic zero, and a logic 1.
Claim 39
Dependent Claim
15 words
The computing architecture of claim 36, wherein the output signal-generating means includes a lookup table.
Claim 40
Dependent Claim
15 words
The computing architecture of claim 37, wherein the lookup table includes a one-input lookup table.
Claim 41
Dependent Claim
16 words
The computing architecture of claim 29, wherein each interpreter includes means for generating an output signal.
Claim 42
Dependent Claim
44 words
The computing architecture of claim 39, wherein the output signal-generating means includes an input terminal, and wherein the means for interconnecting the interpreters further includes a plurality of multiplexers, the multiplexers connecting the input terminals of the output signal-generating means to the control buses.
Claim 43
Dependent Claim
48 words
The computing architecture of claim 39, wherein the means for generating the output signal has an output terminal, and wherein the means for interconnecting the control buses further includes a plurality of switches, the switches connecting the output terminals of the output signal-generating means to the control buses.
Claim 44
Dependent Claim
44 words
The computing architecture of claim 34, wherein each output signal generating means includes an input terminal and an output terminal, the input terminal of one of the output signal generating means being coupled to the output terminal of a different output signal generating means.
Claim 45
Dependent Claim
15 words
The computing architecture of claim 34, wherein the output signal-generating means includes a lookup table.
Claim 46
Dependent Claim
15 words
The computing architecture of claim 43, wherein the lookup table is a three-input lookup table.
Claim 47
Dependent Claim
17 words
The computing architecture of claim 34, wherein the output signal-generating means are controlled by the first signals.
Claim 48
Dependent Claim
19 words
The computing architecture of claim 28, wherein the functional units provide a set of third signals to the interpreters.
Claim 49
Dependent Claim
18 words
The computing architecture of claim 28, wherein the means for generating the set of instructions includes a processor.
Claim 50
Dependent Claim
20 words
The architecture of claim 28, wherein the means for generating the set of instructions includes an array of memory cells.
Claim 51
Independent Claim
327 words
A method of mapping a computational application to a reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture including means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of instructions having states that are changeable over the execution cycles; a linear array of interpreters that receive the set of instructions and provide a set of second signals having states that are changeable over the execution cycles; means for interconnecting the interpreters; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the array being selectable by the first signals and the second signals; and means for interconnecting the functional units that are arranged to receive the data from the input and output means and to provide the data to the functional units, the functional units being interconnected by the means for interconnecting the functional units such that the flow of data between the functional units is selectable, the method comprising: specifying a number of computational stages to map to the array; specifying a control tree that represents execution cycles within the application; specifying a computation to be mapped to the stages; converting the computation specification to a specification of the interconnected functional units, the second control signals being labeled with a set of the first expressions derived from variables in the control tree; generating a set of second expressions from the set of first expressions, the second expressions representing the set of instructions that are input to the interpreters; generating a configuration of the interpreters for enabling the interpreters to convert the second expressions into the first expressions; and generating the configuration of the remaining signals in the first set.
Claim 52
Independent Claim
327 words
A method of mapping a computational application to a reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture including means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of instructions having states that are changeable over the execution cycles; a linear array of interpreters that receive the set of instructions and provide a set of second signals having states that are changeable over the execution cycles; means for interconnecting the interpreters; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the array being selectable by the first signals and the second signals; and means for interconnecting the functional units that are arranged to receive the data from the input and output means and to provide the data to the functional units, the functional units being interconnected by the means for interconnecting the functional units such that the flow of data between the functional units is selectable, the method comprising: specifying a number of computational stages to map to the array; specifying a control tree that represents execution cycles within the application; specifying a computation to be mapped to the stages; converting the computation specification to a specification of the interconnected functional units, the second control signals being labeled with a set of the first expressions derived from variables in the control tree; generating a set of second expressions from the set of first expressions, the second expressions representing the set of instructions that are input to the interpreters; generating a configuration of the interpreters for enabling the interpreters to convert the second expressions into the first expressions; and generating the configuration of the remaining signals in the first set.
Claim 53
Dependent Claim
14 words
The method of claim 49, further comprising revising the specification of interconnected functional units.
Claim 54
Dependent Claim
22 words
The method of claim 50, wherein revising the specification of interconnected functional units adds registers to the specification of interconnected functional units.
Claim 55
Dependent Claim
22 words
The method of claim 50, wherein revising the specification of interconnected functional units deletes registers from the specification of interconnected functional units.
Claim 56
Dependent Claim
14 words
The computing architecture of claim 1, wherein the data comprises at least 4 bits.
Claim 57
Dependent Claim
200 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of second signals having states that are changeable over the execution cycles; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units is selectable by the first signals and the second signals; and means for interconnecting the functional units, the interconnecting means being arranged to transport the data between the input and output means and to provide the data to the functional units, the interconnecting means interconnecting the functional units such that flow of the data between the functional units is selectable, wherein each functional unit has an input terminal and wherein the interconnecting means include a plurality of rows of buses and a plurality of multiplexers, the multiplexers connecting the input terminals of the functional units to the buses.
Claim 58
Dependent Claim
200 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of second signals having states that are changeable over the execution cycles; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units is selectable by the first signals and the second signals; and means for interconnecting the functional units, the interconnecting means being arranged to transport the data between the input and output means and to provide the data to the functional units, the interconnecting means interconnecting the functional units such that flow of the data between the functional units is selectable, wherein each functional unit has an input terminal and wherein the interconnecting means include a plurality of rows of buses and a plurality of multiplexers, the multiplexers connecting the input terminals of the functional units to the buses.
Claim 59
Dependent Claim
33 words
The computing architecture of claim 54, wherein the multiplexers are coupled to receive the second signals, the multiplexers selecting the buses for connection to the functional units in response to the second signals.
Claim 60
Dependent Claim
33 words
The computing architecture of claim 54, wherein the multiplexers are coupled to receive the first signals, the multiplexers selecting the buses for connection to the functional units in response to the first signals.
Claim 61
Dependent Claim
37 words
The computing architecture of claim 54, wherein the multiplexers are coupled to receive the first and second signals, the multiplexers selecting the buses for connection to the functional units in response to the first and second signals.
Claim 62
Dependent Claim
200 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of second signals having states that are changeable over the execution cycles; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units is selectable by the first signals and the second signals; and means for interconnecting the functional units, the interconnecting means being arranged to transport the data between the input and output means and to provide the data to the functional units, the interconnecting means interconnecting the functional units such that flow of the data between the functional units is selectable, wherein each functional unit has an output terminal and wherein the interconnecting means include a plurality of rows of buses and a plurality of switches, the switches connecting the output terminals of the functional units to the buses.
Claim 63
Dependent Claim
200 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of second signals having states that are changeable over the execution cycles; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units is selectable by the first signals and the second signals; and means for interconnecting the functional units, the interconnecting means being arranged to transport the data between the input and output means and to provide the data to the functional units, the interconnecting means interconnecting the functional units such that flow of the data between the functional units is selectable, wherein each functional unit has an output terminal and wherein the interconnecting means include a plurality of rows of buses and a plurality of switches, the switches connecting the output terminals of the functional units to the buses.
Claim 64
Dependent Claim
33 words
The computing architecture of claim 58, wherein the switches are coupled to receive the first signals, the switches selecting the buses for connection to the functional units in response to the first signals.
Claim 65
Dependent Claim
33 words
The computing architecture of claim 58, wherein the switches are coupled to receive the second signals, the switches selecting the buses for connection to the functional units in response to the second signals.
Claim 66
Dependent Claim
37 words
The computing architecture of claim 58, wherein the switches are coupled to receive the first and second signals, the switches selecting the buses for connection to the functional units in response to the first and second signals.
Claim 67
Dependent Claim
218 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of instructions having states that are changeable over the execution cycles; a linear array of interpreters that receive the set of instructions and provide a set of second signals having states that are changeable over the execution cycles; means for interconnecting the interpreters; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units is selectable by the first signals and the second signals; and means for interconnecting the functional units that are arranged to transport the data between the input and output means and to provide the data to the functional units, the functional units being interconnected by the means for interconnecting the functional units such that the flow of data between the functional units is selectable, wherein each interpreter includes means for generating an output signal and the output signal-generating means generates the set of second signals.
Claim 68
Dependent Claim
218 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of instructions having states that are changeable over the execution cycles; a linear array of interpreters that receive the set of instructions and provide a set of second signals having states that are changeable over the execution cycles; means for interconnecting the interpreters; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units is selectable by the first signals and the second signals; and means for interconnecting the functional units that are arranged to transport the data between the input and output means and to provide the data to the functional units, the functional units being interconnected by the means for interconnecting the functional units such that the flow of data between the functional units is selectable, wherein each interpreter includes means for generating an output signal and the output signal-generating means generates the set of second signals.
Claim 69
Dependent Claim
251 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of instructions having states that are changeable over the execution cycles; a linear array of interpreters that receive the set of instructions and provide a set of second signals having states that are changeable over the execution cycles; means for interconnecting the interpreters; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units is selectable by the first signals and the second signals; and means for interconnecting the functional units that are arranged to transport the data between the input and output means and to provide the data to the functional units, the functional units being interconnected by the means for interconnecting the functional units such that the flow of data between the functional units is selectable, wherein each interpreter includes means for generating an output signal and the output signal-generating means includes an input terminal coupled to receive an input signal, the output signal being selected from a group of signals consisting of the input signal, a logic complement of the input signal, a logic zero, and a logic 1.
Claim 70
Dependent Claim
251 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of instructions having states that are changeable over the execution cycles; a linear array of interpreters that receive the set of instructions and provide a set of second signals having states that are changeable over the execution cycles; means for interconnecting the interpreters; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units is selectable by the first signals and the second signals; and means for interconnecting the functional units that are arranged to transport the data between the input and output means and to provide the data to the functional units, the functional units being interconnected by the means for interconnecting the functional units such that the flow of data between the functional units is selectable, wherein each interpreter includes means for generating an output signal and the output signal-generating means includes an input terminal coupled to receive an input signal, the output signal being selected from a group of signals consisting of the input signal, a logic complement of the input signal, a logic zero, and a logic 1.
Claim 71
Dependent Claim
15 words
The computing architecture of claim 63, wherein the output signal-generating means includes a lookup table.
Claim 72
Dependent Claim
15 words
The computing architecture of claim 64, wherein the lookup table includes a one-input lookup table.
Claim 73
Dependent Claim
222 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of instructions having states that are changeable over the execution cycles; a linear array of interpreters that receive the set of instructions and provide a set of second signals having states that are changeable over the execution cycles; means for interconnecting the interpreters; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units is selectable by the first signals and the second signals; and means for interconnecting the functional units that are arranged to transport the data between the input and output means and to provide the data to the functional units, the functional units being interconnected by the means for interconnecting the functional units such that the flow of data between the functional units is selectable, wherein the means for interconnecting the interpreters include a plurality of rows of control buses and each interpreter includes means for generating an output signal.
Claim 74
Dependent Claim
222 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of instructions having states that are changeable over the execution cycles; a linear array of interpreters that receive the set of instructions and provide a set of second signals having states that are changeable over the execution cycles; means for interconnecting the interpreters; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units is selectable by the first signals and the second signals; and means for interconnecting the functional units that are arranged to transport the data between the input and output means and to provide the data to the functional units, the functional units being interconnected by the means for interconnecting the functional units such that the flow of data between the functional units is selectable, wherein the means for interconnecting the interpreters include a plurality of rows of control buses and each interpreter includes means for generating an output signal.
Claim 75
Dependent Claim
44 words
The computing architecture of claim 66, wherein the output signal-generating means includes an input terminal, and wherein the means for interconnecting the interpreters further includes a plurality of multiplexers, the multiplexers connecting the input terminals of the output signal-generating means to the control buses.
Claim 76
Dependent Claim
48 words
The computing architecture of claim 66, wherein the means for generating the output signal has an output terminal, and wherein the means for interconnecting the control buses further includes a plurality of switches, the switches connecting the output terminals of the output signal-generating means to the control buses.
Claim 77
Dependent Claim
245 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of instructions having states that are changeable over the execution cycles; a linear array of interpreters that receive the set of instructions and provide a set of second signals having states that are changeable over the execution cycles; means for interconnecting the interpreters; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units is selectable by the first signals and the second signals; and means for interconnecting the functional units that are arranged to transport the data between the input and output means and to provide the data to the functional units, the functional units being interconnected by the means for interconnecting the functional units such that the flow of data between the functional units is selectable, wherein each interpreter includes means for generating an output signal and each output signal generating means includes an input terminal and an output terminal, the input terminal of one of the output signal generating means being coupled to the output terminal of a different output signal generating means.
Claim 78
Dependent Claim
245 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of instructions having states that are changeable over the execution cycles; a linear array of interpreters that receive the set of instructions and provide a set of second signals having states that are changeable over the execution cycles; means for interconnecting the interpreters; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units is selectable by the first signals and the second signals; and means for interconnecting the functional units that are arranged to transport the data between the input and output means and to provide the data to the functional units, the functional units being interconnected by the means for interconnecting the functional units such that the flow of data between the functional units is selectable, wherein each interpreter includes means for generating an output signal and each output signal generating means includes an input terminal and an output terminal, the input terminal of one of the output signal generating means being coupled to the output terminal of a different output signal generating means.
Claim 79
Dependent Claim
216 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of instructions having states that are changeable over the execution cycles; a linear array of interpreters that receive the set of instructions and provide a set of second signals having states that are changeable over the execution cycles; means for interconnecting the interpreters; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units is selectable by the first signals and the second signals; and means for interconnecting the functional units that are arranged to transport the data between the input and output means and to provide the data to the functional units, the functional units being interconnected by the means for interconnecting the functional units such that the flow of data between the functional units is selectable, wherein each interpreter includes means for generating an output signal and the output signal-generating means includes a lookup table.
Claim 80
Dependent Claim
216 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of instructions having states that are changeable over the execution cycles; a linear array of interpreters that receive the set of instructions and provide a set of second signals having states that are changeable over the execution cycles; means for interconnecting the interpreters; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units is selectable by the first signals and the second signals; and means for interconnecting the functional units that are arranged to transport the data between the input and output means and to provide the data to the functional units, the functional units being interconnected by the means for interconnecting the functional units such that the flow of data between the functional units is selectable, wherein each interpreter includes means for generating an output signal and the output signal-generating means includes a lookup table.
Claim 81
Dependent Claim
16 words
The reconfigurable computing architecture of claim 70, wherein the lookup table is a three-input lookup table.
Claim 82
Dependent Claim
218 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of instructions having states that are changeable over the execution cycles; a linear array of interpreters that receive the set of instructions and provide a set of second signals having states that are changeable over the execution cycles; means for interconnecting the interpreters; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units is selectable by the first signals and the second signals; and means for interconnecting the functional units that are arranged to transport the data between the input and output means and to provide the data to the functional units, the functional units being interconnected by the means for interconnecting the functional units such that the flow of data between the functional units is selectable, wherein each interpreter includes means for generating an output signal and the output signal-generating means are controlled by the first signals.
Claim 83
Dependent Claim
218 words
A reconfigurable computing architecture for executing a plurality of applications, each application being executed over a plurality of execution cycles, the architecture comprising: means for generating a set of first signals having a state that remains unchanged over the execution cycles of any one of the applications; means for generating a set of instructions having states that are changeable over the execution cycles; a linear array of interpreters that receive the set of instructions and provide a set of second signals having states that are changeable over the execution cycles; means for interconnecting the interpreters; means for inputting and outputting data; a linear array of interconnectable functional units, each functional unit being arranged to perform a plurality of functions on the data, the function being performed on the data by the functional units is selectable by the first signals and the second signals; and means for interconnecting the functional units that are arranged to transport the data between the input and output means and to provide the data to the functional units, the functional units being interconnected by the means for interconnecting the functional units such that the flow of data between the functional units is selectable, wherein each interpreter includes means for generating an output signal and the output signal-generating means are controlled by the first signals.
Claim 84
Independent Claim
247 words
A method of mapping a computational program to a reconfigurable computing architecture configured for executing one of a plurality of applications, each application being executed over a plurality of execution cycles, the method comprising: specifying a plurality of computational stages to map to the architecture, each computational stage corresponding to one execution cycle; specifying a control tree that represents all computations to be perform for every execution cycle for each stage within the program, the control list including expressions; specifying a computation for each of the computational stages based on the expressions in the control tree for that execution cycle; converting the computation specification to a listing that specifies an arrangement for interconnecting a plurality of functional units in a linear array and that specifies a set of second control signals derived from the control tree, the second control signals providing dynamic controls to change the state during an execution cycle; generating a set of second expressions that enable a plurality of interpreters to generate dynamic control signals; generating a set of control instructions that specify the second expression for input to the interpreters for each execution cycle of the control tree; determining a configuration of the interpreters; and pipelining the listing to adhere to the architecture, wherein pipelining includes generating static control signals for a part of the list that does not vary, these static control signals being loaded into the architecture to define an application on which the dynamic portion of the program is executed.
Claim 85
Independent Claim
247 words
A method of mapping a computational program to a reconfigurable computing architecture configured for executing one of a plurality of applications, each application being executed over a plurality of execution cycles, the method comprising: specifying a plurality of computational stages to map to the architecture, each computational stage corresponding to one execution cycle; specifying a control tree that represents all computations to be perform for every execution cycle for each stage within the program, the control list including expressions; specifying a computation for each of the computational stages based on the expressions in the control tree for that execution cycle; converting the computation specification to a listing that specifies an arrangement for interconnecting a plurality of functional units in a linear array and that specifies a set of second control signals derived from the control tree, the second control signals providing dynamic controls to change the state during an execution cycle; generating a set of second expressions that enable a plurality of interpreters to generate dynamic control signals; generating a set of control instructions that specify the second expression for input to the interpreters for each execution cycle of the control tree; determining a configuration of the interpreters; and pipelining the listing to adhere to the architecture, wherein pipelining includes generating static control signals for a part of the list that does not vary, these static control signals being loaded into the architecture to define an application on which the dynamic portion of the program is executed.
Claim 86
Dependent Claim
14 words
The method of claim 73, further comprising revising the list of interconnected functional units.
Claim 87
Dependent Claim
22 words
The method of claim 73, wherein revising the list of interconnected functional units adds registers to the list of interconnected functional units.
Claim 88
Dependent Claim
22 words
The method of claim 73, wherein revising the list of interconnected functional units deletes registers from the list of interconnected functional units.