Overflow Or Underflow Patents (Class 708/498)
-
Patent number: 11169777Abstract: A method and apparatus for handling overflow conditions resulting from arithmetic operations involving floating point numbers. An indication is stored as part of a thread's context indicating one of two possible modes for handling overflow conditions. In a first mode, a result of an arithmetic operation is set to the limit representable in the floating point format. In a second mode, a result of an arithmetic operation is set to a NaN.Type: GrantFiled: April 26, 2019Date of Patent: November 9, 2021Assignee: Graphcore LimitedInventors: Alan Graham Alexander, Edward Andrews, Stephen Felix, Mrudula Chidambar Gore
-
Patent number: 10671388Abstract: The embodiments herein describe handling overflow that occurs between different portions of a multi-result vector storing results from performing multiple operations in parallel. Rather than using guard bits to separate the various results in the multi-result vector, the embodiments herein describe using overflow monitors to detect and account for overflow that can occur in a multi-result vector that is passed in a chain of arithmetic units. Side band logic evaluates the LSBs in the operands for the reduced-precision operations to generate an expected value of performing the operation and compares the expected value to an actual value of the corresponding bits in the multi-result vector. If the expected and actual values match, then there was no overflow. However, if the values do not match, the side band logic updates the overflow value so that this overflow can be corrected once the final multi-result vector has been calculated.Type: GrantFiled: November 26, 2018Date of Patent: June 2, 2020Assignee: XILINX, INC.Inventors: Thomas B. Preusser, Thomas A. Branca
-
Patent number: 10228910Abstract: A circuit is provided which includes arithmetic computation logic configured to add or subtract operands of variable length to produce a result in a sign-magnitude data format. The circuit also includes an overflow detector to provide an overflow signal indicative of whether the result fits within a specified result length l. The overflow detector operates on the operands prior to the arithmetic computation logic producing the result to determine, independent of the result produced by the arithmetic computation logic, whether the result fits within the specified result length l.Type: GrantFiled: May 1, 2018Date of Patent: March 12, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Petra Leber, Cedric Lichtenau, Silvia M. Mueller
-
Patent number: 10228939Abstract: Embodiments of a processing pipeline for converting numbers formatted in a machine independent format to a machine compatible format are disclosed. In response to execution of a conversion instruction, the processing pipeline may convert each digit of a number in a machine independent format number to generate converted digits. Using the converted digits, the processing pipeline may generate multiple intermediate products. The processing pipeline may then combine the intermediate products to generate a result number that is formatted with a machine compatible format.Type: GrantFiled: December 14, 2016Date of Patent: March 12, 2019Assignee: Oracle International CorporationInventors: Jeffrey S. Brooks, Austin Lee
-
Patent number: 10157059Abstract: A processor for floating point underflow detection includes circuitry to decode a first instruction and a floating point unit. The decoded instruction, when executed by the processor, may be for performing a fused multiply-add (FMA) operation. The floating point unit includes circuitry to determine a non-normalized result of the first instruction based on a first input, a second input, and a third input. The floating point unit further includes circuitry to determine whether underflow exists in the non-normalized result based on a first exponent of the first input, a second exponent of the second input, and a third exponent of the third input.Type: GrantFiled: September 29, 2016Date of Patent: December 18, 2018Assignee: Intel CorporationInventors: Simon Rubanovich, Thierry Pons, Zeev Sperber, Amit Gradstein
-
Patent number: 9823897Abstract: An apparatus and method for floating-point multiplication are provided. Two partial products are generated from two operand significands. An unbiased result exponent is determined from operand exponent values and leading zero counts, and a shift amount and direction for a product significand as needed for a predetermined minimum exponent value of a predetermined canonical format. First and second rounding values for injection into addition of the partial products are generated by shifting a predetermined rounding pattern by the shift amount in an opposite shift direction for the first rounding value and left shifting by one bit the first rounding value to give the second. The first and second partial products are added together with the first rounding value to give a first product significand, and are added together with the second rounding value to give a second product significand.Type: GrantFiled: September 25, 2015Date of Patent: November 21, 2017Assignee: ARM LimitedInventor: David Raymond Lutz
-
Patent number: 9087398Abstract: Methods of compressing (and decompressing) bounding box data and a processor incorporating one or more of the methods. In one embodiment, a method of compressing such data includes: (1) generating dimension-specific multiplicands and a floating-point shared scale multiplier from floating-point numbers representing extents of the bounding box and (2) substituting portions of floating-point numbers representing a reference point of the bounding box with the dimension-specific multiplicands to yield floating-point packed boundary box descriptors, the floating-point shared scale multiplier and the floating-point packed boundary box descriptors together constituting compressed bounding box data.Type: GrantFiled: December 6, 2012Date of Patent: July 21, 2015Assignee: NVIDIA CORPORATIONInventor: Andrei Pokrovsky
-
Patent number: 8984042Abstract: A technique is provided for performing a mixed precision estimate. A processing circuit receives an input of a first precision having a wide precision value. The processing circuit computes an output in an output exponent range corresponding to a narrow precision value based on the input having the wide precision value.Type: GrantFiled: February 9, 2012Date of Patent: March 17, 2015Assignee: International Business Machines CorporationInventors: Michael K. Gschwind, Valentina Salapura
-
Publication number: 20150067010Abstract: An integrated circuit is provided that performs floating-point addition or subtraction operations involving at least three floating-point numbers. The floating-point numbers are pre-processed by dynamically extending the number of mantissa bits, determining the floating-point number with the biggest exponent, and shifting the mantissa of the other floating-point numbers to the right. Each extended mantissa has at least twice the number of bits of the mantissa entering the floating-point operation. The exact bit extension is dependent on the number of floating-point numbers to be added. The mantissas of all floating-point numbers with an exponent smaller than the biggest exponent are shifted to the right. The number of right shift bits is dependent on the difference between the biggest exponent and the respective floating-point exponent.Type: ApplicationFiled: September 5, 2013Publication date: March 5, 2015Applicant: Altera CorporationInventor: Tomasz Czajkowski
-
Patent number: 8805914Abstract: There is provided a method of processing an iterative computation on a computing device comprising at least one processor. Embodiments of the method comprises performing, on a processor, an iterative calculation on data in a fixed point numerical format having a scaling factor, wherein the scaling factor is selectively variable for different steps of said calculation in order to prevent overflow and to minimize underflow. By providing such a method, the reliability, precision and flexibility of floating point operations can be achieved whilst using fixed point processing logic. The errors which fixed-point units are usually prone to generate if the range limits are exceeded can be mitigated, whilst still providing the advantage of a significantly reduced logic area to perform the calculations in fixed point.Type: GrantFiled: June 2, 2010Date of Patent: August 12, 2014Assignee: Maxeler Technologies Ltd.Inventors: Oliver Pell, James Huggett
-
Patent number: 8788549Abstract: A system for computing a block floating point scaling factor by detecting a dynamic range of an input signal in a central processing unit without additional overhead cycles is provided. The system includes a dynamic range monitoring unit that detects the dynamic range of the input signal by snooping outgoing write data and incoming memory read data of the input signal. The dynamic range monitoring unit includes a running maximum count unit that stores a least value of a count of leading zeros and leading ones, and a running minimum count that stores a least value of the count of trailing zeros. The dynamic range is detected based on the least value of the count of leading zeros and leading ones and the count of trailing zeros. The system further includes a scaling factor computation module that computes the block floating point (BFP) scaling factor based on the dynamic range.Type: GrantFiled: May 2, 2012Date of Patent: July 22, 2014Assignee: Saankhya Labs Private LimitedInventors: Gururaj Padaki, Anindya Saha, Parag Naik, Vishwakumara Kayargadde, Sunil Hr
-
Patent number: 8732226Abstract: Systems, methods, processors, media, and other embodiments associated with integer rounding a floating point number in one micro-operation (uop) are described. One system embodiment includes a memory to store an integer rounding floating point instruction and a processor to perform the integer rounding floating point instruction. The processor may include a floating point unit that includes circuits and/or logics that integer round the floating point number.Type: GrantFiled: June 6, 2006Date of Patent: May 20, 2014Assignee: Intel CorporationInventors: Mohammad Abdallah, Chad D. Hancock, Kwok W. Lui
-
Patent number: 8650238Abstract: In a digital system with more than one clock source, lack of synchronization between the clock sources may cause overflow or underflow in sample buffers, also called sample slipping. Sample slipping may lead to undesirable artifacts in the processed signal due to discontinuities introduced by the addition or removal of extra samples. To smooth out discontinuities caused by sample slipping, samples are filtered to when a buffer overflow condition occurs, and the samples are interpolated to produce additional samples when a buffer underflow condition occurs. The interpolated samples may also be filtered. The filtering and interpolation operations can be readily implemented without adding significant burden to the computational complexity of a real-time digital system.Type: GrantFiled: November 28, 2007Date of Patent: February 11, 2014Assignee: QUALCOMM IncorporatedInventors: Dinesh Ramakrishnan, Song Wang, Eddie L. T. Choy, Samir Kumar Gupta
-
Patent number: 8370409Abstract: A method for operand width reduction is described, wherein two N-bit input operands (A, B) of a bit width of N are processed and two M-bit output operands (A?, B?) of a reduced bit width of M are generated in a way, that a post-processing comprising an M-bit adder function followed by saturation to M bits performed on said two M-bit output operands (A?, B?) provides an M-bit result equal to an M-bit result of an N-bit modulo adder function of the two N-bit input operands (A, B), followed by a saturation to M bits. Further an electronic computing circuit (1, 5) is described performing said method. Additionally a computer system comprising such an electronic computing circuit is described.Type: GrantFiled: February 11, 2008Date of Patent: February 5, 2013Assignee: International Business Machines CorporationInventors: Tobias Gemmeke, Nicolas Maeding, Jochen Preiss
-
Patent number: 8352531Abstract: The forcing of the result or output of a rounder portion of a floating point processor occurs only in a fraction non-increment data path within the rounder and not in the fraction increment data path within the rounder. The fraction forcing is active on a corner case such as a disabled overflow exception. A disabled overflow exception may be detected by inspecting the normalized exponent. If a disabled overflow exception is detected, the round mode is selected to execute only in the non-increment data path thereby preventing the fraction increment data path from being selected.Type: GrantFiled: July 22, 2008Date of Patent: January 8, 2013Assignee: International Business Machines CorporationInventors: Maarten J. Boersma, J. Adam Butts, Silvia Melitta Mueller, Jochen Preiss
-
Patent number: 8291003Abstract: In a binary floating point processor, the exponents of each of the various types of operands are recoded into an internal format, by biasing the exponents with the minimum exponent value of the result precision (“Emin”), i.e., the recoded value of the exponent is the represented value of the exponent minus Emin. Emin depends only on the result precision of the instruction that is currently being executed in the binary floating point processor. The exponent computations are then performed in this new format. The underflow check for all result precisions is a check against zero and overflow checks are performed against a positive number that depends on the result precision. The exponent values are in a 2's complement representation, so the underflow check simply becomes a check of the sign bit.Type: GrantFiled: September 9, 2008Date of Patent: October 16, 2012Assignee: International Business Machines CorporationInventors: Maarten J. Boersma, K. Michael Kroener, Petra Leber, Silvia M. Mueller, Jochen Preiss, Kerstin Schelm
-
Patent number: 8280939Abstract: A computer-implemented method performs an operation on a set of at least one BFP operands to generate a BFP result. The method is designed to reduce the risks of overflow and loss of accuracy attributable to the operation. The method performs an analysis to determine respective shift values for each of the operands and the result. The method calculates result mantissas by shifting the stored bit patterns representing the corresponding operand mantissa values by their respective associated shift values determined in the analysis step, performing the operation on shifted operand mantissas to generate preliminary result mantissa, and shifting the preliminary result mantissas by a number of bits determined in the analysis step.Type: GrantFiled: May 22, 2008Date of Patent: October 2, 2012Assignee: VideoIQ, Inc.Inventors: Igor Reyzin, Aleksey Lipchin
-
Patent number: 8126954Abstract: Methods and systems for detecting underflow in a floating-point operation are disclosed. In accordance with an example disclosed method a plurality of comparator circuits and a plurality of logic devices coupled to the plurality of comparator circuits are operated to determine whether performing a floating-point operation using a floating-point hardware unit will generate an underflow condition. The operating of the plurality of comparator circuits and the logic devices involves inputting a multiply-add operation result value to at least some of the plurality of comparator circuits. In addition, a plurality of logic outputs are outputted via the plurality of logic devices. The plurality of logic outputs are indicative of comparison operations performed by at least some of the comparator circuits based on the multiply-add operation result value. An underflow indicator is outputted based on the plurality of logic outputs.Type: GrantFiled: July 31, 2009Date of Patent: February 28, 2012Assignee: Intel CorporationInventor: Marius A. Cornea-Hasegan
-
Patent number: 8015231Abstract: A data processing apparatus and method includes multiplier logic operable to multiply the first and second n-bit significands to produce a pair of 2n-bit vectors. Half adder logic is arranged to produce a plurality of carry and sum bits representing a corresponding plurality of most significant bits of the pair of 2n-bit vectors. The first adder logic then performs a first sum operation with a first rounded result and a second adder logic performs a second sum operation with a second rounded result. The required n-bit result is then derived from either the first rounded result or the second rounded result. The data processing apparatus takes advantage of a property of the half adder form to enable a rounding increment value to be injected prior to performance of the first and second sum operations without requiring full adders to be used to inject the rounding increment value.Type: GrantFiled: November 30, 2004Date of Patent: September 6, 2011Assignee: ARM LimitedInventors: David Raymond Lutz, Christopher Neal Hinds
-
Patent number: 7962729Abstract: Software defects (e.g., array access out of bounds, stack overflow, infinite loops, and data corruption) occur due to integer values falling outside their expected range. Because programming languages do not include range-checking instructions as part of their language, to detect software defects and ensure that the code runs smoothly, programmers generally use 1) runtime assertions and/or 2) sub-range data types. However, these techniques cause additional conditional branches, incur additional overhead, and decrease processor performance. Processors comprising a range checking hardware feature supported by machine instructions for runtime integer range checking can eliminate the conditional branches generated during runtime integer range checks. Programming language extensions for the range checking hardware can allow dynamic range bounds to be defined during runtime without decreasing the processor's performance. This can allow for easier programming and code that is easier to maintain.Type: GrantFiled: January 5, 2009Date of Patent: June 14, 2011Assignee: International Business Machines CorporationInventor: Jose G. Rivera
-
Publication number: 20110040816Abstract: The present invention provides a solution to the shortcomings of the traditional two's complement system that is commonly utilized in modern computing systems and digital signal processors for calculating harmonic analysis using a discrete time-frequency transform. In the negative two's complement processor a n-bit number, A, has a sign bit, an?1, and n?1 fractional bits, an?2, an?3, . . . , a0. The value of an n-bit fractional negative two's complement number is: A = a n - 1 + ? i = 0 n - 2 ? - a i ? 2 i - n + 1 .Type: ApplicationFiled: October 20, 2010Publication date: February 17, 2011Inventor: Earl Eugene Swartzlander, JR.
-
Publication number: 20100250635Abstract: Intended is to reduce power consumption without requiring shift of an operand. A vector multiplication processing device comprising a speed-up circuit (a fixed point overflow foresight circuit 5 and a sticky bit foresight circuit 6) to calculate a product of a first operand and a second operand input based on a multiplication instruction, which device comprises a multiplication circuit 4 (a partial product generation circuit 41 and a partial product control circuit 42) which uses the speed-up circuit and generates a partial product of the first operand and the second operand input to suppress circuit operation in a specific range resultingly not referred to related to generation of the partial product according to the multiplication instruction and a data format.Type: ApplicationFiled: March 24, 2010Publication date: September 30, 2010Inventor: TAKASHI OSADA
-
Publication number: 20090292754Abstract: Methods and systems for detecting underflow in a floating-point operation are disclosed. In accordance with an example disclosed method a plurality of comparator circuits and a plurality of logic devices coupled to the plurality of comparator circuits are operated to determine whether performing a floating-point operation using a floating-point hardware unit will generate an underflow condition. The operating of the plurality of comparator circuits and the logic devices involves inputting a multiply-add operation result value to at least some of the plurality of comparator circuits. In addition, a plurality of logic outputs are outputted via the plurality of logic devices. The plurality of logic outputs are indicative of comparison operations performed by at least some of the comparator circuits based on the multiply-add operation result value. An underflow indicator is outputted based on the plurality of logic outputs.Type: ApplicationFiled: July 31, 2009Publication date: November 26, 2009Inventor: Marius A. Cornea-Hasegan
-
Publication number: 20090240753Abstract: A decimal floating point (DFP) unit is used to execute fixed point instructions. Two or more operands are accepted, wherein each operand is in a packed binary coded decimal (BCD) format. Any invalid BCD formats are detected by checking the operands for any invalid BCD codes. It is determined if an exception flag exists and, if so, outputting the flag; it is determined if a condition code exists and, if so, outputting the code. An operation is performed on the two or more operands to generate a result; wherein the operation takes place directly on BCD data, thus using the DFP unit to perform a BCD operation; appending a result sign to the result of the operation; and providing the result of the operation and the appended result sign as a result output in a packed BCD format.Type: ApplicationFiled: March 19, 2008Publication date: September 24, 2009Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Steven R. Carlough, Adam B. Collura, Mark A. Erle, Wen H. Li, Eric M. Schwarz
-
Patent number: 7593977Abstract: A method and system for determining whether a result d of a floating-point operation on operands a, b, c is tiny (may underflow) is disclosed. In one embodiment, a prediction whether d is tiny is made in hardware, but this prediction may include false results. Operands a, b, c are scaled to a?, b?, c? and then result d? from the floating-point operation on operands a?, b?, c? is calculated. A determination whether d will actually be tiny can be determined from the value of d?. A decision may then be made to proceed with either software or hardware calculations of d.Type: GrantFiled: December 23, 2002Date of Patent: September 22, 2009Assignee: Intel CorporationInventor: Marius A. Cornea-Hasegan
-
Patent number: 7373489Abstract: An apparatus and method for floating point exception prediction and recovery. In one embodiment, a processor may include instruction fetch logic configured to issue a first instruction from one of a plurality of threads and to successively issue a second instruction from another one of the plurality of threads. The processor may also include floating-point arithmetic logic configured to execute a floating-point instruction issued by the instruction fetch logic from a given one of the plurality of threads, and further configured to determine whether the floating-point instruction generates an exception, and may further include exception prediction logic configured to predict whether the floating-point instruction will generate the exception, where the prediction occurs before the floating-point arithmetic logic determines whether the floating-point instruction generates the exception.Type: GrantFiled: June 30, 2004Date of Patent: May 13, 2008Assignee: Sun Microsystems, Inc.Inventors: Jeffrey S. Brooks, Paul J. Jordan, Rabin A. Sugumar
-
Patent number: 7272623Abstract: Methods and apparatus are disclosed for determining a floating-point exponent associated with an underflow condition or an overflow condition. The methods and apparatus determine the ‘true’ value of a floating-point exponent based on a truncated value of the floating-point exponent passed from a floating-point hardware unit to an exponent determination module when the floating-point hardware unit encounters an underflow condition or an overflow condition. The determined value of the floating-point exponent may then be passed to a floating-point software unit for additional floating-point calculations, if necessary. If the floating-point hardware unit does not encounter an underflow condition or an overflow condition, the floating-point hardware unit and/or the floating-point software unit preferably perform the floating-point operation without the assistance of the exponent determination module.Type: GrantFiled: April 8, 2002Date of Patent: September 18, 2007Assignee: Intel CorporationInventor: Marius A. Cornea-Hasegan
-
Patent number: 7120661Abstract: An arrangement (200) and method for bit exactness support in dual-MAC architecture by detecting when underflow or overflow conditions will occur, and for operating the dual-MAC arrangement in single-MAC mode for at least one cycle upon such detection. This produces the advantages of providing dual-MAC execution with saturation capabilities, with only a small degradation in performance, while employing detection logic that is very small and simple compared to the logic required for a conventional full saturation dual-MAC architecture.Type: GrantFiled: May 29, 2003Date of Patent: October 10, 2006Assignee: Freescale Semiconductor, Inc.Inventors: Dror Halahmi, Yoram Salant
-
Patent number: 7103621Abstract: Efficient techniques for computation of texture coordinates using scaled conversion operations for a 3D graphics pipeline utilizing a scaled floating point to integer instruction and a scaled integer to floating point instruction to significantly reduce memory requirements. A parallel array VLIW digital signal processor is employed along with specialized scaled conversion instructions and communication operations between the processing elements, which are overlapped with computation to provide very high performance operation. Successive iterations of a loop of tightly packed VLIWs are used allowing the graphics pipeline hardware to be efficiently used.Type: GrantFiled: March 31, 2003Date of Patent: September 5, 2006Assignee: PTS CorporationInventors: Ricardo Rodriguez, Marco Jacobs, David Strube
-
Patent number: 7047270Abstract: A saturating count counts received event signals up to a first predetermined number. An overflow counter counts overflows up to a second predetermined number. The counter indicates overflow when the overflow count is non-zero and saturates and stops counting at a maximum count when the overflow count reaches the second predetermined number. The counter can be read via a register read operation. The sum of the sum of the first predetermined number of bits and the second predetermined number of bits being an integral multiple of 8 bits.Type: GrantFiled: November 22, 2002Date of Patent: May 16, 2006Assignee: Texas Instruments IncorporatedInventors: Manisha Agarwala, John M. Johnsen, Lewis Nardini
-
Patent number: 6993549Abstract: An extended exponent floating point unit performs an extended exponent floating point operation on a plurality of operands to produce a product of the plurality of operands. The extended exponent floating point unit groups the plurality of operands into at least one group, determines a plurality of scale factors for the plurality of operands, respectively, and provides a running sum of the plurality of scale factors. The extended exponent floating point unit further scales the plurality of operands to obtain a plurality of scaled operands, multiplies the plurality of scaled operands to obtain a group product, and scales the group product to obtain a scaled group product. The scaled group product is adjusted based on the running sum. The plurality of operands are grouped such that when all the plurality of scaled operands in the at least one group are multiplied an overflow or underflow will not occur.Type: GrantFiled: December 28, 2001Date of Patent: January 31, 2006Assignee: Sun Microsystems, Inc.Inventor: Guy L. Steele, Jr.
-
Patent number: 6993545Abstract: A digital filter having the capability to completely prevent the digital filter from generating the overflow oscillation by detecting positive and negative overflow propagating one or a plurality of bits by means of an overflow detecting circuit. When overflow is detected, a clipping circuit serves to fix the output signal to a positive maximum value or a negative maximum value.Type: GrantFiled: September 25, 2001Date of Patent: January 31, 2006Assignee: Kabushiki Kaisha ToshibaInventor: Mikio Shiraishi
-
Patent number: 6963894Abstract: Methods and apparatus for predicting an underflow condition associated with a floating-point multiply-add operation are disclosed. Preferably, the prediction is “pessimistic” in that it predicts that an underflow condition will result in all situations where an underflow condition might result. However, the methods and apparatus may also predict that an underflow condition might result in some situations where an underflow condition will not result. If an underflow condition is predicted, the floating-point multiply-add operation is preferably performed by a software routine capable of handling the underflow condition. If an underflow condition is not predicted, the floating-point multiply-add operation is preferably performed by a hardware circuit to increase speed and reduce computational overhead.Type: GrantFiled: April 8, 2002Date of Patent: November 8, 2005Assignee: Intel CorporationInventor: Marius A. Cornea-Hasegan
-
Patent number: 6947962Abstract: An algorithm and implementation is described of overflow prediction for addition without the use of an expensive addition operation. This overflow prediction is particularly applicable to the implementation of addition operation using the carry-save format in high speed arithmetic units.Type: GrantFiled: January 24, 2002Date of Patent: September 20, 2005Assignee: Intel CorporationInventor: Yatin Hoskote
-
Publication number: 20040225703Abstract: A multiply-accumulate circuit includes a compressor tree to generate a product with a binary exponent and a mantissa in carry-save format. The product is converted into a number having a three bit exponent and a fifty-seven bit mantissa in carry-save format for accumulation. An adder circuit accumulates the converted products in carry-save format. Because the products being summed are in carry-save format, post-normalization is avoided within the adder feedback loop. The adder operates on floating point number representations having exponents with a least significant bit weight of thirty-two, and exponent comparisons within the adder exponent path are limited in size. Variable shifters are avoided in the adder mantissa path. A single mantissa shift of thirty-two bits is provided by a conditional shifter.Type: ApplicationFiled: June 14, 2004Publication date: November 11, 2004Applicant: Intel CorporationInventor: Amaresh Pangal
-
Patent number: 6714957Abstract: There is disclosed a denormal handling circuit for use in a pipelined floating point unit containing an addition pipe and/or a multiplication pipe. The denormal result handling circuit comprises a denormal condition detection circuit associated with at the addition pipe and/or the multiplication pipe for examining a first operand and a second operand loaded into the addition pipe and/or the multiplication pipe and detecting a potential denormal condition. The denormal condition indicates that a calculated result generated from the first and second operands may be a denormal result. The denormal condition detection circuit, in response to detection of a potential denormal condition, prevents an additional operation from being loaded into the addition pipe and/or the multiplication pipe.Type: GrantFiled: January 4, 2000Date of Patent: March 30, 2004Assignee: National Semiconductor CorporationInventor: Jeffrey A. Lohman
-
Publication number: 20040059769Abstract: Methods and apparatus for predicting an underflow condition associated with a floating-point multiply-add operation are disclosed. Preferably, the prediction is “pessimistic” in that it predicts that an underflow condition will result in all situations where an underflow condition might result. However, the methods and apparatus may also predict that an underflow condition might result in some situations where an underflow condition will not result. If an underflow condition is predicted, the floating-point multiply-add operation is preferably performed by a software routine capable of handling the underflow condition. If an underflow condition is not predicted, the floating-point multiply-add operation is preferably performed by a hardware circuit to increase speed and reduce computational overhead.Type: ApplicationFiled: April 8, 2002Publication date: March 25, 2004Inventor: Marius A. Cornea-Hasegan
-
Patent number: 6687898Abstract: A method for arithmetic expression optimization includes receiving a first instruction defined for a first processor having a first base, the first instruction including an operator and at least one operand, converting the first instruction to a second instruction optimized for a second processor having a second base when all operands do not carry potential overflow or when the operator is insensitive to overflow, the second base being smaller than the first base, and converting to a wider base a third instruction that is the source of the overflow when the at least one operand the potential for overflow and when the operator is sensitive to overflow.Type: GrantFiled: November 1, 2001Date of Patent: February 3, 2004Assignee: Sun Microsystems, Inc.Inventors: Zhiqun Chen, Judith E. Schwabe
-
Patent number: 6633895Abstract: An apparatus and method provide for performing either an overflow or underflow comparison while minimizing overflow/underflow comparison circuitry. In particular, the apparatus and are implemented with overflow/underflow possible check circuitry that determines if a mathematical operation between a first exponent signal and a second exponent signal creates a potential overflow condition. The overflow/underflow possible check circuitry generates a signal indicating whether an overflow or underflow condition is a possibility. Exponent compare circuitry computes an actual overflow or underflow condition. The exponent compare circuitry computes an actual overflow condition if the signal, from the overflow/underflow possible check circuitry, indicates that overflow is possible, and computes an actual underflow condition if the signal, from the overflow/underflow possible check circuitry, does not indicate overflow is possible.Type: GrantFiled: February 22, 2000Date of Patent: October 14, 2003Assignee: Hewlett-Packard Development Company, L.P.Inventors: Stephen L Bass, Ravi G. Koshy
-
Publication number: 20030191787Abstract: Methods and apparatus are disclosed for determining a floating-point exponent associated with an underflow condition or an overflow condition. The methods and apparatus determine the ‘true’ value of a floating-point exponent based on a truncated value of the floating-point exponent passed from a floating-point hardware unit to an exponent determination module when the floating-point hardware unit encounters an underflow condition or an overflow condition. The determined value of the floating-point exponent may then be passed to a floating-point software unit for additional floating-point calculations, if necessary. If the floating-point hardware unit does not encounter an underflow condition or an overflow condition, the floating-point hardware unit and/or the floating-point software unit preferably perform the floating-point operation without the assistance of the exponent determination module.Type: ApplicationFiled: April 8, 2002Publication date: October 9, 2003Inventor: Marius A. Cornea-Hasegan
-
Patent number: 6631392Abstract: A method and apparatus predict whether an overflow or underflow floating-point exception could occur as a result of a data processing system performing a particular floating-point operation. Predictions are made based on at least one overflow threshold value, at least first and second underflow threshold values, and a preliminary result exponent value derived from the values of the exponents of the floating-point numbers that are about to be acted upon. The preliminary result exponent is compared to an overflow or underflow threshold value in order to predict whether there is a possibility that an overflow or underflow floating-point exception could occur. Overflow and underflow exceptions are predicted and an exception prediction signal is generated. The exception prediction signals that are generated may be used by data processing system control units, for example, to temporarily halt any parallel processing operations that may be affected by an overflow or underflow floating-point exception.Type: GrantFiled: July 30, 1999Date of Patent: October 7, 2003Assignee: MIPS Technologies, Inc.Inventors: XingYu Jiang, Ying-wai Ho, John L. Kelley
-
Patent number: 6571265Abstract: A mechanism is disclosed for detecting underflow conditions for speculative floating-point operations. A floating-point status register includes a status flag which is set when a result generated by a floating-point instruction is “tiny”. The status flag is cleared, all exceptions are masked, and the instruction is executed speculatively. The “tiny” exception flag is read to determine whether the speculatively executed instruction should raise an unmasked underflow exception. The exception may be raised if the processor reaches a point of registration associated with the instruction. The exception may be ignored if this point is not reached.Type: GrantFiled: October 29, 1999Date of Patent: May 27, 2003Assignee: Intel CorporationInventor: Shane Story
-
Patent number: 6535900Abstract: A processor made up of a computation unit, an accumulator unit, a saturation determination unit and a saturation unit. The computation unit operates on one or more operands of W bits. The accumulator unit stores the output of the computation unit, in W bits. The saturation determination unit detects overflow in parallel with latching of the output of the computation unit. Overflow occurs when the operand latched by the accumulator represents a number having more than A significant bits, where A is less than W. The saturation unit provides saturation operands to the computation unit when the operand latched in the accumulator unit represents a number having more than A significant bits. Furthermore, the processor has saturation operands of either (+2A−1−1) or −2A−1. A method for using the processor is also disclosed.Type: GrantFiled: September 8, 1999Date of Patent: March 18, 2003Assignee: DSP Group Ltd.Inventors: Ronen Perets, Yael Gross, Moshe Sheier
-
Patent number: 6529930Abstract: Methods and apparatus for performing signed saturation of binary numbers to arbitrary powers of two are described. Given an n-bit signed binary word, the methods and apparatus of the present invention perform a signed saturation to k-bits where the value of k can vary such that 1<k<n. Through the use of hardware circuits of the present invention the signed saturation operation is implemented in a more efficient manner than software implementations which utilize multiple compare operations. The signed saturation circuits of the present invention can be incorporated into processors, e.g., CPUs, to provide a hardware implementation within a CPU for a signed saturation processor instruction, e.g., either a SISD OR SIMD saturation command or instruction. The signed saturation circuits can accept the data value upon which the operation is to be performed, and, optionally, a value k indicating the number of bits to which individual data value are to be saturated.Type: GrantFiled: September 9, 1999Date of Patent: March 4, 2003Assignee: Hitachi America, Ltd.Inventors: Sharif Mohammad Sazzad, Michael A. Plotnick
-
Publication number: 20020194239Abstract: A multiply-accumulate circuit includes a compressor tree to generate a product with a binary exponent and a mantissa in carry-save format. The product is converted into a number having a three bit exponent and a fifty-seven bit mantissa in carry-save format for accumulation. An adder circuit accumulates the converted products in carry-save format. Because the products being summed are in carry-save format, post-normalization is avoided within the adder feedback loop. The adder operates on floating point number representations having exponents with a least significant bit weight of thirty-two, and exponent comparisons within the adder exponent path are limited in size. Variable shifters are avoided in the adder mantissa path. A single mantissa shift of thirty-two bits is provided by a conditional shifter.Type: ApplicationFiled: June 4, 2001Publication date: December 19, 2002Applicant: Intel CorporationInventor: Amaresh Pangal
-
Patent number: 6490607Abstract: A multiplier configured to perform multiplication of both scalar floating point values (X×Y) and packed floating point values (i.e., X1×Y1 and X2×Y2). In addition, the multiplier may be configured to calculate X×Y−Z. The multiplier comprises selection logic for selecting source operands, a partial product generator, an adder tree, and two or more adders configured to sum the results from the adder tree to achieve a final result. The multiplier may also be configured to perform iterative multiplication operations to implement such arithmetical operations such as division and square root. The multiplier may be configured to generate two versions of the final result, one assuming there is an overflow, and another assuming there is not an overflow. A computer system and method for performing multiplication are also disclosed.Type: GrantFiled: October 12, 1999Date of Patent: December 3, 2002Assignee: Advanced Micro Devices, Inc.Inventor: Stuart F. Oberman
-
Patent number: 6484251Abstract: A processor including a register, an execution unit, a temporary result buffer, and a commit function circuit. The register includes at least one register bit and may include one or more sticky bits. The execution unit is suitable for executing a set of computer instructions. The temporary result buffer is configured to receive, from the execution unit, register bit modification information provided by the instructions. The temporary result buffer is suitable for storing the modification information in set/clear pairs of bits corresponding to respective register bits of the register. The commit function circuit is configured to receive the set/clear pairs of bits from the temporary result buffer when the instruction is committed. The commit function circuit is suitable for generating an updated bit in response to receiving the set/clear pairs of bits. The updated bit is then committed to the corresponding register bit of the register.Type: GrantFiled: October 14, 1999Date of Patent: November 19, 2002Assignee: International Business Machines CorporationInventors: Robert Greg McDonald, Peichun Peter Liu, Christopher Hans Olson
-
Patent number: 6411978Abstract: A processor for performing a block floating point Fast Fourier Transform having improved signal to quantization noise ratio performance. In the radix-2 Decimation In Time algorithm, overflow between stages is prevented by a scale down by two invoked by comparison with a fixed comparison constant. Unfortunately, the fixed comparison constant is not always optimum for maximizing the signal to quantization noise ratio, which is degraded by excessive scale down. Moreover, current mechanisms are limited to the radix-2 block floating point FFT. The processor of the present invention provides the programmer with a FFT compare register which is loadable under program control, thus allowing the programmer to adjust the threshold at which scale down of the stage output is activated for better control over the signal to quantization noise ratio. In addition, the present invention supports other FFT structures besides the radix-2 block floating point FFT.Type: GrantFiled: May 26, 1999Date of Patent: June 25, 2002Assignee: Infineon Technologies Ag I. Gr.Inventors: Gil Naveh, Eran Weingarten, Haim Granot
-
Patent number: 6408379Abstract: An apparatus and method for executing floating-point store instructions in a microprocessor is provided. If store data of a floating-point store instruction corresponds to a tiny number and an underflow exception is masked, then a trap routine can be executed to generate corrected store data and complete the store operation. In response to detecting that store data corresponds to a tiny number and the underflow exception is masked, the store data, store address information, and opcode information can be stored prior to initiating the trap routine. The trap routine can be configured to access the store data, store address information, and opcode information. The trap routine can be configured to generate corrected store data and complete the store operation using the store data, store address information, and opcode information.Type: GrantFiled: June 10, 1999Date of Patent: June 18, 2002Assignee: Advanced Micro Devices, Inc.Inventors: Norbert Juffa, Stephan Meier, Stuart Oberman, Scott White
-
Patent number: 6243731Abstract: An apparatus for extending register dynamic range on a processor is disclosed. The apparatus comprises a register (102) for performing a set of processor (100) operations. The apparatus further comprises a counter (104) on the processor (100) having a value. During the set of operations, the processor (100) increments the value when positive overflow occurs on the register (102) and decrements the value when negative overflow occurs on the register (102). Upon completion of the set of operations, the processor (100) saturates the register (102) with a positive value when the value is greater than zero, and with a negative value when the value is less than zero. Further, a method for extending register dynamic range on a processor is disclosed. The method comprises performing a set of processor (100) operations in a register (102). The method further comprises incrementing a value in counter (104) during the set of operations when positive overflow occurs on the register (102).Type: GrantFiled: December 30, 1998Date of Patent: June 5, 2001Assignee: Texas Instruments IncorporatedInventor: Alexander Tessarolo