Programmable device using fixed and configurable logic to implement floating-point rounding
First Claim
1. A configurable specialized processing block on an integrated circuit device, said configurable specialized processing block comprising:
- a first floating-point arithmetic operator stage;
a second floating-point arithmetic operator stage;
configurable interconnect within said configurable specialized processing block for routing signals into and out of each of said first and second floating-point arithmetic operator stages; and
fixed rounding circuitry for performing a partial rounding operation on output of said second floating-point arithmetic operator stage, said fixed rounding circuitry comprising a rounding condition detector and an overflow detector, said overflow detector comprising;
a first AND-gate combining output mantissa bits of said second floating-point arithmetic operator stage, anda second AND-gate combining output of said first AND-gate and output of said rounding condition detector.
1 Assignment
0 Petitions
Accused Products
Abstract
A configurable specialized processing block includes a first floating-point arithmetic operator stage, a second floating-point arithmetic operator stage, and configurable interconnect within the configurable specialized processing block for routing signals into and out of each of the first and second floating-point arithmetic operator stages. In some embodiments, the configurable interconnect may be configurable to route a plurality of block inputs to inputs of the first floating-point arithmetic operator stage, at least one of the block inputs to an input of the second floating-point arithmetic operator stage, output of the first floating-point arithmetic operator stage to an input of the second floating-point arithmetic operator stage, at least one of the block inputs to a direct-connect output to another such block, output of the first floating-point arithmetic operator stage to the direct-connect output, and a direct-connect input from another such block to an input of the second floating-point arithmetic operator stage.
-
Citations
15 Claims
-
1. A configurable specialized processing block on an integrated circuit device, said configurable specialized processing block comprising:
-
a first floating-point arithmetic operator stage; a second floating-point arithmetic operator stage; configurable interconnect within said configurable specialized processing block for routing signals into and out of each of said first and second floating-point arithmetic operator stages; and fixed rounding circuitry for performing a partial rounding operation on output of said second floating-point arithmetic operator stage, said fixed rounding circuitry comprising a rounding condition detector and an overflow detector, said overflow detector comprising; a first AND-gate combining output mantissa bits of said second floating-point arithmetic operator stage, and a second AND-gate combining output of said first AND-gate and output of said rounding condition detector. - View Dependent Claims (2, 3, 4)
-
-
5. A programmable integrated circuit device configured for floating-point arithmetic operations, said configured programmable integrated circuit device comprising:
-
general-purpose programmable logic circuitry; and a plurality of configurable specialized processing blocks, each of said configurable specialized processing blocks comprising; a first floating-point arithmetic operator stage, a second floating-point arithmetic operator stage, configurable interconnect within said configurable specialized processing block for routing signals into and out of each of said first and second floating-point arithmetic operator stages, and fixed rounding circuitry for performing a first partial rounding operation on output of said second floating-point arithmetic operator stage, said fixed rounding circuitry comprising a rounding condition detector and an overflow detector, said overflow detector comprising; a first AND-gate combining output mantissa bits of said second floating-point arithmetic operator stage, and a second AND-gate combining output of said first AND-gate and output of said rounding condition detector;
wherein;a portion of said general-purpose programmable logic is configured as additional rounding circuitry for performing a further partial rounding operation on output of said fixed rounding circuitry of at least one of said plurality of configurable specialized processing blocks. - View Dependent Claims (6, 7, 8, 9)
-
-
10. A method of configuring a programmable integrated circuit device for floating-point arithmetic operations, said programmable integrated circuit device comprising general-purpose programmable logic and a plurality of configurable specialized processing blocks, each of said configurable specialized processing blocks including:
-
a first floating-point arithmetic operator stage, a second floating-point arithmetic operator stage, configurable interconnect within said configurable specialized processing block for routing signals into and out of each of said first and second floating-point arithmetic operator stages, and fixed rounding circuitry for performing a first partial rounding operation on output of said second floating-point arithmetic operator stage, wherein, in at least one of said configurable specialized processing blocks, said fixed rounding circuitry comprises; (a) a rounding condition detector and an overflow detector, or (b) a rounding condition detector, an overflow detector, and an exponent adder adding output of said overflow detector to output exponent bits of said second floating-point arithmetic operator stage, or (c) a rounding condition detector, an overflow detector, an exponent adder adding output of said overflow detector to output exponent bits of said second floating-point arithmetic operator stage, and exception handling circuitry for determining when output of said second floating-point arithmetic operator stage is one of; a number having an absolute value larger than can be represented by said second floating-point arithmetic operator stage, or a number smaller than can be represented by said second floating-point arithmetic operator stage;
said method comprising;configuring said configurable interconnect to route output of said second floating-point arithmetic operator stage to said fixed rounding circuitry; and configuring a portion of said general-purpose programmable logic as additional rounding circuitry for performing a further partial rounding operation on output of said fixed rounding circuitry of at least one of said plurality of configurable specialized processing blocks, including, for said at least one of said configurable specialized processing blocks; configuring a mantissa adder adding output mantissa bits of said second floating-point arithmetic operator stage to output of said rounding condition detector. - View Dependent Claims (11, 12)
-
-
13. A non-transitory data storage medium encoded with machine-executable instructions for performing a method of configuring a programmable integrated circuit device for floating-point arithmetic operations, said programmable integrated circuit device comprising general-purpose programmable logic and a plurality of configurable specialized processing blocks, each of said configurable specialized processing blocks including:
-
a first floating-point arithmetic operator stage, a second floating-point arithmetic operator stage, configurable interconnect within said configurable specialized processing block for routing signals into and out of each of said first and second floating-point arithmetic operator stages, and fixed rounding circuitry for performing a first partial rounding operation on output of said second floating-point arithmetic operator stage, wherein, in at least one of said configurable specialized processing blocks, said fixed rounding circuitry comprises; (a) a rounding condition detector and an overflow detector, or (b) a rounding condition detector, an overflow detector, and an exponent adder adding output of said overflow detector to output exponent bits of said second floating-point arithmetic operator stage, or (c) a rounding condition detector, an overflow detector, an exponent adder adding output of said overflow detector to output exponent bits of said second floating-point arithmetic operator stage, and exception handling circuitry for determining when output of said second floating-point arithmetic operator stage is one of; a number having an absolute value larger than can be represented by said second floating-point arithmetic operator stage, or a number smaller than can be represented by said second floating-point arithmetic operator stage;
said instructions comprising;instructions to configure said configurable interconnect to route output of said second floating-point arithmetic operator stage to said fixed rounding circuitry; and instructions to configure a portion of said general-purpose programmable logic as additional rounding circuitry for performing a further partial rounding operation on output of said fixed rounding circuitry of at least one of said plurality of configurable specialized processing blocks, including, for said at least one of said configurable specialized processing blocks; instructions to configure a mantissa adder adding output mantissa bits of said second floating-point arithmetic operator stage to output of said rounding condition detector. - View Dependent Claims (14, 15)
-
Specification