Programmable device using fixed and configurable logic to implement recursive trees
First Claim
1. First, second, and third specialized processing blocks on a programmable integrated circuit device, each of said first, second and third specialized processing blocks comprising:
- a floating-point arithmetic operator stage;
a floating-point adder stage comprising at least one floating-point binary adder;
a plurality of block inputs;
at least one block output;
a direct-connect input; and
configurable interconnect that comprises selectable routing connections at least between said direct-connect input and said floating-point adder stage, a first block input of said plurality of block inputs and said floating-point adder stage, a second block input of said plurality of block inputs and said floating-point arithmetic operator stage, said floating-point arithmetic operator stage and said direct-connect output, and said floating-point adder stage and said at least one block output;
whereby;
said direct-connect input of said first specialized processing block is coupled to said direct-connect output of said second specialized processing block;
said direct-connect output of said first specialized processing block is coupled to said direct-connect input of said third specialized processing block; and
said first, second, and third specialized processing blocks are together configurable to form at least a portion of a recursive adder tree.
2 Assignments
0 Petitions
Accused Products
Abstract
A specialized processing block on a programmable integrated circuit device includes a first floating-point arithmetic operator stage, and a floating-point adder stage having at least one floating-point binary adder. Configurable interconnect within the specialized processing block routes signals into and out of each of the first floating-point arithmetic operator stage and the floating-point adder stage. The block has a plurality of block inputs, at least one block output, a direct-connect input for connection to a first other instance of the specialized processing block, and a direct-connect output for connection to a second other instance of the specialized processing block. A plurality of instances of the specialized processing block are together configurable as a binary or ternary recursive adder tree.
401 Citations
24 Claims
-
1. First, second, and third specialized processing blocks on a programmable integrated circuit device, each of said first, second and third specialized processing blocks comprising:
-
a floating-point arithmetic operator stage; a floating-point adder stage comprising at least one floating-point binary adder; a plurality of block inputs; at least one block output; a direct-connect input; and configurable interconnect that comprises selectable routing connections at least between said direct-connect input and said floating-point adder stage, a first block input of said plurality of block inputs and said floating-point adder stage, a second block input of said plurality of block inputs and said floating-point arithmetic operator stage, said floating-point arithmetic operator stage and said direct-connect output, and said floating-point adder stage and said at least one block output; whereby; said direct-connect input of said first specialized processing block is coupled to said direct-connect output of said second specialized processing block; said direct-connect output of said first specialized processing block is coupled to said direct-connect input of said third specialized processing block; and said first, second, and third specialized processing blocks are together configurable to form at least a portion of a recursive adder tree. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A programmable integrated circuit device comprising:
-
a plurality of specialized processing blocks, each of said plurality of specialized processing blocks comprising; a floating-point arithmetic operator stage; a floating-point adder stage comprising at least one floating-point binary adder; a plurality of block inputs; at least one block output; a direct-connect input for connection to a first other specialized processing block of said plurality of specialized processing blocks; and a direct-connect output for connection to a second other specialized processing block of said plurality of specialized processing blocks; configurable interconnect that comprises selectable routing connections at least between said direct-connect input and said floating-point adder stage, a first block input of said plurality of block inputs and said floating-point adder stage, a second block input of said plurality of block inputs and said first floating-point arithmetic operator stage, said floating-point arithmetic operator stage and said direct-connect output, and said floating-point adder stage and said at least one block output; whereby; a recursive adder tree is configurable on said programmable integrated circuit device using said plurality of specialized processing blocks. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method of configuring a programmable integrated circuit device as a recursive adder tree, said programmable integrated circuit device comprising specialized processing blocks, each of said specialized processing blocks including:
-
a floating-point arithmetic operator stage, a floating-point adder stage comprising at least one floating-point binary adder, a plurality of block inputs, at least one block output, a direct-connect input for connection to a first other specialized processing block of said specialized processing blocks, a direct-connect output for connection to a second other specialized processing block of said specialized processing blocks, and configurable interconnect that comprises selectable routing connections at least between said direct-connect input and said floating-point adder stage, said floating-point adder stage and a first block input of said plurality of block inputs, a second block input of said plurality of block inputs and said floating-point arithmetic operator stage, said first block input of said plurality of block inputs and said direct-connect output, and said floating-point adder stage and said at least one block output; said method comprising; configuring a binary recursive adder tree using said specialized processing blocks;
wherein;in one of said specialized processing blocks, an output of said floating-point adder stage is fed back via said configurable interconnect to said first block input of said plurality of block inputs of said one of said specialized processing blocks and routed from said first block input of said plurality of block inputs via said configurable interconnect to said direct-connect output of said one of said specialized processing blocks. - View Dependent Claims (18, 19, 20)
-
-
21. A non-transitory machine-readable data storage medium encoded with machine-executable instructions for performing a method of configuring a programmable integrated circuit device as a recursive adder tree, said programmable integrated circuit device comprising specialized processing blocks, each of said specialized processing blocks including:
-
a floating-point arithmetic operator stage, a floating-point adder stage comprising at least one floating-point binary adder, a plurality of block inputs, at least one block output, a direct-connect input for connection to a first other specialized processing block of said specialized processing blocks, a direct-connect output for connection to a second other specialized processing block of said specialized processing blocks, and configurable interconnect that comprises selectable routing connections at least between said direct-connect input and said floating-point adder stage, said floating-point adder stage and a first block input of said plurality of block inputs, a second block input of said plurality of block inputs and said floating-point arithmetic operator stage, said first block input of said plurality of block inputs and said direct-connect output, and said floating-point adder stage and said at least one block output; said instructions comprising; instructions to configure a binary recursive adder tree using said specialized processing blocks;
wherein;in one of said specialized processing blocks, an output of said floating-point adder stage is fed back via said configurable interconnect to said first block input of said plurality of block inputs of said one of said specialized processing blocks and routed via said configurable interconnect to said direct-connect output of said one of said specialized processing blocks. - View Dependent Claims (22, 23, 24)
-
Specification