Decimal Patents (Class 708/623)
-
Patent number: 8495124Abstract: A decimal multiplication mechanism for fixed and floating point computation in a computer having a coefficient mechanism without resulting leading zero detection (LZD) and process which assumes that the final product will be M+N digits in length and performs all calculations based on this assumption. Least significant digits that would be truncated are no longer stored, but retained as sticky information which is used to finalize the result product. Once the computation of the product is complete, a final check based on the examination of key bits observed during partial product accumulation is used to determine if the final product is truly M+N digits in length, or M+N?1 digits. If the latter is true, then corrective final product shifting is employed to obtain the proper result. This eliminates the need for dedicated leading zero detection hardware used to determine the number of significant digits in the final product.Type: GrantFiled: June 23, 2010Date of Patent: July 23, 2013Assignee: International Business Machines CorporationInventors: Steven R. Carlough, Adam B. Collura, Michael Kroener, Silvia Melitta Mueller
-
Patent number: 8463838Abstract: A windowed optical calculation architecture and process that efficiently performs high speed multi-element multiply and accumulates on a digital data stream. A data point from a digital data stream is impressed onto an optical source to create an optical value. The optical value is split into a number of branches equaling the number of elements used in the calculation. In each branch, the optical value is modulated to reflect the coefficients in the calculation. Then, depending upon the branch, the optical value is delayed depending on its position in the calculation, with optical values at the beginning of the calculation being delayed longer than optical values at the end of the calculation. The outputs from the branches are coupled together to perform an optical sum, and passed to detection/analog-digital conversion circuitry to convert the optical result to a digital result.Type: GrantFiled: October 28, 2009Date of Patent: June 11, 2013Assignee: Lockheed Martin CorporationInventor: Brian L Ulhorn
-
Patent number: 8417761Abstract: The digital propagate, digit generate, sum+0, and sum+1 terms used in typical carry-propagate adders are generated directly off the multiplicand. During the direct generation, the logic takes into account that each digit will be tripled and if each digit's next less significant digit is greater than 4. Using this technique, the generation of the multiplicand is significantly faster and uses less circuitry.Type: GrantFiled: December 8, 2008Date of Patent: April 9, 2013Assignee: International Business Machines CorporationInventors: Mark Alan Erle, Brian John Hickmann
-
Publication number: 20130080491Abstract: In one embodiment, a microprocessor includes fetch logic for retrieving an instruction, decode logic configured to identify a plurality of operands and a multiply operation specified in the instruction, and execution logic configured to receive the plurality of operands and the multiply operation. The execution logic includes a first logic path configured to perform the multiply operation on the plurality of operands and output a result, and a second logic path, arranged in parallel with the first logic path, configured to output metadata associated with the result of the multiply operation.Type: ApplicationFiled: November 14, 2011Publication date: March 28, 2013Applicant: NIVIDIA CORPORATIONInventor: Scott Pitkethly
-
Publication number: 20120117136Abstract: Sending a set of two data, having actual data and calculated data by using the actual data, to a communication device using RF signal works as a virtual check sum function.Type: ApplicationFiled: November 4, 2010Publication date: May 10, 2012Inventor: Toshio Hayakawa
-
Publication number: 20120089658Abstract: The present invention provides a modulo operation method. The modulo operation method, in a case where the square of a divisor N is greater than or equal to a dividend C, includes: determining the number of computation stages n satisfying 2n<N?2n+1; performing an initialization operation by initializing a constant a to the smallest integer greater than or equal to half of N; performing a first operation by subtracting, when C is greater than or equal to N·a (product of N and a), the value of C by the value of N·a; and performing a second operation by assigning the smallest integer greater than or equal to half of a to the value of a, wherein the value of C is output as the result of modulo operation after the first operation and the second operation are repeated n times. In the first operation, when C is less than N·a, the value of C is unchanged.Type: ApplicationFiled: June 10, 2010Publication date: April 12, 2012Applicant: SAMSUNG ELECTRONICS CO., LTD.Inventors: Jung Uk Woo, In Tae Kang, Yun Ju Kwon, Dong Min Kim
-
Patent number: 8140607Abstract: A method for performing decimal multiplication including storing a multiplier and a multiplicand in operand registers, the multiplier including one or more digits. A running sum is stored in a shifter and initialized to zero. The method includes performing for each of the digits in the multiplier in order from least significant digit to most significant digit: creating a partial product of the digit and the multiplicand and adding the partial product to the running sum. The running sum is output as the result of multiplying the multiplier and the multiplicand. The performing and outputting are implemented by a mechanism that includes one or more two cycle adders connected to the operand registers, multiplicand multiples circuitry connected to the operand registers, and a result digits register connected to the two cycle adders.Type: GrantFiled: January 23, 2009Date of Patent: March 20, 2012Assignee: International Business Machines CorporationInventors: Steven R. Carlough, Wen H. Li, Eric M. Schwarz
-
Patent number: 7912890Abstract: According to embodiments of the subject matter disclosed in this application, decimal floating-point multiplications and/or decimal fixed-point multiplications may be implemented using existing hardware for binary number operations. The implementation can be carried out in software, in hardware, or in a combination of software and hardware. Pre-calculated constants that are approximations to negative powers of 10 and stored in binary format may be used for rounding multiplication results to a designated precision by multiplying the results with a pre-calculated constant. Additionally, several parts of a decimal multiplication may be carried out in parallel. Furthermore, a simple comparison with a constant instead of an expensive remainder calculation may be used for midpoint detection and exactness determination.Type: GrantFiled: May 11, 2006Date of Patent: March 22, 2011Assignee: Intel CorporationInventor: Marius A. Cornea-Hasegan
-
Publication number: 20090132629Abstract: A method for performing decimal multiplication including storing a multiplier and a multiplicand in operand registers, the multiplier including one or more digits. A running sum is stored in a shifter and initialized to zero. The method includes performing for each of the digits in the multiplier in order from least significant digit to most significant digit: creating a partial product of the digit and the multiplicand and adding the partial product to the running sum. The running sum is output as the result of multiplying the multiplier and the multiplicand. The performing and outputting are implemented by a mechanism that includes one or more two cycle adders connected to the operand registers, multiplicand multiples circuitry connected to the operand registers, and a result digits register connected to the two cycle adders.Type: ApplicationFiled: January 23, 2009Publication date: May 21, 2009Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Steven R. Carlough, Wen H. Li, Eric M. Schwarz
-
Patent number: 7519647Abstract: A system for performing decimal multiplication including input registers for inputting a multiplier and a multiplicand. The multiplier includes one or more digits. The system also includes one or more two cycle adders and mechanism. The mechanism receives the multiplier and the multiplicand into the input registers. A running sum is reset to zero. The mechanism also performs for each of the digits in the multiplier in order from least significant digit to most significant digit: creating a partial product of the digit and the multiplicand; and adding the partial product to the running sum using the two cycle adders. When the loop is completed for each of the digits in the multiplier, the mechanism outputs the running sum as the result.Type: GrantFiled: February 9, 2005Date of Patent: April 14, 2009Assignee: International Business Machines CorporationInventors: Steven R. Carlough, Wen H. Li, Eric M. Schwarz
-
Patent number: 7412476Abstract: A method for decimal multiplication in a superscaler processor comprising: obtaining a first operand and a second operand; establishing a multiplier and an effective multiplicand from the first operand and the second operand; and generating and accumulating a partial product term every two cycles. The partial product terms are created from the effective multiplicand and multiples of the multiplier, where the effective multiplicand is stored in a first register file, the multiples being ones times the effective multiplier, two times the effective multiplier, four times the effective multiplier and eight times the effective multiplier and the partial product terms are added to an accumulation of previous partial product terms shifted one digit right such that a digit shifted off is preserved as a result digit.Type: GrantFiled: July 27, 2006Date of Patent: August 12, 2008Assignee: International Business Machines CorporationInventors: Fadi Y. Busaba, Steven R. Carlough, Christopher A. Krygowski, John G. Rell, Jr.
-
Patent number: 7167889Abstract: A method for decimal multiplication in a superscaler processor comprising: obtaining a first operand and a second operand; establishing a multiplier and an effective multiplicand from the first operand and the second operand; and generating and accumulating a partial product term every two cycles. The partial product terms are created from the effective multiplicand and multiples of the multiplier, where the effective multiplicand is stored in a first register file, the multiples being ones times the effective multiplier, two times the effective multiplier, four times the effective multiplier and eight times the effective multiplier and the partial product terms are added to an accumulation of previous partial product terms shifted one digit right such that a digit shifted off is preserved as a result digit.Type: GrantFiled: May 12, 2003Date of Patent: January 23, 2007Assignee: International Business Machines CorporationInventors: Fadi Y. Busaba, Steven R. Carlough, Christopher A. Krygowski, John G. Rell, Jr.
-
Patent number: 7136893Abstract: A system and methodology for decimal multiplication in a microprocessor comprising: a recoder configured to recode decimal digits of a first operand to a corresponding set of {?5 to +5}. The recoder also configured to recode decimal digits of a second operand to a corresponding set of {?5 to +5}. The system also includes a multiplier array of digit multipliers, each digit multiplier configured to generate a partial product of a selected digit of a recoded first operand and a recoded second operand; and an adder array of digit adders, each adder configured to generate a sum of the partial products, wherein a least significant digit of the sum is shifted to a results register, and each adder includes carry feedback.Type: GrantFiled: July 10, 2003Date of Patent: November 14, 2006Assignee: International Business Machines CorporationInventors: Steven R. Carlough, Eric M. Schwarz
-
Publication number: 20040230633Abstract: A method for decimal multiplication in a superscaler processor comprising: obtaining a first operand and a second operand; establishing a multiplier and an effective multiplicand from the first operand and the second operand; and generating and accumulating a partial product term every two cycles. The partial product terms are created from the effective multiplicand and multiples of the multiplier, where the effective multiplicand is stored in a first register file, the multiples being ones times the effective multiplier, two times the effective multiplier, four times the effective multiplier and eight times the effective multiplier and the partial product terms are added to an accumulation of previous partial product terms shifted one digit right such that a digit shifted off is preserved as a result digit.Type: ApplicationFiled: May 12, 2003Publication date: November 18, 2004Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Fadi Y. Busaba, Steven R. Carlough, Christopher A. Krygowski, John G. Rell,
-
Patent number: 6633896Abstract: The present invention provides a computer-implemented method for multiplying two large multiplicands. The method includes generating a plurality of partial products by multiplying each digit of the first multiplicand with each digit of the second multiplicand. The resulting partial products have a least significant digit and a most significant digit. The method further includes adding each of the most significant digits to a first array and adding each of the least significant digits to a second array. The method then includes adding the first array to the second array, wherein the result is the product of the two original multiplicands.Type: GrantFiled: March 30, 2000Date of Patent: October 14, 2003Assignee: Intel CorporationInventors: Stephen F. Moore, Seth Abraham
-
Publication number: 20030009428Abstract: A system for the operation of a number of commercial washing machines and automatically feeding liquid chemicals to the washing machines. The system has chemical reservoir pods with a pressure sensor and an output valve on each. The chemical pods are supplied with liquid chemical by refill pumps. The quantity of chemical in a chemical pod, and the quantity of chemical dispensed from each chemical pod is calculated from information received by a controller from the pressure sensor to determine when to open and close the valve. A further pressure sensor is provided in the supply pipe to each washing machine to verify and measure flow quantity of water and chemical to the machine.Type: ApplicationFiled: July 17, 2002Publication date: January 9, 2003Inventor: David J. Barbe