Sum Of Products Generation Patents (Class 708/603)
  • Patent number: 8291223
    Abstract: An arithmetic circuit capable of Montgomery multiplication using only a one-port RAM is disclosed. In a first read process, b[i] is read from a memory M2 of a sync one-port RAM for storing a[s?1: 0] and b[s?1: 0] and stored in a register R1. In a second read process, a[j] is read from the memory M2, t[j] from a memory M1 of a sync one-port RAM for storing t[s?1: 0], b[i] from the register R1, and a value RC from a register R2, and input to a sum-of-products calculation circuit for calculating t[j]+a[j]*b[i]+RC. In a write process, the calculation result data FH is written in the register R2, and the calculation result data FL in the memory M1 as t[j]. A first subloop process for repeating the second read process, the sum-of-products calculation process and the write process is executed after the first read process.
    Type: Grant
    Filed: January 12, 2010
    Date of Patent: October 16, 2012
    Assignee: Sharp Kabushiki Kaisha
    Inventor: Shigeo Ohyama
  • Patent number: 8280941
    Abstract: A method and system are described for performing an arithmetic operation such as multiplication or division of a fixed point variable measured at runtime by a floating point constant known at compile-time. The floating point constant is converted into a mantissa and a base-2 exponent at compile-time. The mantissa and exponent are preferably combined into a single unit (a word) of memory. At runtime either single multiplication and accumulation or matrix multiplication and accumulation is preferably achieved by a microprocessor or DSP instruction designed to use the mantissa-exponent pairs stored in a word of memory. The microprocessor instruction multiplies a fixed point runtime variable x by the mantissa and the result is shifted to the right or left as indicated by the exponent, which is preferably a 2's complement number. The complete instruction sequence to perform the multiplication can be made reentrant and can be pipelined.
    Type: Grant
    Filed: December 19, 2007
    Date of Patent: October 2, 2012
    Assignee: HGST Netherlands B.V.
    Inventors: Jeffrey J. Dobbek, Kirk Hwang
  • Patent number: 8280940
    Abstract: A data processing apparatus including a register bank, a shadow register and an arithmetic operation unit. The register bank includes a number of registers respectively for storing a number of operands wherein the registers are n-bit registers, and n is a nature number. The shadow register stores a first backup operand for making a backup of a first operand, which is stored in a first one of the registers in response to first control signal. The arithmetic operation unit performs at least an arithmetic operation on the operands to obtain operational data, and stores the operational data in the first register in response to an arithmetic operation command.
    Type: Grant
    Filed: October 22, 2007
    Date of Patent: October 2, 2012
    Assignee: Himax Technologies Limited
    Inventors: Chun-Yu Chen, Shu-Ming Liu
  • Patent number: 8239442
    Abstract: A hardware accelerator operable in an FFT mode and an FIR mode. The hardware accelerator takes input data and coefficient data and performs the calculations for the selected mode. In the FFT mode, a rate-two FFT is calculated, producing four real outputs corresponding to two complex numbers. In the FIR mode, one real output is generated. The hardware accelerator may switch from FFT mode to FIR mode using three multiplexers. All FIR components may be utilized in FFT mode. Registers may be added to provide pipelining support. The hardware accelerator may support multiple numerical-representation systems.
    Type: Grant
    Filed: August 8, 2008
    Date of Patent: August 7, 2012
    Assignee: Analog Devices, Inc.
    Inventor: Boris Lerner
  • Patent number: 8122078
    Abstract: A method of operation within an integrated-circuit processing device having an enhanced combined-arithmetic capability. In response to an instruction indicating a combined arithmetic operation, the processor generates a dot-product of first and second operands, adds the dot-product to an accumulated value, and then outputs the sum of the accumulated value and the dot-product.
    Type: Grant
    Filed: October 9, 2007
    Date of Patent: February 21, 2012
    Assignee: Calos Fund, LLC
    Inventors: Brucek Khailany, William James Dally, Raghunath Rao, DeForest Tovey
  • Patent number: 8117456
    Abstract: A method, apparatus and system to ensure the security in the information exchange and to provide list matching with higher efficiency and practicality. In a particular embodiment, each of lists to be subject to list matching is represented as a polynomial having roots equivalent to the items of the list. Then, polynomials generated for the lists to be subject to list matching are added according to a distributed secret computation. A list containing an item equivalent to a root of a polynomial resulting from the addition is created and output as the list of a common item.
    Type: Grant
    Filed: August 5, 2009
    Date of Patent: February 14, 2012
    Assignee: International Business Machines Corporation
    Inventors: Masayuki Numao, Yuji Watanabe
  • Patent number: 8112466
    Abstract: An efficient implementation of DSP functions in a field programmable gate array (FPGA) using one or more computational blocks, each block having of a multiplier, an accumulator, and multiplexers. The structure implements most common DSP equations in a fast and a highly compact manner. A novel method for cascading these blocks with the help of dedicated DSP lines is provided, which leads to a very simple and proficient implementation of n-stage MAC operations.
    Type: Grant
    Filed: September 28, 2005
    Date of Patent: February 7, 2012
    Assignee: Sicronic Remote KG, LLC
    Inventors: Deboleena Minz, Kailash Digari
  • Patent number: 8073892
    Abstract: In general, in one aspect, the disclosure describes a multiplier that includes a set of multiple multipliers configured in parallel where the set of multiple multipliers have access to a first operand and a second operand to multiply, the first operand having multiple segments and the second operand having multiple segments. The multiplier also includes logic to repeatedly supply a single segment of the second operand to each multiplier of the set of multiple multipliers and to supply multiple respective segments of the first operand to the respective ones of the set of multiple multipliers until each segment of the second operand has been supplied with each segment of the first operand. The logic shifts the output of different ones of the set of multiple multipliers based, at least in part, on the position of the respective segments within the first operand. The multiplier also includes an accumulator coupled to the logic.
    Type: Grant
    Filed: December 30, 2005
    Date of Patent: December 6, 2011
    Assignee: Intel Corporation
    Inventors: Wajdi K. Feghali, William C. Hasenplaugh, Gilbert M. Wolrich, Daniel R. Cutter, Vinodh Gopal, Gunnar Gaubatz
  • Patent number: 8036165
    Abstract: The quality of signals during SDMA is raised. In an uplink, a signal processing unit receives signals respectively from a plurality of terminal apparatuses which have been multiple-accessed by division of time. It derives receiving channel characteristics corresponding to the plurality of terminal apparatuses, respectively, for each time slot. In a downlink, the signal processing unit derives transmitting channel characteristics from the receiving channel characteristics derived and, based on the transmitting channel characteristics derived, it transmits signals respectively to the plurality of terminal apparatuses to which SDMA has been performed.
    Type: Grant
    Filed: May 16, 2005
    Date of Patent: October 11, 2011
    Assignee: Kyocera Corporation
    Inventors: Takeo Miyata, Katsutoshi Kawai
  • Patent number: 7979712
    Abstract: A method, apparatus and system to ensure the security in the information exchange and to provide list matching with higher efficiency and practicality. In a particular embodiment, each of lists to be subject to list matching is represented as a polynomial having roots equivalent to the items of the list. Then, polynomials generated for the lists to be subject to list matching are added according to a distributed secret computation. A list containing an item equivalent to a root of a polynomial resulting from the addition is created and output as the list of a common item.
    Type: Grant
    Filed: October 3, 2002
    Date of Patent: July 12, 2011
    Assignee: International Business Machines Corporation
    Inventors: Masayuki Numao, Yuji Watanabe
  • Publication number: 20110106871
    Abstract: A data processing apparatus and method for performing multiply-accumulate operations is provided. The data processing apparatus includes data processing circuitry responsive to control signals to perform data processing operations on at least one input data element.
    Type: Application
    Filed: October 29, 2010
    Publication date: May 5, 2011
    Applicant: ARM LIMITED
    Inventors: Dominic Hugo Symes, Mladen Wilder, Guy Larri
  • Patent number: 7937594
    Abstract: A digital logic circuit comprises a programmable logic device and a programmable security circuit. The programmable security circuit stores a set of authorized configuration security keys. The programmable security circuit compares the authorized configuration security keys with an incoming configuration request, and selectively enables a new configuration for the programmable logic device in response to the configuration request. In another exemplary embodiment, a programmable security circuit also stores a set of authorized operation security keys. The programmable security circuit compares the authorized operation security keys with an incoming operation request from the programmable logic device, and selectively enables an operation within the programmable logic device in response to the operation request.
    Type: Grant
    Filed: May 16, 2006
    Date of Patent: May 3, 2011
    Assignee: Infineon Technologies AG
    Inventors: Stephen L. Wasson, David K. Varn, John D. Ralston
  • Patent number: 7917569
    Abstract: A device for implementing a sum-of-products expression includes a first set of 2-input Shift-and-Add (2SAD) blocks receiving a coefficient set/complex sum-of-products expression for generating a first set of partially optimized expression terms by applying recursive optimization therein, a second set of 1-input Shift-and-Add (1SAD) blocks receiving response from the 2SAD blocks for generating a second set of partially optimized expression terms by applying vertical optimization therein, a third set of 2SAD blocks receiving recursively and vertically optimized response from the first set of 2SAD block and the second set of 1SAD blocks for generating a third set of partially optimized expression terms by applying horizontal optimization therein, a fourth set of 2SAD blocks receiving response from the blocks for generating a fourth set of partially optimized expression terms by applying decomposition and factorization, and a fifth set of 2SAD blocks receiving response from the fourth set of 2SAD blocks, for gene
    Type: Grant
    Filed: October 20, 2005
    Date of Patent: March 29, 2011
    Assignee: STMicroelectronics Pvt. Ltd.
    Inventors: Aditya Bhuvanagiri, Rakesh Malik, Nitin Chawla
  • Publication number: 20110066833
    Abstract: A new computing machine and new methods of executing and solving heretofore unknown computational problems are presented here. The computing system demonstrated here can be implemented with a program composed of instructions such that instructions may be added or removed while the instructions are being executed. The computing machine is called a Dynamic Register Machine. The methods demonstrated apply to new hardware and software technology. The new machine and methods enable advances in machine learning, new and more powerful programming languages, and more powerful and flexible compilers and interpreters.
    Type: Application
    Filed: September 14, 2009
    Publication date: March 17, 2011
    Inventor: Michael Stephen Fiske
  • Patent number: 7836117
    Abstract: A specialized processing block for a programmable logic device incorporates a fundamental processing unit that performs a sum of two multiplications, adding the partial products of both multiplications without computing the individual multiplications. Such fundamental processing units consume less area than conventional separate multipliers and adders. The specialized processing block further has input and output stages, as well as a loopback function, to allow the block to be configured for various digital signal processing operations.
    Type: Grant
    Filed: July 18, 2006
    Date of Patent: November 16, 2010
    Assignee: Altera Corporation
    Inventors: Martin Langhammer, Kwan Yee Martin Lee, Triet M. Nguyen, Keone Streicher, Orang Azgomi
  • Publication number: 20100240330
    Abstract: A digital signal processing device includes: a memory for coefficient storage including partial memories that dividedly store, for each plurality of bits, a plurality of filter coefficients as divided data; a control unit that outputs, to the memory for coefficient storage, an address signal added with activation/inactivation control information; a CE-signal interrupting unit that transmits the CE signals to the partial memories or interrupts the CE signals based on the activation/inactivation control information; an output selecting unit that is provided in at least a part of the partial memories and selects and outputs, based on the activation/inactivation control information, an output of the partial memory or all-bit zero value; a multiplier that performs multiplication of each of a plurality of input data and each of the filter coefficients including the output of the output selecting unit; and an integration circuit system that integrates multiplication results output from the multiplier.
    Type: Application
    Filed: March 10, 2010
    Publication date: September 23, 2010
    Applicant: KABUSHIKI KAISHA TOSHIBA
    Inventor: Toshio Fujisawa
  • Patent number: 7797363
    Abstract: A processor comprises a plurality of arithmetic units, an accumulator unit, and a reduction unit coupled between the plurality of arithmetic units and the accumulator unit. The reduction unit receives products of vector elements from the arithmetic units and a first accumulator value from the accumulator unit, and processes the products and the first accumulator value to generate a second accumulator value for delivery to the accumulator unit. The processor implements a plurality of vector multiply and reduce operations having guaranteed sequential semantics, that is, operations which guarantee that the computational result will be the same as that which would be produced using a corresponding sequence of individual instructions.
    Type: Grant
    Filed: April 1, 2005
    Date of Patent: September 14, 2010
    Assignee: Sandbridge Technologies, Inc.
    Inventors: Erdem Hokenek, Michael J. Schulte, Mayan Moudgill, C. John Glossner
  • Publication number: 20100179976
    Abstract: A semiconductor device includes a decoder receiving first multiplier data of 3 bits indicating a multiplier to output a shift flag, an inversion flag, and an operation flag in accordance with Booth's algorithm, and a first partial product calculation unit receiving first multiplicand data of 2 bits indicating a multiplicand, a shift flag, an inversion flag, and an operation flag to select one of the higher order bit and lower order bit of the first multiplicand data based on the shift flag, invert or non-invert the selected bit based on the inversion flag, select one of the inverted or non-inverted data and data of a predetermined logic level based on the operation flag, and output the selected data as partial product data indicating the partial product of the first multiplier data and the first multiplicand data.
    Type: Application
    Filed: January 14, 2010
    Publication date: July 15, 2010
    Inventors: Masakatsu ISHIZAKI, Takeshi Kumaki, Masaharu Tagami, Yuta Imai, Tetsushi Koide, Hans Jürgen Mattausch, Takayuki Gyoten, Hideyuki Noda, Yoshihiro Okuno, Kazutami Arimoto
  • Patent number: 7747668
    Abstract: A product-sum operation circuit includes a sorting block (4) which outputs a plurality of operand values x1, x2, . . . xi in descending or ascending order of magnitude, and an operation unit (1) which multiplies each operand value xi output from the sorting block (4) by a corresponding operand value Wi and calculates the accumulated sum of multiplication results.
    Type: Grant
    Filed: February 10, 2005
    Date of Patent: June 29, 2010
    Assignee: Canon Kabushiki Kaisha
    Inventors: Osamu Nomura, Takashi Morie, Keisuke Korekado
  • Patent number: 7739324
    Abstract: In one embodiment of the invention, an integrated circuit (IC) design tool is provided that has a sum-of-products (SOP) synthesizer. The SOP synthesizer receives expected arrival times of signals including partial product terms of each bit-vector of a SOP functional block, a comparison gate delay, and a register-transfer-level (RTL) netlist in order to synthesize a gate-level netlist of the SOP functional block. The SOP synthesizer includes software modules to synthesize a partial products generator, a partial product reduction tree, and an adder. The synthesis of the partial product reduction tree is responsive to a comparison gate delay and the expected arrival times of the partial product terms in each bit vector.
    Type: Grant
    Filed: March 22, 2006
    Date of Patent: June 15, 2010
    Assignee: Cadence Design Systems, Inc.
    Inventors: Sabyasachi Das, Jean-Charles Giomi
  • Publication number: 20100146024
    Abstract: In an IIR digital filter, for example, a multi-input multiplier/adder circuit is used as a component in place of a plurality of multipliers and a plurality of adders. With this omission of a plurality of multipliers and a plurality of adders, the circuit size can be reduced. Also, since the multi-input multiplier/adder circuit permits pipelining for increasing the processing speed in feedback processing, filter processing can be performed at high speed.
    Type: Application
    Filed: March 19, 2007
    Publication date: June 10, 2010
    Inventor: Kouichi Magano
  • Patent number: 7725521
    Abstract: A method and apparatus for performing matrix transformations including multiply-add operations and byte shuffle operations on packed data in a processor. In one embodiment, two rows of content byte elements are shuffled to generate a first and second packed data respectively including elements of a first two columns and of a second two columns. A third packed data including sums of products is generated from the first packed data and elements from two rows of a matrix by a multiply-add instruction. A fourth packed data including sums of products is generated from the second packed data and elements from two more rows of the matrix by another multiply-add instruction. Corresponding sums of products of the third and fourth packed data are then summed to generate two rows of a product matrix. Elements of the product matrix may be generated in an order that further facilitates a second matrix multiplication.
    Type: Grant
    Filed: October 10, 2003
    Date of Patent: May 25, 2010
    Assignee: Intel Corporation
    Inventors: Yen-Kuang Chen, Eric Q. Li, William W. Macy, Jr., Minerva M. Yeung
  • Patent number: 7711765
    Abstract: A method and corresponding circuit for determining a final result for a desired series of multiply-and-accumulate (MAC) operations are based on counting the occurrence of products in the desired series of MAC operations, multiplying the counts by their corresponding products to obtain partial sums, and adding the partial sums to obtain the final result. MAC processing as taught herein can be applied to a wide range of applications, such as received signal processing in wireless communication for computationally efficient (and high-rate) generation of interference correlation estimates and/or equalization filter values for a received communication signal.
    Type: Grant
    Filed: February 17, 2006
    Date of Patent: May 4, 2010
    Assignee: Telefonaktiebolaget L M Ericsson (publ)
    Inventors: Yi-Pin Eric Wang, Gregory E. Bottomley, Andres Reial
  • Publication number: 20100011042
    Abstract: A method and apparatus for including in a processor instructions for performing integer transforms including multiply-add operations and horizontal-add operations on packed data. In one embodiment, a processor is coupled to a memory that stores a first packed byte data and a second packed byte data. The processor performs operations on said first packed byte data and said second packed byte data to generate a third packed data in response to receiving a multiply-add instruction. A plurality of the 16-bit data elements in this third packed data storing the result of performing multiply-add operations on data elements in the first and second packed byte data. The processor adds together at least a first and a second 16-bit data element of the third packed data in response to receiving an horizontal-add instruction to generate a 16-bit result as one of a plurality of data elements of a fourth packed data.
    Type: Application
    Filed: September 15, 2009
    Publication date: January 14, 2010
    Inventors: Eric Debes, William W. Macy, Jonathan J. Tyler
  • Patent number: 7593978
    Abstract: A processor having a reduction unit that sums m input operands plus an accumulator value, with the option of saturating after each addition or wrapping around the result of each addition. The reduction unit also allows the m input operands to be subtracted from the accumulator value by simply inverting the bits of the input operands and setting a carry into each of a plurality of reduction adders to one. The reduction unit can be used in conjunction with m parallel multipliers to quickly perform dot products and other vector operations with either saturating or wrap-around arithmetic.
    Type: Grant
    Filed: May 7, 2004
    Date of Patent: September 22, 2009
    Assignee: Sandbridge Technologies, Inc.
    Inventors: Michael J. Schulte, Pablo I. Balzola, C. John Glossner
  • Patent number: 7580968
    Abstract: A method of performing a scaled sum-of-product operation in a processor in response to multiply-and-accumulate (MAC) instructions. The method includes accessing a first number, accessing a second number, and accessing a shift value. The first number is multiplied by the second number, the resulting product comprising a third number that includes a most significant portion and a least significant portion. The method includes executing a first MAC instruction, executing a second MAC instruction, and storing a final result of the scaled sum-of-product operation. Executing the first MAC instruction comprises right-shifting the least significant portion of the third number according to the shift value; accessing a least significant portion of a fourth number; and adding the right-shifted least significant portion of the third number to the least significant portion of the fourth number, the resulting sum comprising a least significant portion of the final result of the scaled sum-of-product operation.
    Type: Grant
    Filed: January 22, 2003
    Date of Patent: August 25, 2009
    Assignee: Texas Instruments Incorporated
    Inventor: Alexander Tessarolo
  • Publication number: 20080307031
    Abstract: In one embodiment, a state determiner comprises a plurality of logic circuits and a second logic circuit. Each logic circuit corresponds to a respective bit position of a result of an adder. A first logic circuit corresponds to a least significant bit of the result and is coupled to receive a least significant bit of each operand of the adder and a carry-in input to the adder. Each remaining logic circuit is coupled to receive a respective bit from the respective bit position of each operand and a less significant bit adjacent to the respective bit of each operand. Each logic circuit is configured to generate an output signal indicative of whether or not a specific result occurs in the respective bit position of the result responsive only to inputs that the logic circuit is coupled to receive as stated previously.
    Type: Application
    Filed: June 8, 2007
    Publication date: December 11, 2008
    Inventor: Honkai Tam
  • Patent number: 7430578
    Abstract: A method and apparatus for including in a processor instructions for performing multiply-add operations on packed byte data. In one embodiment, a processor is coupled to a memory. The memory has stored therein a first packed byte data and a second packed byte data. The processor performs operations on data elements in said first packed byte data and said second packed byte data to generate a third packed data in response to receiving an instruction. A plurality of the data elements in this third packed data storing the result of performing multiply-add operations on data elements in the first and second packed byte data.
    Type: Grant
    Filed: June 30, 2003
    Date of Patent: September 30, 2008
    Assignee: Intel Corporation
    Inventors: Eric Debes, William W. Macy, Jonathan J. Tyler, James Coke, Frank Binns, Scott Rodgers, Peter Ruscito, Bret Toll, Vesselin Naydenov, Masood Tahir, David Jackson
  • Patent number: 7415542
    Abstract: A micro-programmable filter (MFE) engine includes multiple programmable filter elements and a microcode controller. The filter elements can be configured, controlled, and combined in different ways to implement different types of filters. The MFE preferably supports multiple-execution instructions that allow a single instruction to perform multiple moves into accumulators for efficient data movement inside MFE.
    Type: Grant
    Filed: June 18, 2004
    Date of Patent: August 19, 2008
    Assignee: Analog Devices, Inc.
    Inventors: Michael Hennedy, Vladimir Friedman, Artemas Speziale, Mohammad Reza Sherkat
  • Patent number: 7395298
    Abstract: A method and apparatus for including in a processor instructions for performing multiply-add operations on packed data. In one embodiment, a processor is coupled to a memory. The memory has stored therein a first packed data and a second packed data. The processor performs operations on data elements in said first packed data and said second packed data to generate a third packed data in response to receiving an instruction. At least two of the data elements in this third packed data storing the result of performing multiply-add operations on data elements in the first and second packed data.
    Type: Grant
    Filed: June 30, 2003
    Date of Patent: July 1, 2008
    Assignee: Intel Corporation
    Inventors: Eric Debes, William W. Macy, Jonathan J. Tyler, Alexander D. Peleg, Millind Mittal, Larry M. Mennemeier, Benny Eitan, Carole Dulong, Eiichi Kowashi, Wolf Witt
  • Patent number: 7395299
    Abstract: An apparatus and method for efficiently calculating an intermediate value between a first end value such that the area and time required to implement this operation is minimized is described. The apparatus and method may be used to efficiently multiply a value by a fraction. A fraction is involved in calculating an intermediate value and also for multiplying by a fraction. When the denominator of the fraction is odd, the binary representation of the blending function, which is used to calculate an intermediate value, exhibits special characteristics. The special characteristics allow the present invention to, among others, avoid the use of multipliers, which require a large number of gates to implement. The method and apparatus described exploit this and other special characteristics in order to efficiently implement in hardware the blending function and to efficiently multiply a value by a fraction.
    Type: Grant
    Filed: June 23, 2003
    Date of Patent: July 1, 2008
    Assignee: Intel Corporation
    Inventors: Tom Altus, Jacob D. Doweck
  • Patent number: 7392275
    Abstract: A method and apparatus for including in a processor instructions for performing horizontal intra-add operations on packed data. One embodiment of the processor is coupled to a memory. The memory has stored therein at least a first packed data. The processor performs operations on data elements in the first packed data to generate a plurality of data elements in a second packed data in response to receiving an instruction. At least two of the plurality of data elements in the second packed data store the results of an intra-add operation, at least one of these results coming from the operation on data elements of the first packed data. One embodiment of a software method utilizes horizontal intra-add instructions for performing butterfly computations as may be employed, for example, in Walsh-Hadamard transforms or in Fast-Fourier Transforms.
    Type: Grant
    Filed: June 30, 2003
    Date of Patent: June 24, 2008
    Assignee: Intel Corporation
    Inventors: William W. Macy, Eric Debes, Minerva Yeung, Yen-Kuang Chen, Patrice Roussel
  • Patent number: 7315879
    Abstract: A multiply-accumulate module (100) includes a multiply-accumulate core (120), which includes a plurality of Booth encoder cells (104a). The multiply-accumulate core (120) also includes a plurality of Booth decoder cells (110a) connected to at least one of the Booth encoder cells (104a) and a plurality of Wallace tree cells (112a) connected to at least one of the Booth decoder cells (110a). Moreover, at least one first Wallace tree cell (112a1) or at least one first Booth decoder cell (110a1), or any combination thereof, includes a first plurality of transistors, and at least one second Wallace tree cell (112a2) or at least one second Booth decoder cell (110a2), or any combination thereof, includes a second plurality of transistors. In addition, at least one critical path of the multiply-accumulate module (100) includes the at least one first cell and a width of at least one of the first plurality of transistors is greater than a width of at least one of the second plurality of transistors.
    Type: Grant
    Filed: September 27, 2001
    Date of Patent: January 1, 2008
    Assignee: Texas Instruments Incorporated
    Inventors: Kaoru Awaka, Hiroshi Takahashi, Shigetoshi Muramatsu, Akihiro Takegama
  • Patent number: 7216139
    Abstract: In a programmable logic device having dedicated multiplier circuitry, some of the scan chain registers normally used for testing the device are located adjacent input registers of the multipliers. Those scan chain registers are ANDed with the input registers, and can be loaded with templates of ones and zeroes. This allows, e.g., subset multiplication if the least significant bits are loaded with zeroes and the remaining bits are loaded with ones. The multipliers preferably are arranged in blocks with other components, such as adders, that allow them to be configured as finite impulse response (FIR) filters. In such configurations, the scan chain registers can be used to load filter coefficients, avoiding the use of scarce logic and routing resources of the device.
    Type: Grant
    Filed: December 28, 2005
    Date of Patent: May 8, 2007
    Assignee: Altera Corporation
    Inventors: Martin Langhammer, Chiao Kai Hwang, Gregory Starr
  • Patent number: 7164290
    Abstract: The embodiments of the present invention relate to the general area of the Field Programmable Gate Arrays, and, in particular to the architecture and the structure of the building blocks of the Field Programmable Gate Arrays. The proposed logic units, as separate units or cluster of units, which are mainly comprised of look-up tables, multiplexers, and a latch, implement functions such as addition, subtraction, multiplication, and can perform as shift registers, finite state machines, multiplexers, accumulators, counters, multi-level random logic, and look-up tables, among other functions. Having two outputs, the embodiments of the logic unit can operate in split-mode and perform two separate logic and/or arithmetic functions at the same time. Clusters of the proposed logic units, which utilize local interconnections instead of traditional routing channels, add to efficiency, speed, and reduce required real estate.
    Type: Grant
    Filed: October 26, 2004
    Date of Patent: January 16, 2007
    Assignee: KLP International, Ltd.
    Inventor: Guy Schlacter
  • Patent number: 7111031
    Abstract: A data driven information processor circulates a data packet therein, while in accordance with a previously prepared data flow program the processor performs a plurality of types of operation including performing an arithmetic operation on data and accumulating a result of the arithmetic operation in an accumulation operation performed repeatedly. The accumulation operation is performed in the information processor only at a product-sum operation portion. While the operation is being performed, a data packet having stored therein data to be accumulated is not required to circulate round a loop formed of other components of the information processor. The accumulation operation can thus be performed fast.
    Type: Grant
    Filed: October 17, 2002
    Date of Patent: September 19, 2006
    Assignee: Sharp Kabushiki Kaisha
    Inventor: Takahiko Nakano
  • Patent number: 7085795
    Abstract: An apparatus and method for efficient filtering and convolution of content data are described. The method includes organizing, in response to executing a data shuffle instruction, a selected portion of data within a destination data storage device. The portion of data is organized according to an arrangement of coefficients within a coefficient data storage device. Once organized, a plurality of summed-product pairs are generated in response to executing a multiply-accumulate instruction. The plurality of product pairs are formed by multiplying data within the destination data storage device and coefficients within the coefficient data storage device. Once generated, adjacent summed-product pairs are added in response to executing an adjacent-add instruction. The adjacent summed-product pairs are added within the destination data storage device to form one or more data processing operation results.
    Type: Grant
    Filed: October 29, 2001
    Date of Patent: August 1, 2006
    Assignee: Intel Corporation
    Inventors: Eric Debes, William W. Macy, Minerva M. Yeung
  • Patent number: 7043519
    Abstract: In an SIMD sum of product arithmetic method of enabling a concurrent execution of 2n (where n is a natural number) parallel sum of product arithmetic (operations), the SIMD sum of product arithmetic is executed using 2m (m=0, . . . , log2 n) accumulators as one set, and by replacing a 2p?1th accumulator with an adjacent 2pth (p=1, . . . , n/2) accumulator, without changing a sequence of accumulator addresses, in the set, as accumulator addresses to be allocated to sum of product arithmetic circuits for the SIMD sum of product arithmetic.
    Type: Grant
    Filed: September 5, 2001
    Date of Patent: May 9, 2006
    Assignee: Fujitsu Limited
    Inventor: Masayuki Tsuji
  • Patent number: 7043517
    Abstract: A multiply accumulator performs a multiplication-and-addition operation for a first multiplier with N bits, a second multiplier with N bits, and an addend with M bits, wherein M is larger than 2N. The multiply accumulator includes a modified Booth encoder and a multiplication-and-addition unit. The modified Booth encoder performs a Booth encoding to either the first multiplier or its bit inversion by supplementing a multiplier sign bit behind a least significant bit of either the first multiplier or its bit inversion. The multiplication-and-addition unit includes a carry save adder tree and a sign extension adder and achieves a high speed of the multiplication-and-addition operation by simultaneously performing the multiplication and addition.
    Type: Grant
    Filed: March 7, 2003
    Date of Patent: May 9, 2006
    Assignee: Faraday Technology Corp.
    Inventor: Chi-jui Chung
  • Patent number: 7035890
    Abstract: An apparatus for multiplying and accumulating numeric quantities, including a multiplier for receiving the numeric quantities, with the multiplier having a sum output and a carry output. A first shift register has an input coupled to the sum output of the multiplier, and a second shift register has an input coupled to the carry output of the multiplier. An adder and third shift register are used to complete processing of the apparatus' arithmetic operations.
    Type: Grant
    Filed: March 1, 2001
    Date of Patent: April 25, 2006
    Assignee: 8x8, Inc
    Inventors: Jan Fandrianto, Chi Shin Wang, Sehat Sutardja, Hedley K. J. Rainnie, Bryan R. Martin
  • Patent number: 7024441
    Abstract: In particular, the present invention relates to a method and system for improving the efficiency of computational processes and specifically multiply and accumulate (“MAC”) processes such as the DCT (“Discrete Cosine Transform”) and/or IDCT (“Inverse Discrete Cosine Transform”) using a performance optimized method and associated hardware apparatus.
    Type: Grant
    Filed: October 3, 2001
    Date of Patent: April 4, 2006
    Assignee: Intel Corporation
    Inventors: Yan Hou, Hong Jiang, Kam Leung
  • Patent number: 6993550
    Abstract: The invention relates to a fixed point multiplying apparatus and method using an encoded multiplicand. The multiplicand is encoded into an independent binary system instead of a conventional binary system and each bit value of the encoded multiplicand is used as a control signal about an inputted multiplier in order to effectively execute a fixed point multiplication used in a transform algorithm such as the DCT (Discrete Cosine Transformation) in use for a multimedia codec. The multiplication is executed at a high speed with a simple structure and a small gate number.
    Type: Grant
    Filed: April 15, 2002
    Date of Patent: January 31, 2006
    Assignee: Electronics and Telecommunications Research Institute
    Inventor: Jin Wuk Seok
  • Patent number: 6965908
    Abstract: A scalable engine having multiple datapaths, each of which is a unique multi-function floating point pipeline capable of performing a four component dot product on data in a single pass through the datapath, which allows matrix transformations to be computed in an efficient manner, with a high data throughput and without substantially increasing the cost and amount of hardware required to implement the pipeline.
    Type: Grant
    Filed: March 15, 2001
    Date of Patent: November 15, 2005
    Assignee: Micron Technology, Inc.
    Inventor: Steven Shaw
  • Patent number: 6792442
    Abstract: An object of the present invention is to provide a multiply-accumulate unit with a rounding function which is capable of effecting 16-bit multiply-accumulate operations taking into account the position of an addend in a register. The multiply-accumulate unit with the rounding function has a selection inputting and expanding means 42 for expanding an addend from 31st-16th bits of 40-bit register 1 into 40-bit data and transmitting the 40-bit data to MAC (multiply-accumulate) unit 41 if control signal Position from an external source is “1”, and expanding an addend from 15th-0th bits of 40-bit register 1 into 40-bit data and transmitting the 40-bit data to MAC unit 41 if control signal Position is “0”. MAC unit 41 performs a multiply-accumulate operation on the 40-bit data, 16-bit data multiplicand B, and multiplier C.
    Type: Grant
    Filed: August 2, 2001
    Date of Patent: September 14, 2004
    Assignee: NEC Corporation
    Inventor: Takahiro Kumura
  • Patent number: 6772186
    Abstract: A multimedia processor is capable of concurrently carrying out processing tasks at different degrees of precision suitable for a variety of purposes and displays high performance of consecutively outputting a new cumulative result by adding or subtracting a result of multiplication to or from an existing cumulative result. To prevent the processing precision from deteriorating in applications where the processing precision is critical, critical processing precision is assured by multiplication of a signed number by an unsigned number. A partial product output by a multiplication and an existing cumulative result are supplied. The number of inputs is counted by a carry-save counter based on a 7-3 counter. A ripple adder is employed on the low-order-digit side where propagation of carry is completed early. On the other hand, a carry select/look-ahead adder is employed on the high-order-digit side to speed up the propagation of a carry.
    Type: Grant
    Filed: July 18, 2000
    Date of Patent: August 3, 2004
    Assignee: Renesas Technology Corp.
    Inventors: Motonobu Tonomura, Fumio Arakawa
  • Patent number: 6748516
    Abstract: Disclosed is a method, apparatus, and an instruction set architecture (ISA) for an application specific signal processor (ASSP) tailored to digital signal processing (DSP) applications. A single DSP instruction includes a pair of sub-instructions: a primary DSP sub-instruction and a shadow DSP sub-instruction. Both the primary and the shadow DSP sub-instructions are dyadic DSP instructions performing two operations in one instruction cycle. Each signal processing unit of the ASSP includes a primary stage to execute a primary DSP sub-instruction based upon current data and a shadow stage to simultaneously execute a shadow DSP sub-instruction based upon delayed data stored locally within registers of the signal processing units. The present invention efficiently executes DSP instructions by simultaneously executing primary DSP sub-instructions (based upon current data) and shadow DSP sub-instructions (based upon delayed locally stored data) with a single DSP instruction.
    Type: Grant
    Filed: January 29, 2002
    Date of Patent: June 8, 2004
    Assignee: Intel Corporation
    Inventors: Kumar Ganapathy, Ruban Kanapathipillai
  • Patent number: 6704761
    Abstract: A method is described for providing an improved multiplier/accumulator which utilizes less processing resources than such devices which are known in the prior art. The methodology operates to utilize the processing resources of a multiplier-accumulator combination on a cooperative basis, with the result that at least one adder stage in such a combination can be eliminated. The method includes the processing by the accumulator of certain terms that would otherwise be processed by the multiplier.
    Type: Grant
    Filed: August 5, 1997
    Date of Patent: March 9, 2004
    Assignee: Lucent Technologies Inc.
    Inventors: Hashem Farrokh, Kalavai J. Raghunath, Subramanian Naganathan
  • Patent number: 6701337
    Abstract: A floating-point calculator includes an exponent part calculator device which executes subtraction by sequentially combining exponents of a plurality of operands, and obtains subtraction result exponents of respective combinations to be used as alternatives for the number of digits for digit adjustment of fixed-point parts of the operands and carries of the subtraction, respectively; a maximum value selector device responsive to values of said carries to select one of said exponents of said operands having the maximum value; a digit adjustment object selector device responsive to values of the carries to select a fixed-point part of the operand to be adjusted in digit; and a digit adjustment number-of-digits selector device responsive to values of the carries to select the subtraction result exponent to be used as the number of digits for digit adjustment of the fixed-point part of the operand to be adjusted in digit.
    Type: Grant
    Filed: June 1, 2000
    Date of Patent: March 2, 2004
    Assignee: Kabushiki Kaisha Toshiba
    Inventor: Nobuhiro Ide
  • Patent number: 6692534
    Abstract: The present invention provides an apparatus for booth decoding which stores the most significant bit of the lower half of the number used as the key for booth decoding. By using this stored bit to determine the rightmost booth group corresponding to the upper half of the key, booth decoding may be accomplished more quickly using an apparatus that is simpler and smaller than prior art assemblies.
    Type: Grant
    Filed: September 8, 1999
    Date of Patent: February 17, 2004
    Assignee: Sun Microsystems, Inc.
    Inventors: Yong Wang, Allan Tzeng
  • Patent number: 6687810
    Abstract: A method and apparatus are disclosed for staggering execution of an instruction. According to one embodiment of the invention, a single macro instruction is received wherein the single macro instruction specifies at least two logical registers and wherein the two logical registers respectively store a first and second packed data operands having corresponding data elements. An operation specified by the single macro instruction is then performed independently on a first and second plurality of the corresponding data elements from said first and second packed data operands at different times using the same circuit to independently generate a first and second plurality of resulting data elements. The first and second plurality of resulting data elements are stored in a single logical register as a third packed data operand.
    Type: Grant
    Filed: June 6, 2002
    Date of Patent: February 3, 2004
    Assignee: Intel Corporation
    Inventors: Patrice Roussel, Glenn J. Hinton, Shreekant S. Thakkar, Brent R. Boswell, Karol F. Menezes