Multiplication Patents (Class 708/620)
-
Patent number: 8560592Abstract: A system for processing sample sequences, that may include an input, a sequence of coupled registers, including an accumulator register, and first circuitry that may be coupled to the accumulator register and to the input. The input may be configured to receive a first number of sample sequences having two or more samples. To process the first number of sample sequences, the first circuitry may be configured to generate a current effective sample corresponding to the sample for each sample in each sample sequence, write the current effective sample to the accumulator register, and shift the contents of each register into a successive register in the sequence of registers. After processing, each register of at least a subset of the sequence of registers may hold a respective final effective sample that may correspond to a different position in a processed sample sequence.Type: GrantFiled: July 30, 2010Date of Patent: October 15, 2013Assignee: National Instruments CorporationInventors: Hector Rubio, Garritt W. Foote
-
Patent number: 8543630Abstract: In a computing device that calculates a square of an element in a finite field, a vector representation of the element in the finite field is accepted. The vector representation includes a plurality of elements. The computing device performs a multiplication operation on a base field using the accepted elements, and obtains a multiplication value. The multiplication operation is determined by a condition under which the element in the finite field is placed in an algebraic torus. The computing device performs an addition and subtraction operation using the obtained multiplication value and the accepted elements, and obtains a calculation result of the square of the element. The addition and subtraction operation is determined by the condition. The computing device then outputs the calculation result.Type: GrantFiled: April 1, 2013Date of Patent: September 24, 2013Assignee: Kabushiki Kaisha ToshibaInventors: Tomoko Yonemura, Hirofumi Muratani, Atsushi Shimbo, Kenji Ohkuma, Taichi Isogai, Yuichi Komano, Kenichiro Furuta, Yoshikazu Hanatani
-
Patent number: 8527572Abstract: In a multiplier architecture, all stages of a multiplication function are implemented using a uniform array of logic blocks. An exemplary multiplier circuit includes a two-dimensional array of substantially similar logic blocks. Each logic block includes a multiply block and a logic circuit driven by the multiply block. The logic circuit is coupled to implement an add function. A first portion of the array is coupled to receive the first and second multiplicand inputs, to provide a partial product bus, and to provide lower bits of the product output. A second portion is coupled to receive the partial product bus from the first portion of the array, and to provide from the partial product bus upper bits of the product output. The multiply blocks may be non-uniform arrays, e.g., logical AND gates and full adders in all but one column, with only logical AND gates in the remaining column.Type: GrantFiled: April 2, 2009Date of Patent: September 3, 2013Assignee: Xilinx, Inc.Inventors: Steven P. Young, Brian C. Gaide
-
Patent number: 8478809Abstract: An efficient method and apparatus to compute a product of polynomials of degree n?1 where n is an arbitrary prime is provided. The total number of multiply operations and Arithmetic Logical Unit (ALU) operations to compute the product is minimized through the judicious use of polynomial evaluations at few points to decrease the number of multiplications while using only simple ALU operations.Type: GrantFiled: December 15, 2007Date of Patent: July 2, 2013Assignee: Intel CorporationInventors: Vinodh Gopal, Michael E. Kounavis
-
Publication number: 20130165063Abstract: In order to provide a means for solving a problem that it provides a signal processing circuit with small circuit area and low power consumption, a signal processing circuit includes the first multiplying means which multiplies the first signal including the first frequency component by the second signal including the second frequency component and thereby outputs the third signal, the second multiplying means which multiplies the first signal by the fourth signal of the second frequency whose phase is lagging equals to the first phase difference relative to the second signal and thereby outputs the fifth signal, the third multiplying means which multiplies the first signal by the sixth signal of the second frequency whose phase is lagging equals to the second phase difference relative to the second signal and thereby outputs the seventh signal, the first adding means which adds the third signal with the first weight, the fifth signal with the second weight and the seventh signal with the third weight respectType: ApplicationFiled: August 18, 2011Publication date: June 27, 2013Applicant: NEC CORPORATIONInventor: Masaki Kitsunezuka
-
Publication number: 20130166616Abstract: The present system and method relate to a system for performing a multiplication. The system is arranged for receiving a first data value, and comprises means for calculating at run time a set of instructions for performing a multiplication using the first data value, storage means for storing the set of instructions calculated at run time, multiplication means arranged for receiving a second data value and at least one instruction from the stored set of instructions and arranged for performing multiplication of the first and the second data values using the at least one instruction.Type: ApplicationFiled: December 20, 2012Publication date: June 27, 2013Applicants: IMEC, SAMSUNG ELECTRONICS CO. LTD., KATHOLIEKE UNIVERSITEIT LEUVEN, K.U. LEUVEN R&DInventors: IMEC, KATHOLIEKE UNIVERSITEIT LEUVEN, K.U. LEUVEN R&D, SAMSUNG ELECTRONICS CO. LTD.
-
Patent number: 8471593Abstract: A logic cell array having a number of logic cells and a segmented bus system for logic cell communication, the bus system including different segment lines having shorter and longer segments for connecting two points in order to be able to minimize the number of bus elements traversed between separate communication start and end points.Type: GrantFiled: November 4, 2011Date of Patent: June 25, 2013Inventors: Martin Vorbach, Frank May, Dirk Reichardt, Frank Lier, Gerd Ehlers, Armin Nückel, Volker Baumgarte, Prashant Rao, Jens Oertel
-
Patent number: 8468192Abstract: The number of multipliers of a particular size that are required to perform a multiplication larger than that size is reduced. In the example of a 36-bit-by-36-bit multiplication, the number of 18-bit-by-18-bit multipliers required may be reduced from four to three. This may be achieved by using recursive decomposition techniques. As discussed in more detail below, if for each of two 36-bit numbers, the “digits” of each respective 36-bit number are added together, and then the two sums are multiplied, the resulting term can be combined additively with the product of the least-significant group of bits of the two 36-bit numbers and the product of the most-significant group of bits of the two 36-bit numbers to provide the desired product. A specialized processing block includes structures to facilitate the recursive decomposition technique.Type: GrantFiled: March 3, 2009Date of Patent: June 18, 2013Assignee: Altera CorporationInventor: Martin Langhammer
-
Publication number: 20130144925Abstract: Solving computational problems may include generating a logic circuit representation of the computational problem, encoding the logic circuit representation as a discrete optimization problem, and solving the discrete optimization problem using a quantum processor. Output(s) of the logic circuit representation may be clamped such that the solving involves effectively executing the logic circuit representation in reverse to determine input(s) that corresponds to the clamped output(s). The representation may be of a multiplication circuit. The discrete optimization problem may be composed of a set of miniature optimization problems, where each miniature optimization problem encodes a respective logic gate from the logic circuit representation. A multiplication circuit may employ binary representations of factors, and these binary representations may be decomposed to reduce the total number of variables required to represent the multiplication circuit.Type: ApplicationFiled: November 15, 2012Publication date: June 6, 2013Applicant: D-WAVE SYSTEMS INC.Inventor: D-Wave Systems Inc.
-
Publication number: 20130144926Abstract: A first systolic array receives an input set of time division multiplexed matrices from a plurality of channel matrices. In a first mode, the first systolic array performs triangularization on the input matrices, producing a first set of matrices, and in a second mode performs back-substitution on the first set, producing a second set of matrices. In a first mode, a second systolic array performs left multiplication on the second set of matrices with the input set of matrices, producing a third set of matrices. In a second mode, the second systolic array performs cross diagonal transposition on the third set of matrices, producing a fourth set of matrices, and performs right multiplication on the second set of matrices with the fourth set of matrices. The first systolic array switches from the first mode to the second mode after the triangularization, and the second systolic array switches from the first mode to the second mode after the left multiplication.Type: ApplicationFiled: January 28, 2013Publication date: June 6, 2013Applicant: XILINX, INC.Inventor: XILINX, INC.
-
Patent number: 8443032Abstract: A multiplication circuit generates a product of a matrix and a first scalar when in matrix mode and a product of a second scalar and a third scalar when in scalar mode. The multiplication circuit comprises a sub-product generator, an accumulator and an adder. The adder is configured to sum outputs of the accumulator to generate the product of the first scalar second scalar and the third scalar when in scalar mode. The sub-product generator generates sub-products of the matrix and the first scalar when in matrix mode and sub-products of the second scalar and the third scalar when in scalar mode. The accumulator is configured to generate the product of the matrix and the first scalar by providing save of the multiplication operation of the outputs from the sub-product generator.Type: GrantFiled: March 27, 2008Date of Patent: May 14, 2013Assignee: National Tsing Hua UniversityInventors: Chen Hsing Wang, Chieh Lin Chuang, Cheng Wen Wu
-
Patent number: 8438208Abstract: A processor including instruction support for implementing large-operand multiplication may issue, for execution, programmer-selectable instructions from a defined instruction set architecture (ISA). The processor may include an instruction execution unit comprising a hardware multiplier datapath circuit, where the hardware multiplier datapath circuit is configured to multiply operands having a maximum number of bits M.Type: GrantFiled: June 19, 2009Date of Patent: May 7, 2013Assignee: Oracle America, Inc.Inventors: Christopher H. Olson, Jeffrey S. Brooks, Robert T. Golla, Paul J. Jordan
-
Patent number: 8438205Abstract: In a computing device that calculates a square of an element in a finite field, a vector representation of the element in the finite field is accepted. The vector representation includes a plurality of elements. The computing device performs a multiplication operation on a base field using the accepted elements, and obtains a multiplication value. The multiplication operation is determined by a condition under which the element in the finite field is placed in an algebraic torus. The computing device performs an addition and subtraction operation using the obtained multiplication value and the accepted elements, and obtains a calculation result of the square of the element. The addition and subtraction operation is determined by the condition. The computing device then outputs the calculation result.Type: GrantFiled: February 26, 2009Date of Patent: May 7, 2013Assignee: Kabushiki Kaisha ToshibaInventors: Tomoko Yonemura, Hirofumi Muratani, Atsushi Shimbo, Kenji Ohkuma, Taichi Isogai, Yuichi Komano, Kenichiro Furuta, Yoshikazu Hanatani
-
Patent number: 8433744Abstract: A multiply-accumulate (MAC) circuit including a queue circuit programmable at runtime is described. In one embodiment, the queue circuit includes a main queue that is programmable at runtime and a supplementary queue. In one embodiment, the queue circuit further includes M multiplexers coupled to the main queue and the supplementary queue, where M is an integer greater than or equal to one. In one embodiment, the MAC circuit further includes M multiplier elements coupled to the queue circuit and an accumulator circuit coupled to the M multiplier elements. The M multiplier elements receive multiplicands from the queue circuits and provide results of multiplications to the accumulator circuit. The accumulator circuit maintains a running sum of the results of the M multiplications performed by the M multiplier elements. In one embodiment, the accumulator circuit includes two adder circuits.Type: GrantFiled: September 22, 2008Date of Patent: April 30, 2013Assignee: Altera CorporationInventor: Aidan Harding
-
Patent number: 8417760Abstract: For calculating a result of a modular multiplication with long operands, at least the multiplicand is divided into at least three shorter portions. Using the three shorter portions of the multiplicand, the multiplier and the modulus, a modular multiplication is performed within a cryptographic calculation, wherein the portions of the multiplicand, the multiplier and the modulus are parameters of the cryptographic calculation. The calculation is performed sequentially using the portions of the multiplicand and using an intermediate result obtained in a previous calculation, until all portions of the multiplicand are processed, to obtain the final result of the modular multiplication. The calculation of an intermediate result is performed using a multiplication addition operation, in which MMD operations and updating operations are performed sequentially, and short auxiliary registers and short result registers are used.Type: GrantFiled: October 30, 2006Date of Patent: April 9, 2013Assignee: Infineon Technologies AGInventor: Wieland Fischer
-
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
-
Patent number: 8386554Abstract: Systems, methods and apparatus for factoring numbers are provided. The factoring may be accomplished by creating a factor graph, mapping the factor graph onto an analog processor, initializing the analog processor to an initial state, evolving the analog processor to a final state, and receiving an output from the analog processor, the output comprising a set of factors of the number.Type: GrantFiled: August 2, 2010Date of Patent: February 26, 2013Assignee: D-Wave Systems Inc.Inventors: William G. Macready, Johnathan Kuan
-
Patent number: 8386553Abstract: A plurality of specialized processing blocks in a programmable logic device, including multipliers and circuitry for adding results of those multipliers, can be configured as a larger multiplier by adding to the specialized processing blocks selectable circuitry for shifting multiplier results before adding. In one embodiment, this allows all but the final addition to take place in specialized processing blocks, with the final addition occurring in programmable logic. In another embodiment, additional compression and adding circuitry allows even the final addition to occur in the specialized processing blocks. Circuitry that controls when an input is signed or unsigned facilitates complex arithmetic.Type: GrantFiled: March 6, 2007Date of Patent: February 26, 2013Assignee: Altera CorporationInventors: Martin Langhammer, Kumara Tharmalingam
-
Publication number: 20130031154Abstract: A self-timed multiplier unit includes a multiplier and a clock generator. The multiplier has a first set of semiconductor circuits in a critical path. The clock generator has a second set of semiconductor circuits configured to control a clock period of said clock generator selected to set a clock period longer than the propagation delay through the critical path of the multiplier. The clock generator may include a delay circuit having a delay to set the clock period longer than the propagation delay through the critical path of said multiplier. The clock generator uses circuit with identical logical design including the same standard cells, the same logic design or the same floor plan. Close matching of these circuit causes the multiplier and the clock generator to experience the same PVT speed variations.Type: ApplicationFiled: July 27, 2012Publication date: January 31, 2013Applicant: TEXAS INSTRUMENTS DEUTSCHLAND GMBHInventors: Christian Wiencke, Horst Diewald
-
Patent number: 8360780Abstract: A multiplication and division puzzle and method of making thereof include a main table having a plurality of cells in rows and columns, the cells being filled with products and multipliers. A template having a plurality of cells that correspond to the plurality of cells in the main table has selected cells removed to form openings therein to reveal a set of product clues in the main table when the template is superimposed or laid thereon. The product clues include the products in the cells of the main table. The non-selected cells that remain in the template, concealing the multiplier answer and non-selected product answers in the main table. The main table and template are used to form a puzzle blank having a plurality of cells containing the set of product clues and empty cells for the user to fill in missing product answers. The main table contains all of the product and multiplier answers.Type: GrantFiled: February 8, 2007Date of Patent: January 29, 2013Inventor: Lyndon O. Barton
-
Patent number: 8364740Abstract: For calculating a result of a modular multiplication with long operands, at least the multiplicand is divided into at least three shorter portions. Using the three shorter portions of the multiplicand, the multiplier and the modulus, a modular multiplication is performed within a cryptographic calculation, wherein the portions of the multiplicand, the multiplier and the modulus are parameters of the cryptographic calculation. The calculation is performed sequentially using the portions of the multiplicand and using an intermediate result obtained in a previous calculation, until all portions of the multiplicand are processed, to obtain the final result of the modular multiplication.Type: GrantFiled: October 27, 2006Date of Patent: January 29, 2013Assignee: Infineon Technologies AGInventor: Wieland Fischer
-
Device and method for calculating a result of a sum with a calculating unit with limited word length
Patent number: 8364737Abstract: For calculating the result of a sum of a first operand and a second operand, a modified second operand is calculated, which is negative and less than the modulus. Based on this modified second operand, a sum is calculated which is less than a maximally processable number of a calculating unit executing the calculation. Finally, the sum calculated using the modified second operand is reduced, namely with respect to the modulus, to obtain the result of the sum of the first and second operands.Type: GrantFiled: October 27, 2006Date of Patent: January 29, 2013Assignee: Infineon Technologies AGInventor: Wieland Fischer -
Patent number: 8346839Abstract: The speed at which an AES decrypt operation may be performed in a general purpose processor is increased by providing a separate decrypt data path. The critical path delay of the aes decrypt path is reduced by combining multiply and inverse operations in the Inverse SubBytes transformation. A further decrease in critical path delay in the aes decrypt data path is provided by merging appropriate constants of the inverse mix-column transform into a map function.Type: GrantFiled: March 30, 2007Date of Patent: January 1, 2013Assignee: Intel CorporationInventors: Erdinc Ozturk, Vinodh Gopal, Gilbert Wolrich, Wajdi K. Feghali, Kirk S. Yap
-
Patent number: 8332452Abstract: The present invention is generally related to the field of image processing, and more specifically to an instruction set for processing images. Vector processing may involve performing a plurality of dot product operations to generate operands for generating operands for a new vector. The dot product operations may require the issue of a plurality of permute instructions to arrange the vector operands in desired locations of a target register. Embodiments of the invention provide a dot product instruction wherein a mask field may be used to specify a particular location of a target register in which to transfer data, thereby avoiding the need for permute instructions for arranging data, reducing dependencies between instructions, and the usage of temporary registers.Type: GrantFiled: October 31, 2006Date of Patent: December 11, 2012Assignee: International Business Machines CorporationInventors: Eric Oliver Mejdrich, Adam James Muff
-
Patent number: 8332453Abstract: A shifter that includes a plurality of shift stages positioned within the shifter, and receiving and shifting input data to generate a shifted result, and a detection circuit coupled at an input of a final shift stage of the plurality of shifters, in a final stage within the shifter. The detection circuit receives a partially shifted vector at the input of the final shift stage along with a predetermined shift amount, and performing an all-one or all-zero detection operation using a portion of the partially shifted vector and the predetermined shift amount, in parallel, to a shifting operation performed by the final shift stage to generate the shifted result.Type: GrantFiled: December 10, 2008Date of Patent: December 11, 2012Assignee: International Business Machines CorporationInventors: Maarten Boersma, Silvia Melitta Mueller, Jochen Preiss, Holger Wetter
-
Patent number: 8321492Abstract: A system, method, and computer program product are provided for converting a reduction algorithm to a segmented reduction algorithm. In operation, a reduction algorithm is identified. Additionally, the reduction algorithm is converted to a segmented reduction algorithm. Furthermore, the segmented reduction algorithm is performed to produce an output.Type: GrantFiled: December 11, 2008Date of Patent: November 27, 2012Assignee: NVIDIA CorporationInventors: Shubhabrata Sengupta, Michael J. Garland
-
Patent number: 8312070Abstract: Disclosed is directed to a speed-level calculator and calculating method for dynamic voltage scaling. The speed-level calculator comprises a deadline counter, a shifter, and a fixed-point multiplier. The deadline counter calculates the residual time D from current time to each task deadline for completing an episode. The shifter generates a D? value by shifting the D value to the right for e-m bits, and takes the decimal fraction part of the D? value for m bits. The speed-level calculator further comprises a saturation control circuit to detect if an overflow occurs on the D? value. According to a pre-calculated parameter ?i corresponding to each task Ti, the fixed-point multiplier performs the multiplication of D? and ?i. After completing saturation and rounding on the multiplication result, a corresponding clock period is generated by taking the integer part. This clock period is used as speed-level to switch the processor voltage and frequency.Type: GrantFiled: February 20, 2008Date of Patent: November 13, 2012Assignee: Industrial Technology Research InstituteInventors: Yung-Cheng Ma, I-Yen Chen, Yen-Tun Peng, Chi-Lung Wang
-
Patent number: 8275822Abstract: Multiplication engines and multiplication methods are provided. A multiplication engine for a digital processor includes a first multiplier to generate unequally weighted partial products from input operands in a first multiplier mode; a second multiplier to generate equally weighted partial products from input operands in a second multiplier mode; a multiplexer to select the unequally weighted partial products in the first multiplier mode and to select the equally weighted partial products in the second multiplier mode; and a carry save adder array configured to combine the selected partial products in the first multiplier mode and in the second multiplier mode.Type: GrantFiled: January 10, 2008Date of Patent: September 25, 2012Assignee: Analog Devices, Inc.Inventors: Andreas D. Olofsson, Baruch Yanovitch
-
Publication number: 20120239721Abstract: An arithmetic device includes an input unit inputting data that are elements of a group; a converting unit is configured, when the input data are in a second representation, to convert the input data into a first representation and to perform arithmetic operation on the converted first representation using an operand in the first representation in which at least one subcomponent is a zero element to convert the converted first representation into first converted data expressed in the first representation, and when the input data are in the first representation, to perform arithmetic operation on the input data using the operand in the first representation in which at least one subcomponent is a zero element to convert the input data into second converted data expressed in the first representation; and an operating unit that performs arithmetic processing on the first or the second converted data using secret information.Type: ApplicationFiled: March 16, 2012Publication date: September 20, 2012Applicant: KABUSHIKI KAISHA TOSHIBAInventors: Taichi ISOGAI, Kenichiro Furuta, Hirofumi Muratani, Kenji Ohkuma, Tomoko Yonemura, Yoshikazu Hanatani, Atsushi Shimbo, Hanae Ikeda, Yuichi Komano
-
Publication number: 20120226731Abstract: A method for generating a design of a multiplier is disclosed. The method generally includes steps (A) to (C). Step (A) may generate a first circuit comprising a plurality of polynomial results of a particular multiplier scheme based on a plurality of parameters of the multiplier. The first circuit is generally configured to multiply a plurality of polynomials. Step (B) may generate a second circuit comprising a plurality of polynomial evaluators based on the parameters. The second circuit may be (i) connected to the first circuit and (ii) configured to evaluate a polynomial modulo operation. Step (C) may generate the design of the multiplier in combinational logic by optimizing a depth of a plurality of logic gates through the first circuit and the second circuit. A product of the polynomials generally resides in a finite field.Type: ApplicationFiled: September 13, 2011Publication date: September 6, 2012Inventors: Sergey B. Gashkov, Anatoli A. Bolotov, Mikhail I. Grinchuk, Lav D. Ivanovic, Anatoly A. Chasovshikh, Alexei V. Galatenko, Igor V. Kucherenko
-
Publication number: 20120221618Abstract: A method and a device protected against hidden channel attacks includes a calculation of the result of the exponentiation of a data m by an exponent d. The method and the device are configured to execute only multiplications of identical large variables, by breaking down any multiplication of different large variables x, y into a combination of multiplications of identical large variables.Type: ApplicationFiled: February 23, 2012Publication date: August 30, 2012Applicant: INSIDE SECUREInventors: Benoît FEIX, Georges GAGNEROT, Myléne ROUSSELLET, Vincent VERNEUIL, Christophe CLAVIER
-
Publication number: 20120203814Abstract: A family of computers is disclosed and claimed that supports simultaneous processes from the single core up to multi-chip Program Execution Systems (PES). The instruction processing of the instructed resources is local, dispensing with the need for large VLIW memories. The cores through the PES have maximum performance for Amdahl-compliant algorithms like matrix inversion, because the multiplications do not stall and the other circuitry keeps up. Cores with log based multiplication generators improve this performance by a factor of two for sine and cosine calculations in single precision floating point and have even greater performance for loge and ex calculations. Apparatus specifying, simulating, and/or layouts of the computer (components) are disclosed. Apparatus the computer and/or its components are disclosed.Type: ApplicationFiled: October 7, 2010Publication date: August 9, 2012Applicant: QSIGMA, INC.Inventors: Earle Jennings, George Landers
-
Publication number: 20120197956Abstract: A calculating unit for reducing an input number with respect to a modulus, wherein the input number has input number portions of different significances, wherein the input number portions represent the input number with respect to a division number, wherein the modulus has modulus portions of different significances, and wherein the modulus portions represent the modulus with respect to the division number, includes a unit for estimating a result of an integer division of the input number by the modulus using a stored most significant portion of the number, a stored most significant portion of the modulus and the number, and for storing the estimated result in a memory of the calculating unit, and a unit for calculating a reduction result based on a subtraction of a product of the modulus and a value derived from the estimated result from the number.Type: ApplicationFiled: April 10, 2012Publication date: August 2, 2012Applicant: INFINEON TECHNOLOGIES AGInventor: Wieland FISCHER
-
Patent number: 8234326Abstract: The present invention provides processing systems, apparatuses, and methods that support both general processing processor (GPP) and digital signal processor (DSP) features, such as vector and single value multiplication. In an embodiment, fractional arithmetic, integer arithmetic, saturation, and single instruction multiple data (SIMD) operations such as vector multiply, multiply accumulate, dot-product accumulate, and multiply-subtract accumulate are supported. In an embodiment, the process core and/or multiplier multiplies vector values or single values by creating partial products for each desired product. These partial products are added to produce intermediate results, which are combined in different ways to support various GPP and DSP operations.Type: GrantFiled: May 5, 2005Date of Patent: July 31, 2012Assignee: MIPS Technologies, Inc.Inventor: Chinh N. Tran
-
Patent number: 8229109Abstract: Techniques are described to determine N mod M, where N is a number having a width of n-bits, and M is a number having a width of m-bits. The techniques, generally, involve determining N?=Nrt2f mod M+NL and, subsequently, determining N? mod M.Type: GrantFiled: June 27, 2006Date of Patent: July 24, 2012Assignee: Intel CorporationInventors: William C. Hasenplaugh, Gunnar Gaubatz, Vinodh Gopal
-
Patent number: 8214419Abstract: Methods and apparatus are provided for implementing an efficient saturating multiplier associated with addition and subtraction logic. The result of the multiplier is saturated before accumulating. The result of the multiplier can be stored in a result register in unsaturated form. The output of the result register can then be saturated and provided to addition and subtraction logic to allow efficient implementation of a saturating multiplier.Type: GrantFiled: December 30, 2008Date of Patent: July 3, 2012Assignee: Altera CorporationInventor: Paul Metzgen
-
Publication number: 20120166504Abstract: In order to reduce the area and power consumption of MAC units, some aspects of the present disclosure relate to MAC units having a feedback path with an arithmetic element disposed thereon. The arithmetic element is often controlled so as to limit the number of bits needed in the data path, thereby limiting power and area required for the MAC unit.Type: ApplicationFiled: December 27, 2010Publication date: June 28, 2012Applicant: Infineon Technologies AGInventor: Andreas Menkhoff
-
Patent number: 8209370Abstract: Apparatus and method for performing multi-value arithmetic operations are disclosed. Multi-value signals can be added, subtracted and multiplied using a first truth table to generate a residue and a second truth table to generate a carry. Additionally, method and apparatus to efficiently perform the function a0b1+a1b0 on multi-value signals are disclosed. Also an efficient method of processing large binary signals is disclosed.Type: GrantFiled: May 27, 2009Date of Patent: June 26, 2012Assignee: Ternarylogic LLCInventor: Peter Lablans
-
Patent number: 8209369Abstract: Provided is an apparatus for encryption/decryption and electronic signature in a mobile communication environment. A signal processing apparatus, performing modular multiplication in an electronic device, includes a first logic for outputting a signed multiplicand by selectively performing a one's complementary operation on a multiplicand according to a Booth conversion result of a multiplier in modular multiplication; a second logic for outputting a modulus which is signed in the modular multiplication based on a carry input value Carry-in of a current clock, determined from a carry value cin for correction of a previous clock, and on a sign bit of the multiplicand; and a third logic for receiving the signed multiplicand and the signed modulus, and calculating a result value of the modular multiplication by iteratively performing a full addition operation on a carry value C and a sum value S of the full addition operation, found at the previous clock.Type: GrantFiled: September 4, 2007Date of Patent: June 26, 2012Assignee: Samsung Electronics Co., Ltd.Inventors: Kyung-Hee Lee, Bum-Jin Im, Mi-Suk Huh
-
Publication number: 20120144161Abstract: An apparatus is provided for performing carryless multiplication. The apparatus has an opcode dectector and a carryless preformat unit. The opcode dectector is configured to receive a carryless multiplication instruction, and is configured to assert a carryless signal responsive to receipt of the carryless multiplication instruction. The carryless preformat unit is configured to partition the first operand into parts responsive to assertion of the carryless signal, where the parts are configured such that a Booth encoder selects first partial products corresponding to a second operand and is precluded from selection of second partial products corresponding to the second operand, and where the second partial products are results of implicit carry operations. The first partial products are exclusive-ORed together to yield a carryless multiplication result.Type: ApplicationFiled: December 3, 2010Publication date: June 7, 2012Applicant: VIA Technologies, Inc.Inventor: Timothy A. Elliott
-
Patent number: 8164491Abstract: Provided are a coefficient multiplier and digital delta-sigma modulator using the same. The coefficient multiplier has the average of output signals of respective dependent multipliers as an effective coefficient using a coefficient averaging technique without employing an adder that has a complex structure and occupies a large chip area. Accordingly, the coefficient multiplier has a simple hardware constitution and small chip area in comparison with a canonical signed digit (CSD) coefficient multiplier, and the digital delta-sigma modulator employing the coefficient multiplier has a simple structure and small size.Type: GrantFiled: May 19, 2010Date of Patent: April 24, 2012Assignee: Electronics and Telecommunications Research InstituteInventors: Min Hyung Cho, Yi Gyeong Kim, Jong Kee Kwon
-
Publication number: 20120060020Abstract: The described embodiments include a processor that executes a vector instruction. The processor starts by receiving a start value and an increment value, and optionally receiving a predicate vector with N elements as inputs. The processor then executes the vector instruction. Executing the vector instruction causes the processor to generate a result vector. When generating the result vector, if the predicate vector is received, for each element in the result vector for which a corresponding element of the predicate vector is active, otherwise, for each element in the result vector, the processor sets the element in the result vector equal to the start value plus a product of the increment value multiplied by a specified number of elements to the left of the element in the result vector.Type: ApplicationFiled: November 8, 2011Publication date: March 8, 2012Applicant: APPLE INC.Inventors: Jeffry E. Gonion, Keith E. Diefendorff
-
Publication number: 20120030267Abstract: A system for processing sample sequences, that may include an input, a sequence of coupled registers, including an accumulator register, and first circuitry that may be coupled to the accumulator register and to the input. The input may be configured to receive a first number of sample sequences having two or more samples. To process the first number of sample sequences, the first circuitry may be configured to generate a current effective sample corresponding to the sample for each sample in each sample sequence, write the current effective sample to the accumulator register, and shift the contents of each register into a successive register in the sequence of registers. After processing, each register of at least a subset of the sequence of registers may hold a respective final effective sample that may correspond to a different position in a processed sample sequence.Type: ApplicationFiled: July 30, 2010Publication date: February 2, 2012Inventors: Hector Rubio, Garritt W. Foote
-
Patent number: 8082287Abstract: A pre-saturating multiplier inspects the operands to a multiply operation prior to performing any multiplication. If the operands will cause an overflow requiring saturation, the multiplier outputs the saturated value without multiplying the original operands. In one embodiment, parameters derived from the operands are altered such that when the multiply operation is performed on the altered parameters, the multiplier produces the saturated result. This may comprise altering a Booth recoded bit group to select a negative zero instead of a zero as a partial product, and suppressing the addition of the value one to the partial products (thus effectively subtracting the value one). In another embodiment, when the operands that will cause an overflow are detected, the output of the multiplier is forced to a predetermined saturation value.Type: GrantFiled: January 20, 2006Date of Patent: December 20, 2011Assignee: QUALCOMM IncorporatedInventors: Kenneth Alan Dockser, Bonnie Collett Sexton
-
Publication number: 20110289131Abstract: Techniques are generally described that include methods, devices, systems and/or apparatus for dividing a numerator by a denominator. Some example methods may include selecting a first numerical factor stored in an electronic storage media. The first numerical factor may be multiplied by a numerator at least in part using a first logic circuit configured to perform multiplication. The first numerical factor may also be multiplied by a denominator. A second numerical factor may be calculated based, at least in part, on an approximation of a square of the difference between unity and the product of the first numerical factor and the denominator. The second numerical factor may be multiplied by the product of the numerator and the first numerical factor at least in part using the first logic circuit, to generate an approximation of a quotient of the numerator and the denominator.Type: ApplicationFiled: May 21, 2010Publication date: November 24, 2011Inventors: Earl E. Swartzlander, JR., Inwook Kong
-
Patent number: 8058899Abstract: A logic cell array having a number of logic cells and a segmented bus system for logic cell communication, the bus system including different segment lines having shorter and longer segments for connecting two points in order to be able to minimize the number of bus elements traversed between separate communication start and end points.Type: GrantFiled: February 13, 2009Date of Patent: November 15, 2011Inventors: Martin Vorbach, Frank May, Dirk Reichardt, Frank Lier, Gerd Ehlers, Armin Nückel, Volker Baumgarte, Prashant Rao, Jens Oertel
-
Patent number: 8046401Abstract: A multiplier is able to multiply an input data value by a selected constant value in CSD form. The selected constant value has a plurality of pairs of bits, and the multiplier includes multiplexers, each controlled by a respective pair of bits of the selected constant value. Each of the multiplexers has a plurality of inputs, and is connected to receive the input data value, the inverse of the input data value, and all zeros on said inputs, and it is controlled such that it outputs either the input data value, the inverse of the input data value, or all zeros, depending on the values of the respective pair of bits of the selected constant value.Type: GrantFiled: March 23, 2006Date of Patent: October 25, 2011Assignee: NXP B.V.Inventors: Tianyan Pu, Lei Bi
-
Publication number: 20110231468Abstract: 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: ApplicationFiled: June 1, 2011Publication date: September 22, 2011Applicant: KING FAHD UNIVERSITY OF PETROLEUM AND MINERALSInventors: ALAAELDIN AMIN, MUHAMMAD WALEED SHINWARI
-
Patent number: RE44190Abstract: A data processing apparatus including a multiplier unit forming a product from L bits of each two data buses of N bits each N is greater than L. The multiplier forms a N bit output having a first portion which is the L most significant bits of the of product and a second portion which is M other bits not including the L least significant bits of the product, where N is the sum of M and L. In the preferred embodiment the M other bits are derived from other bits of the two input data busses, such as the M other bits of the first input data bus. An arithmetic logic unit performs parallel operations (addition, subtraction, Boolean functions) controlled by the same instructions. This arithmetic logic unit is divisible into a selected number of sections for performing identical operations on independent sections of its inputs. The multiplier unit may form dual products from separate parts of the input data.Type: GrantFiled: October 16, 2009Date of Patent: April 30, 2013Assignee: Texas Instruments IncorporatedInventors: Karl M. Guttag, Christopher Read, Keith Balmer