Division Patents (Class 708/504)
  • Patent number: 11775257
    Abstract: Techniques for operating on and calculating binary floating-point numbers using an enhanced floating-point number format are presented. The enhanced format can comprise a single sign bit, six bits for the exponent, and nine bits for the fraction. Using six bits for the exponent can provide an enhanced exponent range that facilitates desirably fast convergence of computing-intensive algorithms and low error rates for computing-intensive applications. The enhanced format can employ a specified definition for the lowest binade that enables the lowest binade to be used for zero and normal numbers; and a specified definition for the highest binade that enables it to be structured to have one data point used for a merged Not-a-Number (NaN)/infinity symbol and remaining data points used for finite numbers. The signs of zero and merged NaN/infinity can be “don't care” terms. The enhanced format employs only one rounding mode, which is for rounding toward nearest up.
    Type: Grant
    Filed: April 6, 2020
    Date of Patent: October 3, 2023
    Assignee: International Business Machines Corporation
    Inventors: Silvia Melitta Mueller, Ankur Agrawal, Bruce Fleischer, Kailash Gopalakrishnan, Dongsoo Lee
  • Patent number: 11314482
    Abstract: Methods and systems for division operation are described. A processor can initialize an estimated quotient between the dividend and the divisor separately from a floating-point unit (FPU) pipeline. The processor can implement the FPU pipeline to execute a refinement process that can include at least a first iteration of operations and a second iteration of operations. The refinement process can include, in the first iteration of operations, generating a first unnormalized floating-point value using the initialized estimated quotient. The refinement process can include, in the second iteration of operations, generating a second unnormalized floating-point value using the first unnormalized floating-point value. The processor can determine a final quotient based on the second unnormalized floating-point value.
    Type: Grant
    Filed: November 14, 2019
    Date of Patent: April 26, 2022
    Assignee: International Business Machines Corporation
    Inventors: Silvia Melitta Mueller, Thomas Winters Fox, Bruce Fleischer
  • Patent number: 10628126
    Abstract: A processor includes a core and a plurality of registers including a first register, a second register, and a third register. The core is configured to perform a division operation that includes execution of a sign extraction instruction in which a sign of at least one of a numerator value and a denominator value is stored, a conditional subtraction instruction which divides the numerator value by the denominator value to generate a quotient value and a remainder value, and a sign assignment instruction which adjusts the sign of at least one of the quotient and remainder values. The conditional subtraction instruction is configured to cause the core to perform multiple iterations of a conditional subtraction in one execution of the conditional subtraction instruction and in one clock cycle. Others methods and apparatus are described as well.
    Type: Grant
    Filed: June 5, 2019
    Date of Patent: April 21, 2020
    Assignee: TEXAS INSTRUMENTS INCORPORATED
    Inventors: Alexander Tessarolo, Prasanth Viswanathan Pillai, Venkatesh Natarajan
  • Patent number: 10599396
    Abstract: An integer division circuit includes a first bit-shifting circuit configured to shift the bits of a dividend to produce a normalized dividend. The circuit also includes a second bit-shifting circuit configured to shift the bits of a divisor to produce a normalized divisor. A divider tree circuit is configured to divide the normalized dividend by the normalized divisor to produce a normalized quotient. The circuit further includes a third bit-shifting circuit configured to shift the bits of the normalized quotient to produce a quotient.
    Type: Grant
    Filed: March 3, 2017
    Date of Patent: March 24, 2020
    Assignee: Continental Automotive Systems, Inc.
    Inventors: Howard Wood Bailey, Nitin Kataria, Tim Ho Chan
  • Patent number: 10552149
    Abstract: A data processing device has an instruction decoder, a control logic unit, and ALU. The instruction decoder decodes instruction codes of an arithmetic instruction. The control logic unit detects the effective data width of operation data to be processed according to the decode result from the instruction decoder and determines the number of cycles for the instruction execution corresponding to the effective, data width. The ALU executes the instruction with the number of cycles of the instruction execution determined by the control logic unit.
    Type: Grant
    Filed: May 23, 2018
    Date of Patent: February 4, 2020
    Assignee: RENESAS ELECTRONICS CORPORATION
    Inventors: Sugako Ohtani, Hiroyuki Kondo
  • Patent number: 10416963
    Abstract: A data processing apparatus is provided, for performing a determination of whether a value falls within a boundary defined by a lower limit between 0 and 2m and an upper limit between 0 and 2m. The apparatus includes storage circuitry that stores each of the lower limit and the upper limit in a compressed form as a mantissa of q<m bits and a shared exponent e. A most significant m-q-e bits of said lower limit and said upper limit are equal to a most significant m-q-e bits of said value. Adjustment circuitry performs adjustments to the lower limit and the upper limit in compressed form and boundary comparison circuitry performs the determination on the value using the lower limit and the upper limit in the compressed form.
    Type: Grant
    Filed: June 19, 2017
    Date of Patent: September 17, 2019
    Assignee: ARM Limited
    Inventors: Daniel Arulraj, Graeme Peter Barnes, Lee Eisen, Gary Gorman
  • Patent number: 10372414
    Abstract: Systems, apparatuses, and methods for implementing a fractional pointer lookup table are disclosed. A system includes a fractional pointer lookup table and control logic coupled to the table. The control logic performs an access to the table with a numerator and a denominator, wherein the numerator and the denominator are integers. The control logic receives a result of the lookup, wherein the result is either a rounded-up value of a quotient of the numerator and denominator or a rounded-down value of the quotient. In one embodiment, the control logic provides a fractional pointer to the table with each access and receives a fractional pointer limit from the table. The control logic initializes the fractional pointer to zero, increments the fractional pointer after each access to the table, and resets the fractional pointer to zero when the fractional pointer reaches the fractional pointer limit.
    Type: Grant
    Filed: October 27, 2017
    Date of Patent: August 6, 2019
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Chintan S. Patel, Alan Dodson Smith
  • Patent number: 10359995
    Abstract: A processor includes a core and a plurality of registers including a first register, a second register, and a third register. The core is configured to perform a division operation that includes execution of a sign extraction instruction in which a sign of at least one of a numerator value and a denominator value is stored, a conditional subtraction instruction which divides the numerator value by the denominator value to generate a quotient value and a remainder value, and a sign assignment instruction which adjusts the sign of at least one of the quotient and remainder values. The conditional subtraction instruction is configured to cause the core to perform multiple iterations of a conditional subtraction in one execution of the conditional subtraction instruction and in one clock cycle. Others methods and apparatus are described as well.
    Type: Grant
    Filed: April 29, 2016
    Date of Patent: July 23, 2019
    Assignee: TEXAS INSTRUMENTS INCORPORATED
    Inventors: Alexander Tessarolo, Prasanth Viswanathan Pillai, Venkatesh Natarajan
  • Patent number: 10353671
    Abstract: A data processing apparatus comprises signal receiving circuitry to receive a signal corresponding to a divide instruction that identifies a dividend x and a divisor d. Processing circuitry performs, in response to said divide instruction, a radix-N division algorithm to generate a result value q=x/d, where N is an integer power of 2 and greater than 1. Said division algorithm comprises a plurality of iterations, each of said plurality of iterations being performed by quotient digit calculation circuitry to determine a quotient value of that iteration q[i+1] based on a remainder value of a previous iteration rem[i]; and remainder calculation circuitry to determine a remainder value of that iteration rem[i+1] based on said quotient value of that iteration q[i+1] and said remainder value of said previous iteration rem[i]. Result calculation circuitry derives said result value q based on each quotient value selected by said digit selection circuitry for each of said plurality of iterations.
    Type: Grant
    Filed: January 13, 2016
    Date of Patent: July 16, 2019
    Assignee: ARM Limited
    Inventor: Javier Diaz Bruguera
  • Patent number: 10223073
    Abstract: Apparatuses and methods of manufacturing same, systems, and methods for performing recursive operations using a partial remainder-divisor (PD) table are described. In one aspect, it is determined whether a current cell in the PD table indicated by a current partial remainder/radicand row value and a current divisor/root column value is outside a primary region of the PD table. If the current cell is outside the primary region of the PD table, at least one of the current partial remainder/radicand row value and the current divisor/root column value are adjusted so that the indicated current cell falls within the primary region of the PD table.
    Type: Grant
    Filed: February 13, 2017
    Date of Patent: March 5, 2019
    Assignee: Samsung Electronics Co., Ltd
    Inventors: Bonnie Collett Sexton, James T. Longino
  • Patent number: 9753691
    Abstract: A method for fast parallel adder processing. The method includes receiving parallel inputs from a communications path, wherein each input comprises one bit, adding the inputs using a parallel structure, wherein the parallel structure is optimized to accelerate the addition by utilizing a characteristic that the inputs are one bit each, and transmitting the resulting outputs to a subsequent stage.
    Type: Grant
    Filed: March 14, 2014
    Date of Patent: September 5, 2017
    Assignee: Intel Corporation
    Inventor: Mohammad Abdallah
  • Patent number: 9335967
    Abstract: A method is provided to narrow down the exponent range throughout most part of the division and square root calculations, to make both software assistance and precision extension unnecessary. The method adjusts the exponent at the end of the calculation to reach IEEE-754 results.
    Type: Grant
    Filed: June 13, 2013
    Date of Patent: May 10, 2016
    Assignee: CADENCE DESIGN SYSTEMS, INC.
    Inventors: William A. Huffman, David H. C. Chen
  • Patent number: 9218157
    Abstract: The disclosed embodiments disclose techniques for using a split division circuit that includes a first divider that is optimized for a first range of divisor values and a second divider that is optimized for a second range of divisor values; the first range is distinct from the second range. During operation, the circuit receives a divisor for the division operation. The circuit: determines whether the divisor is in the first range or the second range to determine whether the first divider or the second divider should perform the division operation; performs the division operation in the selected host divider; and then outputs the result that was generated by the selected host divider.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: December 22, 2015
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Josephus C. Ebergen, Navaneeth P. Jamadagni, Ivan E. Sutherland
  • Patent number: 9213639
    Abstract: Divisions by numbers that are not divisible by two (2) can be performed in a computing system based on a summation that estimates and/or approximates the reciprocal of the dividing number or denominator value. By way of example, dividing by three (3) can be calculated based on a summation that approximates or estimates one third (?) represented as the sum of a selected group of the inverses of the powers of two (2) in a pattern, namely the sum of: ¼, 1/16, 1/64, 1/256, . . . ). Applications of the division techniques are virtually unlimited and include memory mapping of global memory addresses to memory channel addresses by dividing a global memory address into the number of memory channels, allowing memory mapping to be performed in an efficient manner even for large memory spaces using a number of memory channels that are not divisible by two, including prime numbers.
    Type: Grant
    Filed: September 25, 2012
    Date of Patent: December 15, 2015
    Assignee: Teradata US, Inc.
    Inventor: Jeremy Branscome
  • Patent number: 9086890
    Abstract: Techniques are disclosed relating to integrated circuits that include hardware support for divide and/or square root operations. In one embodiment, an integrated circuit is disclosed that includes a division unit that, in turn, includes a normalization circuit and a plurality of divide engines. The normalization circuit is configured to normalize a set of operands. Each divide engine is configured to operate on a respective normalized set of operands received from the normalization circuit. In some embodiments, the integrated circuit includes a scheduler unit configured to select instructions for issuance to a plurality of execution units including the division unit. The scheduler unit is further configured to maintain a counter indicative of a number of instructions currently being operated on by the division unit, and to determine, based on the counter whether to schedule subsequent instructions for issuance to the division unit.
    Type: Grant
    Filed: January 6, 2012
    Date of Patent: July 21, 2015
    Assignee: Oracle International Corporation
    Inventors: Christopher H. Olson, Jeffrey S. Brooks, Matthew B. Smittle
  • Patent number: 9009209
    Abstract: A processor for dividing by calculating repeatedly an n-bit width partial quotient includes, a dividend zero count value counter that counts a dividend zero count value, a divisor zero count value counter that counts a divisor zero count value, a correction value calculator that calculates a correction value to a loop count value, a correction loop count value calculator that calculates a correction loop count value, a dividend shift unit that shifts leftward an absolute value of the dividend by the dividend zero count value and shifts rightward the leftward-shifted absolute value of the dividend by the correction value, a divisor shift unit that shifts leftward an absolute value of the divisor by the divisor zero count value, and a division loop operation unit that divides based on an output value from the dividend shift unit, an output value from the divisor shift unit, and the correction loop count value.
    Type: Grant
    Filed: July 14, 2010
    Date of Patent: April 14, 2015
    Assignee: Fujitsu Limited
    Inventors: Kenichi Kitamura, Shiro Kamoshida
  • Patent number: 8914431
    Abstract: Mechanisms for utilizing a reduced lookup table circuit to perform an operation in a data processing device are provided. A first input value is input for selecting a subset of values from the reduced lookup table circuit. The reduced lookup table circuit stores only boundary cell values from a fully filled lookup table corresponding to the reduced lookup table circuit. The subset of values comprises only a subset of boundary cell values corresponding to the first input value. A second value is input and a comparison, by the reduced lookup table circuit, of the second value to each of the boundary cell values in the subset of boundary cell values is performed. The reduced lookup table circuit outputs an output value based on results of the comparison of the second value to each of the boundary cell values in the subset of boundary cell values.
    Type: Grant
    Filed: January 3, 2012
    Date of Patent: December 16, 2014
    Assignee: International Business Machines Corporation
    Inventors: Steven R. Carlough, Klaus M. Kroener, Christophe J. Layer, Silvia Melitta Mueller, Kerstin Schelm
  • Patent number: 8898215
    Abstract: The high-radix multiplier-divider provides a system and method utilizing an SRT digit recurrence algorithm that provides for simultaneous multiplication and division using a single recurrence relation. When A, B, D and Q are fractions (e.g., Q=0·q?1 q?2 . . . q?n), then the algorithm provides for computing S = AB D to yield a w-bit quotient Q and w-bit remainder R by: (1) determining the next quotient digit q?j using a quotient digit selection function; (2) generating the product q?jD; and (3) performing the triple addition of rRj-1, (?q?jD) and b - ( j - 1 ) ? ( A r ) where R0=b?1Ar?1. The recurrence relation may be implemented with carry-save adders for computation using bitwise logical operators (AND, OR, XOR).
    Type: Grant
    Filed: June 1, 2011
    Date of Patent: November 25, 2014
    Assignee: King Fahd University of Petroleum and Minerals
    Inventors: Alaaeldin Amin, Muhammad Waleed Shinwari
  • Patent number: 8892622
    Abstract: A pipelined circuit for performing a divide operation on small operand sizes. The circuit includes a plurality of stages connected together in a series to perform a subtractive divide algorithm based on iterative subtractions and shifts. Each stage computes two quotient bits and outputs a partial remainder value to the next stage in the series. The first and last stages utilize a radix-4 serial architecture with edge modifications to increase efficiency. The intermediate stages utilize a radix-4 parallel architecture. The divide architecture is pipelined such that input operands can be applied to the divider on each clock cycle.
    Type: Grant
    Filed: April 7, 2011
    Date of Patent: November 18, 2014
    Assignee: Oracle International Corporation
    Inventors: Christopher H. Olson, Jeffrey S. Brooks
  • Patent number: 8725786
    Abstract: The invention relates to a program storage device readable by a machine, tangibly embodying a program of instructions executable by a specific semiconductor-based computational device situated in the machine to perform the steps of a partial SRT (PSRT) division of a dividend X by a divisor D to obtain a quotient Q. The steps include: causing a computer to obtain the dividend X and the divisor D; representing the dividend X and the divisor D as a digital representation having a plurality of bits; and performing iteratively a series of steps until a desired accuracy of the quotient Q is achieved. The invention also relates to an article of manufacture including a computer usable medium having computer readable program code embodied therein for causing a partial SRT (PSRT) division of a dividend X by a divisor D to generate a quotient Q.
    Type: Grant
    Filed: April 29, 2010
    Date of Patent: May 13, 2014
    Assignee: University of Massachusetts
    Inventor: Makia Powell
  • Patent number: 8713084
    Abstract: A method, system and computer program product for verifying a result of a floating point division operation are provided. The method includes: receiving a result of a floating point division operation for a dividend and a divisor; performing a comparison of a magnitude of a least significant bit (LSB) of the dividend and a magnitude of a most significant bit (MSB) of a remainder; and determining whether the result is correct based on the comparison.
    Type: Grant
    Filed: February 25, 2008
    Date of Patent: April 29, 2014
    Assignee: International Business Machines Corporation
    Inventors: Joshua M. Weinberg, Martin S. Schmookler
  • Patent number: 8700688
    Abstract: A data processing system 2 includes an instruction decoder 22 responsive to polynomial divide instructions DIVL.PN to generate control signals that control processing circuitry 26 to perform a polynomial division operation. The denominator polynomial is represented by a denominator value stored within a register with an assumption that the highest degree term of the polynomial always has a coefficient of “1” such that this coefficient need not be stored within the register storing the denominator value and accordingly the denominator polynomial may have a degree one higher than would be possible with the bit space within the register storing the denominator value alone. The polynomial divide instruction returns a quotient value and a remainder value respectively representing the quotient polynomial and the remainder polynomial.
    Type: Grant
    Filed: February 23, 2009
    Date of Patent: April 15, 2014
    Assignee: U-Blox AG
    Inventors: Dominic H Symes, Daniel Kershaw, Martinus C Wezelenburg
  • Publication number: 20140067894
    Abstract: Systems and methods for efficiently handling problematic corner cases in floating point operations without raising flags or exceptions. One or more floating point numbers that will generate a problematic corner case in floating point computations, such as division or square root computation, are detected. Fix-up operations are applied to modify the computation such that the problematic corner case is avoided. The modified computation then is performed, while suppressing error flags are suppressed during intermediate stages.
    Type: Application
    Filed: August 30, 2012
    Publication date: March 6, 2014
    Applicant: QUALCOMM INCORPORATED
    Inventors: Erich James Plondke, David J. Hoyle, Swaminathan Balasubramanian
  • Patent number: 8601047
    Abstract: A decimal floating-point (DFP) adder includes a decimal leading-zero anticipator (LZA). The DFP adder receives DFP operands. Each operand includes a significand, an exponent, a sign bit and a leading zero count for the significand. The DFP adder adds or subtracts the DFP operands to obtain a DFP result. The LZA determines the leading zero count associated with the significand of the DFP result. The LZA operates at least partially in parallel with circuitry (in the DFP adder) that computes the DFP result. The LZA does not wait for that circuitry to finish computation of the DFP result. Instead it “anticipates” the number of leading zeros that the result's significand will contain.
    Type: Grant
    Filed: June 13, 2013
    Date of Patent: December 3, 2013
    Assignee: Advanced Micro Devices
    Inventor: Liang-Kai Wang
  • Patent number: 8527573
    Abstract: A device for calculating the quotient q and remainder r of the division (y·k1+x)/k2, wherein k1 and k2 are integers and constant, and wherein x and y are integers. The device comprises a first digital circuit for receiving as input values of y and identifying corresponding values of the quotient qy and the remainder ry of the function y·k1/k2, a second digital circuit for calculating the remainder r of the division, by a) calculating a combined value (x+ry) of the remainder ry and the value of x, b) verifying if the combined value (x+ry) is less than k2, c) correcting the combined value (x+ry) if the verification indicates that the combined value (x+ry) is not less than k2, and d) assigning the corrected combined value (x+ry) to the remainder r, a third digital circuit for calculating the quotient q of the division, by a) correcting the quotient qy if the verification (2206) indicates that the combined value (x+ry) is not less than k2, and b) assigning the corrected quotient qy to the quotient q.
    Type: Grant
    Filed: September 7, 2010
    Date of Patent: September 3, 2013
    Assignee: STMicroelectronics S.R.L.
    Inventors: Mirko Dondini, Amedeo La Scala
  • Patent number: 8489663
    Abstract: A decimal floating-point (DFP) adder includes a decimal leading-zero anticipator (LZA). The DFP adder receives DFP operands. Each operand includes a significand, an exponent, a sign bit and a leading zero count for the significand. The DFP adder adds or subtracts the DFP operands to obtain a DFP result. The LZA determines the leading zero count associated with the significand of the DFP result. The LZA operates at least partially in parallel with circuitry (in the DFP adder) that computes the DFP result. The LZA does not wait for that circuitry to finish computation of the DFP result. Instead it “anticipates” the number of leading zeros that the result's significand will contain.
    Type: Grant
    Filed: June 5, 2009
    Date of Patent: July 16, 2013
    Assignee: Advanced Micro Devices
    Inventor: Liang-Kai Wang
  • Patent number: 8489665
    Abstract: A dividing unit sets an actual packet length transferred from a packet receiving section to a variable U, and then sets 2? to a variable V. If a positive number determining section determines that a subtraction result of subtracting a remainder N0 from a quotient M0, both found by dividing U by V, is a positive number, the dividing unit overwrites the subtraction result to U. The dividing unit repeats such operations of dividing the subtraction result by V, until the positive number determining section determines that the subtraction result of subtracting the remainder from the quotient, both found by dividing U by V, is a non-positive number. When the subtraction result becomes a non-positive number and the quotient and the remainder match, a packet length determining section determines that received data has a normal size, and notifies it to a discard determining section.
    Type: Grant
    Filed: January 28, 2009
    Date of Patent: July 16, 2013
    Assignee: Fujitsu Limited
    Inventors: Fuyuta Sato, Hideo Okawa
  • Publication number: 20130179664
    Abstract: Techniques are disclosed relating to integrated circuits that include hardware support for divide and/or square root operations. In one embodiment, an integrated circuit is disclosed that includes a division unit that, in turn, includes a normalization circuit and a plurality of divide engines. The normalization circuit is configured to normalize a set of operands. Each divide engine is configured to operate on a respective normalized set of operands received from the normalization circuit. In some embodiments, the integrated circuit includes a scheduler unit configured to select instructions for issuance to a plurality of execution units including the division unit. The scheduler unit is further configured to maintain a counter indicative of a number of instructions currently being operated on by the division unit, and to determine, based on the counter whether to schedule subsequent instructions for issuance to the division unit.
    Type: Application
    Filed: January 6, 2012
    Publication date: July 11, 2013
    Inventors: Christopher H. Olson, Jeffrey S. Brooks, Matthew B. Smittle
  • Patent number: 8484267
    Abstract: Weight normalization in hardware or software without a division operator is described, using only right bit shift, addition and subtraction operations. A right bit shift is performed on an expected sum to effectively divide the expected sum by two to provide a first updated value for the expected sum. An iteration is performed which includes: incrementing with a first adder a first variable by the first updated value of the expected sum to provide an updated value for the first variable; subtracting with a first subtractor a second weight from a first weight to provide a first updated value for the first weight; and performing a left bit shift on the second weight to effectively multiply the second weight by two to provide a first updated value for the second weight.
    Type: Grant
    Filed: November 19, 2009
    Date of Patent: July 9, 2013
    Assignee: Xilinx, Inc.
    Inventor: Gabor Szedo
  • Publication number: 20130173681
    Abstract: Mechanisms for utilizing a reduced lookup table circuit to perform an operation in a data processing device are provided. A first input value is input for selecting a subset of values from the reduced lookup table circuit. The reduced lookup table circuit stores only boundary cell values from a fully filled lookup table corresponding to the reduced lookup table circuit. The subset of values comprises only a subset of boundary cell values corresponding to the first input value. A second value is input and a comparison, by the reduced lookup table circuit, of the second value to each of the boundary cell values in the subset of boundary cell values is performed. The reduced lookup table circuit outputs an output value based on results of the comparison of the second value to each of the boundary cell values in the subset of boundary cell values.
    Type: Application
    Filed: January 3, 2012
    Publication date: July 4, 2013
    Applicant: International Business Machines Corporation
    Inventors: Steven R. Carlough, Klaus M. Kroener, Christophe J. Layer, Silvia Melitta Mueller, Kerstin Schelm
  • Patent number: 8452831
    Abstract: A floating-point circuit may include a floating-point operand normalization circuit configured to receive input floating-point operands of a given floating-point divide operation, the operands comprising a dividend and a divisor, as well as a divide engine coupled to the normalization circuit. In response to determining that one or more of the input floating-point operands is a denormal number, the operand normalization circuit may be further configured to normalize the one or more of the input floating-point operands and output a normalized dividend and normalized divisor to the divide engine, and dependent upon respective numbers of leading zeros of the dividend and divisor prior to normalization, generate a value indicative of a maximum possible number of digits of a quotient (NDQ). The divide engine may be configured to iteratively generate NDQ digits of a floating-point quotient from the normalized dividend and the normalized divisor provided by the floating-point operand normalization circuit.
    Type: Grant
    Filed: March 31, 2009
    Date of Patent: May 28, 2013
    Assignee: Oracle America, Inc.
    Inventors: Christopher H. Olson, Jeffrey S. Brooks
  • Patent number: 8429217
    Abstract: A mechanism for executing fixed point divide operations using a floating point multiply-add pipeline are provided. With the mechanism, the floating point execution unit in a processor is modified to include elements that may be used to perform fixed point divide operations. These additional elements include a leading zero counter, a leading one counter, an estimate table unit, and a state machine. The fixed point divide operands are converted to a floating point format and an estimate of the reciprocal of the divisor is generated using estimate tables. These values are used in multiple passes through the floating point unit for calculating estimates of the quotient and corresponding error values. The estimates of the quotient are based on previous estimates of the quotient in a prior pass through the floating point unit and a corresponding error value. The final quotient estimate is truncated.
    Type: Grant
    Filed: May 29, 2008
    Date of Patent: April 23, 2013
    Assignee: International Business Machines Corporation
    Inventor: Martin Stanley Schmookler
  • Patent number: 8402078
    Abstract: A method, computer program product and a system for controlling a fixed point division operation are provided. The method includes: receiving an instruction to perform a division operation for a dividend and a divisor, the operation comprising a maximum number of iterations to produce a quotient having a maximum precision; calculating a magnitude of at least one of the dividend and the divisor; determining a quotient precision based on the magnitude; and computing a required number of iterations needed to produce the quotient precision and performing the number of iterations.
    Type: Grant
    Filed: February 26, 2008
    Date of Patent: March 19, 2013
    Assignee: International Business Machines Corporation
    Inventors: Joshua M. Weinberg, Martin S. Schmookler
  • Publication number: 20120226730
    Abstract: A computer-implemented method for executing a floating-point calculation where an exact value of an associated result cannot be expressed as a floating-point value is disclosed. The method involves: generating an estimate of the associated result and storing the estimate in memory; calculating an amount of error for the estimate; determining whether the amount of error is less than or equal to a threshold of error for the associated result; and if the amount of error is less than or equal to the threshold of error, then concluding that the estimate of the associated result is a correctly rounded result of the floating-point calculation; or if the amount of error is greater than the threshold of error, then testing whether the floating-point calculation constitutes an exception case.
    Type: Application
    Filed: March 1, 2011
    Publication date: September 6, 2012
    Inventor: Alexandru FIT-FLOREA
  • Patent number: 8233614
    Abstract: The invention relates to a cryptographic method involving an integer division of type q=a div b and r=a mod b, wherein a is a number of m bits, b is a number of n bits, with n being less than or equal to m, and bn?1 being non-null and the most significant bit of b. In addition, each iteration of a loop subscripted by i, which varies between 1 and m?n+1, involves a partial division of a word A of n bits of number a by number b in order to obtain one bit of quotient q. According to the invention, the same operations are performed with each iteration, regardless of the value of the quotient bit obtained. In different embodiments of the invention, one of the following is also performed with each iteration: the addition and subtraction of number b to/from word A; the addition of number b or a complementary number /b of b to word A; or a complement operation at 2n of an updated datum (b or /b) or a dummy datum (c or /c) followed by the addition of the datum updated with word A.
    Type: Grant
    Filed: November 13, 2003
    Date of Patent: July 31, 2012
    Assignee: Gemalto SA
    Inventors: Marc Joye, Karine Villegas
  • Patent number: 8176111
    Abstract: An improved method and apparatus for performing floating-point division is disclosed. In a particular embodiment, fractional operands are pre-scaled and an estimate of a reciprocal of the pre-scaled fractional divisor is obtained from a lookup table using a portion of the bits of the pre-scaled fractional divisor. This value is used to scale the fractional operands and a multiply-add operation is used based on principles of series expansion to compute a final result with an acceptable degree of accuracy.
    Type: Grant
    Filed: January 14, 2008
    Date of Patent: May 8, 2012
    Assignee: Altera Corporation
    Inventors: Jianhua Liu, Gregg William Baeckler
  • Patent number: 8170695
    Abstract: Methods and a system are disclosed for one or more appliances including a controller for managing power consumption within a household. The controller is configured to receive and process a signal indicative of one or more energy parameters of an associated energy utility, including at least a peak demand period or an off-peak demand period. A generated serial number is obtained from an original serial number of the appliance or controller, which is configured for a signal to communicate to the appliance within a population and command the appliance to operate in an energy savings mode and a normal mode at various time periods. The generated serial number (GSN) is used to segregate a total population into segments to provide granularity in assigning DR activations and deactivations based upon the GSN.
    Type: Grant
    Filed: July 16, 2010
    Date of Patent: May 1, 2012
    Assignee: General Electric Company
    Inventors: Lucas Bryant Spicer, John K. Besore
  • Patent number: 8166092
    Abstract: When division X/Y of floating point numbers is performed, bit string data of a mantissa x including a fraction xf of X or a mantissa y including a fraction yf of Y is shifted in accordance with magnitude relation between them to perform a fraction computation. Thereby, a fraction division result in which the position of the most significant bit is fixed at a prescribed digit is generated. When a square root operation ?Y is performed, a fraction square root operation result in which the position of the most significant bit is fixed at a prescribed digit is generated by an exception handling if all of the three conditions that all the bits in the fraction of Y are one, a difference between the exponent ye of Y and a bias value b is an odd number, and a rounding mode is a positive infinity direction are satisfied.
    Type: Grant
    Filed: May 21, 2008
    Date of Patent: April 24, 2012
    Assignee: Fujitsu Limited
    Inventor: Shiro Kamoshida
  • Patent number: 8139696
    Abstract: A method is provided of characterising a data stream of binary symbols, the method comprising sampling the stream at a predetermined rate sufficient to capture at least two samples per binary symbol, identifying the shortest continuous run of samples having the same logic level and assigning a symbol rate to the stream on the basis that the identified run is one symbol in length.
    Type: Grant
    Filed: July 1, 2005
    Date of Patent: March 20, 2012
    Assignees: MStar Semiconductor, Inc., MStar Software R&D, Ltd., MStar France SAS, MStar Semiconductor, Inc.
    Inventor: Richard Neil Hunt
  • Publication number: 20120059866
    Abstract: A method and apparatus provides for performing floating-point division using input check/output correction floating-point division logic and a floating-point division fix-up instruction (e.g., an instruction, command, signal or other indicator). In one example, the apparatus includes a processor having a floating-point arithmetic logic unit (ALU) that includes the input check/output correction floating-point division logic. The input check/output correction floating-point division logic is responsive to the floating-point division fix-up instruction executable by the floating-point ALU that causes the input check/output correction floating-point division logic to examine a first input representing a numerator and a second input representing a denominator to determine whether a special case of floating-point division occurs.
    Type: Application
    Filed: September 3, 2010
    Publication date: March 8, 2012
    Applicant: ADVANCED MICRO DEVICES, INC.
    Inventors: James Conyngham, Jeffrey T. Brady, Christopher L. Spencer
  • Publication number: 20110131262
    Abstract: A floating point divider includes a mantissa repetitive processing unit and an operation execution control unit. The mantissa repetitive processing unit calculates a quotient and a partial remainder by a digit-recurrence process for a mantissa of a dividend of an input operand. The operation execution control unit determines a bit value at a specified position uniquely specified based on a radix of an operation execution process with respect to the partial remainder. The mantissa repetitive processing unit reduces the number of digit-recurrence processes by calculating a quotient and a remainder based on a determining result of the operation execution control unit. The number of bits of the quotient is double of that of a quotient calculated once every the digit-recurrence process. The number of left-shift processes processed on the remainder is double of that of a remainder calculated once every the digit-recurrence process.
    Type: Application
    Filed: December 1, 2010
    Publication date: June 2, 2011
    Inventor: SATOSHI NAKAZATO
  • Patent number: 7921149
    Abstract: A division and square root arithmetic unit carries out a division operation of a higher radix and a square root extraction operation of a lower radix. A certain bit number (determined on the basis of a radix of an operation) of data selected from upper bits of the output of a carry save adder and the output of the adder are input to convert the data into twos complement representation data, and the twos complement representation data is shifted a certain bit number (determined on the basis of the radix of the operation) to use the shifted data for a partial remainder of the next digit. Hence, a large number of parts such as registers of a divisor and a partially extracted square root can be commonly used in a divider and a square root extractor to realize an effective and high performance arithmetic unit.
    Type: Grant
    Filed: December 13, 2005
    Date of Patent: April 5, 2011
    Assignee: NEC Corporation
    Inventor: Takahiko Uesugi
  • Patent number: 7873687
    Abstract: The invention proposes a Floating Point Unit with fused multiply-add, with one addend Method for calculating a result of a division with an A-register and a B-register for two multiplicand operands and a C-register for an addend operand, wherein a divide processor using a subtractive method for calculation with a divisor register and a partial remainder register and a multiplier associated to an subtractor uses the C-register as input, wherein while loading the fraction of the dividend through the divisor register into the partial remainder register of the divide processor a calculated shifting is applied for alignment by using the multiplier associated to the subtractor.
    Type: Grant
    Filed: July 19, 2006
    Date of Patent: January 18, 2011
    Assignee: International Business Machines Corporation
    Inventors: Guenter Gerwig, Holger Wetter
  • Publication number: 20100250639
    Abstract: A floating-point circuit may include a floating-point operand normalization circuit configured to receive input floating-point operands of a given floating-point divide operation, the operands comprising a dividend and a divisor, as well as a divide engine coupled to the normalization circuit. In response to determining that one or more of the input floating-point operands is a denormal number, the operand normalization circuit may be further configured to normalize the one or more of the input floating-point operands and output a normalized dividend and normalized divisor to the divide engine, and dependent upon respective numbers of leading zeros of the dividend and divisor prior to normalization, generate a value indicative of a maximum possible number of digits of a quotient (NDQ). The divide engine may be configured to iteratively generate NDQ digits of a floating-point quotient from the normalized dividend and the normalized divisor provided by the floating-point operand normalization circuit.
    Type: Application
    Filed: March 31, 2009
    Publication date: September 30, 2010
    Inventors: Christopher H. Olson, Jeffrey S. Brooks
  • Patent number: 7752250
    Abstract: A method for determining the correct result and the correct guard and sticky bits to obtain a more accurate result in floating point divide operations is presented. An intermediate divide result or quotient is obtained from a multiply-add hardware pipeline of a floating point processor. Remainders are calculated using the floating point numbers divided, the unit of least precision, and the unit of least precision plus one to determine where the infinitely precise result is with respect to the digital representation of the estimated quotient. Evaluating these remainders and the initial floating point numbers and comparing their signs and magnitudes leads to a selection of one of three choices as the most accurate representation of the infinitely precise result as calculated in the inventive rounding method: the intermediate result minus the unit of least precision; the intermediate divide result; or the intermediate divide result plus the unit of least precision.
    Type: Grant
    Filed: January 12, 2006
    Date of Patent: July 6, 2010
    Assignee: International Business Machines Corporation
    Inventor: Charles David Wait
  • Publication number: 20100169396
    Abstract: For eigenvalue decomposition, a first set of at least one variable is derived based on a first matrix being decomposed and using Coordinate Rotational Digital Computer (CORDIC) computation. A second set of at least one variable is derived based on the first matrix and using a look-up table. A second matrix of eigenvectors of the first matrix is then derived based on the first and second variable sets. To derive the first variable set, CORDIC computation is performed on an element of the first matrix to determine the magnitude and phase of this element, and CORDIC computation is performed on the phase to determine the sine and cosine of this element. To derive the second variable set, intermediate quantities are derived based on the first matrix and used to access the look-up table.
    Type: Application
    Filed: March 9, 2010
    Publication date: July 1, 2010
    Applicant: QUALCOMM INCORPORATED
    Inventors: Steven J. Howard, John W. Ketchum, Mark S. Wallace, Jay Rodney Walton
  • Patent number: 7613762
    Abstract: A system for providing a floating point remainder comprises an analyzer circuit configured to determine a first status of a first floating point operand and a second status of a second floating point operand based upon data within the first floating point operand and the second floating point operand, respectively. In addition, the system comprises a results circuit coupled to the analyzer circuit. The results circuit is configured to assert a resulting floating point operand containing the remainder of the first floating point operand and the second floating point operand and a resulting status embedded within the resulting floating point operand.
    Type: Grant
    Filed: December 28, 2001
    Date of Patent: November 3, 2009
    Assignee: Sun Microsystems, Inc.
    Inventor: Guy L. Steele, Jr.
  • Publication number: 20090216824
    Abstract: A method, computer program product and a system for controlling a fixed point division operation are provided. The method includes: receiving an instruction to perform a division operation for a dividend and a divisor, the operation comprising a maximum number of iterations to produce a quotient having a maximum precision; calculating a magnitude of at least one of the dividend and the divisor; determining a quotient precision based on the magnitude; and computing a required number of iterations needed to produce the quotient precision and performing the number of iterations.
    Type: Application
    Filed: February 26, 2008
    Publication date: August 27, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Joshua M. Weinberg, Martin S. Schmookler
  • Publication number: 20090216823
    Abstract: A method, system and computer program product for verifying a result of a floating point division operation are provided. The method includes: receiving a result of a floating point division operation for a dividend and a divisor; performing a comparison of a magnitude of a least significant bit (LSB) of the dividend and a magnitude of a most significant bit (MSB) of a remainder; and determining whether the result is correct based on the comparison.
    Type: Application
    Filed: February 25, 2008
    Publication date: August 27, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Joshua M. Weinberg, Martin S. Schmookler
  • Patent number: 7539720
    Abstract: A method and device divides a dividend by a divisor, the dividend and the divisor both being integers. The method and device determine a maximum possible number of quotient digits (NDQ) based on a number of significant digits of the divisor and the dividend, normalizes the dividend and divisor, and calculates NDQ number of quotient digits from the normalized divisor and dividend.
    Type: Grant
    Filed: December 15, 2004
    Date of Patent: May 26, 2009
    Assignee: Sun Microsystems, Inc.
    Inventors: Christopher H. Olson, Jeffrey S. Brooks, Paul J. Jagodik