Binary Patents (Class 708/625)
  • Publication number: 20040128336
    Abstract: A multiplier for multiplying a first signal representing a first binary number A=[aN−1 . . . a1 a0] and a second signal representing a second binary number B=[bN−1 . . . b1 b0]. The multiplier includes a first port for receiving the first signal, and a second port for receiving the second signal. A first circuit generates a triangle array as a function of the first signal and the second signal. An adder may add elements of the triangle array to produce a third signal representing a product of the first signal and the second signal.
    Type: Application
    Filed: October 9, 2003
    Publication date: July 1, 2004
    Inventor: Clemens M. Zierhofer
  • Publication number: 20040107233
    Abstract: The present invention relates to a finite field multiplier used for implementing an encrypting algorithm circuit, thereby minimizing power consumption and circuit area in implementing the finite field multiplier with a LFSR (Linear Feedback Shift Register) structure. The Finite field multiplier of the present invention is an operator performing a modular operation on the multiplication result of two data represented on a polynomial basis in a Galois Field into an irreducible polynomial. The LFSR structure is a serial finite field multiplication structure, and has a merit over an array structure and a hybrid structure in application to systems that are limited in size and power due to its simplicity of circuits and also its capability of being implemented in a small size.
    Type: Application
    Filed: October 10, 2003
    Publication date: June 3, 2004
    Inventors: Won Jong Kim, Seung Chul Kim, Han Jin Cho, Kwang Youb Lee
  • Patent number: 6745319
    Abstract: A data processing system is provided with a digital signal processor (DSP) which has a shuffle instruction for shuffling a source operand (600) and storing the shuffled result in a selected destination register (610). A shuffled result is formed by interleaving bits from a first source operand portion with bits from a second operand portion. A de-interleave and pack (DEAL) instruction is provided for de-interleaving a source operand. The shuffle instruction and the DEAL instruction have an exactly inverse effect. The DSP includes swizzle circuitry that performs interleaving or de-interleaving in a single execution phase.
    Type: Grant
    Filed: October 31, 2000
    Date of Patent: June 1, 2004
    Assignee: Texas Instruments Incorporated
    Inventors: Keith Balmer, David Hoyle, Lewis Nardini
  • Patent number: 6742012
    Abstract: The present invention provides an apparatus and method for processing data using a multiplying circuit for performing a multiplication of a W/2 bit data value by a W bit data value. An instruction decoder is provided which is responsive to a multiply instruction to control the multiplying circuit to generate a multiplication result for the computation M×N, where M and N are W bit data words. The multiplying circuit is arranged to execute a first operation in the which the data word N is multiplied by the most significant W/2 bits of the data word M to generate a first intermediate result having 3W/2 bits, and to then execute a second operation in which the data word N is multiplied by the least significant W/2 bits of the data word M to generate a second intermediate result having 3W/2 bits. The first intermediate result is shifted by W/2 with respect to the second intermediate result and added to the second intermediate result to generate the multiplication result.
    Type: Grant
    Filed: December 27, 2000
    Date of Patent: May 25, 2004
    Assignee: Arm Limited
    Inventor: Alexander Edward Nancekievill
  • Patent number: 6742011
    Abstract: The present invention generally relates to an apparatus and method for efficiently summing the partial product bits produced by a multiplier. Briefly described, in architecture, the apparatus includes a first array of odd/even summation circuitry, a second array of odd/even summation circuitry, and a linear array of adders. The apparatus is configured to add a row of partial product bits produced by a multiplier in multiplying a first operand with a second operand. The first array of odd/even summation circuitry produces a first summation of a portion of the partial product bits. The second array of odd/even circuitry produces a second summation of the other partial product bits. The linear array of adders then adds the first summation and the second summation to produce a carry save representation of a product bit (i.e., a bit of the product produced by multiplying the first operand by the second operand).
    Type: Grant
    Filed: February 15, 2000
    Date of Patent: May 25, 2004
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Glenn T Colon-Bonet, Stephen L Bass, Thomas J. Sullivan
  • Patent number: 6728744
    Abstract: A multiplier for computing a final product of a first operand and a second operand comprising a multiplier array for forming a product of the first operand and second operand in carry-save form; a carry-save adder for adding said carry-save partial products and an accumulatd sum to produce a carry and save values; a carry-lookahead adder for adding said carry and save values to produce a product value and a carry-out value; a general purpose adder for adding said carry-out and said product value to produce said final product.
    Type: Grant
    Filed: January 2, 2001
    Date of Patent: April 27, 2004
    Assignee: Mosaid Technologies Incorporated
    Inventor: Maher Amer
  • Publication number: 20040059771
    Abstract: A system, method, and computer product for high-speed multiplication of binary numbers. A multiplier X is first encoded, and the encoded multiplier is then used in a multiplication process that yields the product. The encoding is performed in a manner that allows the actual multiplication process to proceed quickly. X is copied into a variable Z. Z is then manipulated to form the coded version of the multiplier. The bits of the multiplier X are read two at a time, starting with the least significant two bits. If the bit pair Xi+1Xi is equal to 11, then 1 is added to Zi+2. The process continues for successive non-overlapping pairs of bits, until the most significant three bits of X are reached. These last three bits are encoded using a table look-up process.
    Type: Application
    Filed: September 25, 2002
    Publication date: March 25, 2004
    Applicant: Broadcom Corporation
    Inventor: Minsheng Wang
  • Patent number: 6711602
    Abstract: An embodiment of the invention includes a pair of parallel 16×16 multipliers each with two 32-bit inputs and one 32-bit output. There are options to allow input halfword and byte selection for four independent 8×8 or two independent 16×16 multiplications, real and imaginary parts of comple×multiplication, pairs of partial sums for 32×32 multiplication, and partial sums for 16×32 multiplication. There are options to allow internal hardwired routing of each multiplier unit results to achieve partial-sum shifting as required to support above options. There is a redundant digit arithmetic adder before final outputs to support additions for partial sum accumulation, complex multiplication vector accumulation and general accumulation for FIRs/IIRs—giving MAC unit functionality. There are options controlled using bit fields in a control register passed to the multiplier unit as an operand.
    Type: Grant
    Filed: October 31, 2000
    Date of Patent: March 23, 2004
    Assignee: Texas Instruments Incorporated
    Inventors: Amarjit Singh Bhandal, Keith Balmer, David Hoyle, Karl M. Guttag, Zahid Hussain
  • Patent number: 6708193
    Abstract: A system and method are disclosed which provide a multiplier comprising a linear summation array that is implemented in a manner that enables both signed and unsigned multiplication to be performed. A preferred embodiment utilizes a modified Baugh-Wooley algorithm to enable an optimum even-and-odd linear summation array for performing both signed and unsigned high speed multiplication. That is, a preferred embodiment enables a linear summation array that is smaller in size and simpler in design than the multiplier arrays typically implemented for signed multiplication in the prior art. The modified Baugh-Wooley algorithm of a preferred embodiment translates a signed operand to an unsigned operand to greatly simplify the sign extension for multiplication, and to enable a relatively small multiplier array that does not include sign extension columns to be utilized for performing signed multiplication.
    Type: Grant
    Filed: February 21, 2000
    Date of Patent: March 16, 2004
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventor: Richard B Zeng
  • Publication number: 20040049529
    Abstract: A partial product generator and a multiplier are configured to provide increased operation speed. First encoder Ej1 generates control code A1 and control code A2 that determine the fold (1-fold or 2-fold) of the partial product with respect to the multiplicand corresponding to bit Y2j and bit Y2j−1 of the multiplier. Second encoder Ej2 generates control code/ZDT that determines whether the partial product has value “0” corresponding to bit Y2j and Y2j+1 of the multiplier and second control code A2. Third encoder Ej3 generates control code Sgn and control code/Sgn that determine the sign of the partial product corresponding to bit Y2j+1 of the multiplier and bit inversion signal AsX. Since control code/ZDT with a longer generation time is treated in the latter section circuit of bit circuit Pji, it is possible to realize high speed for the process.
    Type: Application
    Filed: June 10, 2003
    Publication date: March 11, 2004
    Inventors: Kaoru Awaka, Yutaka Toyonoh, Hideyuki Fukuhara
  • Patent number: 6704762
    Abstract: In a case of performing a multiplication operation with low accuracy, a value of the most significant bit included in the least significant half the bits of a multiplier is replaced with “0”. A Booth decoder divides the multiplier into a plurality of partial bit rows. A plurality of partial product generating circuits, each of which is arranged corresponding to corresponding one of the partial bit rows divided by the Booth decoder, each generates a partial product of a multiplicand and each corresponding one of the partial bit rows. In the case of performing the multiplication operation with low accuracy, the partial product generating circuits generating the partial products corresponding to the partial bit row of the least significant half the bits, generate partial products of each corresponding bit row and the least significant half the bits of the multiplicand, and generate partial products of each corresponding bit row and the most significant half the bits of the multiplicand.
    Type: Grant
    Filed: August 30, 1999
    Date of Patent: March 9, 2004
    Assignee: NEC Corporation
    Inventor: Toshiaki Inoue
  • Patent number: 6693455
    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: February 26, 2003
    Date of Patent: February 17, 2004
    Assignee: Altera Corporations
    Inventors: Martin Langhammer, Chiao Kai Hwang, Gregory Starr
  • 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
  • Patent number: 6687726
    Abstract: Particularly with relatively complex multiplication devices with a downstream shift device, such as those which occur in video compression devices, the apparatus is used to save chip area and to increase the processing speed. The multiplier is split into a factor element and a shift element, and the shift element is also taken into account in the downstream shift unit.
    Type: Grant
    Filed: June 19, 2000
    Date of Patent: February 3, 2004
    Assignee: Infineon Technologies AG
    Inventor: Claus Schneider
  • Patent number: 6684236
    Abstract: A system of and method for extended Booth encoding of two binary numbers, K and L. A stage of the encoder receives K[2n+1], K[2n], L[2n+1], and C[n−1], N−1≧n≧0, with N being the length of L, and it being assumed L[2n]=0, and forms C[n], S[n], M1[n], and M2[n] according to the following equations: C[n]=K[2n+1]|L[2n+1], S[n]=K[2n+1]{circumflex over ( )}L[2n+1], M1[n]=K[2n]{circumflex over ( )}C[n−1], M2[n]=(S[n]&/K[2n]&/C[n−1])|(/S[n]&K[2n]&C[n−1]), where | refers to the logical OR function, {circumflex over ( )} to the exclusive OR function, & to the logical AND function, and/to the logical inversion function.
    Type: Grant
    Filed: February 15, 2000
    Date of Patent: January 27, 2004
    Assignee: Conexant Systems, Inc.
    Inventor: William A. Farnbach
  • Publication number: 20040010536
    Abstract: A two's complement multiplier is combined with additional circuit elements to provide a multiplier capable of multiplication of two operands represented in any combination of either two's complement (signed) or unsigned magnitude formats, without increasing the size of the multiplier compared a multiplier for both operands represented in the same format; achieving the additional capability by providing independent inversion control to the partial product elements in the left column and the bottom row of the multiplier array, and controlling the generation of the carry-in signal to the carry propagate adder that performs the final addition of the partial products.
    Type: Application
    Filed: July 11, 2002
    Publication date: January 15, 2004
    Applicant: International Business Machines Corporation
    Inventors: Jaime H. Moreno, Uzi Shvadron, Ayal Zaks, Victor V. Zyuban
  • Publication number: 20030212729
    Abstract: Modular multiplication of two elements X(t) and Y(t), over GF(2), where m is a field degree, may utilize field degree to determine, at least in part, the number of iterations. An extra shift operation may be employed when the number of iterations is reduced. Modular multiplication of two elements X(t) and Y(t), over GF(2), may include a shared reduction circuit utilized during multiplication and reduction. In addition, a modular multiplication of binary polynomials X(t) and Y(t), over GF(2), may utilize the Karatsuba algorithm, e.g., by recursively splitting up a multiplication into smaller operands determined according to the Karatsuba algorithm.
    Type: Application
    Filed: March 11, 2003
    Publication date: November 13, 2003
    Applicant: Sun Microsystems, Inc.
    Inventors: Hans Eberle, Nils Gura, Russell A. Brown, Sheueling Chang-Shantz, Vipul Gupta
  • Publication number: 20030208519
    Abstract: In the multiplier, a partial product circuit generates a partial product based on a multiplicand operand and outputs of a Booth recoder circuit, which operates on a multiplier operand. The partial product circuit ANDs the multiplicand with a zero Booth recoded output, which indicates whether to zero out the multiplicand. An enable circuit selectively enables the multiplier circuit, and more particularly, disables the multiplier circuit by making the zero Booth recoded output indicate to zero out the multiplicand.
    Type: Application
    Filed: May 6, 2002
    Publication date: November 6, 2003
    Inventors: David Garrett, Geoff Knagge, Christopher J. Nicol
  • Publication number: 20030195914
    Abstract: A method for reducing computational steps in a digital processor including multiplications producing a plurality of multiplication products. This method specifies a desired multiplication function to be implemented in a digital processor, the desired multiplication function having a respective set of initial coefficients corresponding to each digital multiplier stage of the multiplication function. An initial total number of non-zero bits of the initial coefficients is determined and the initial coefficients are modified. Further, a resulting number of non-zero bits in the modified set of coefficients is quantified. Finally, the modified set of coefficients that result in a reduced number of non-zero bits as compared to the initial coefficients is chosen. The new modified coefficients are implemented in the device by constructing the digital multiplier stages with the modified coefficients.
    Type: Application
    Filed: April 12, 2002
    Publication date: October 16, 2003
    Inventors: J. William Whikehart, Christopher John Hagan
  • Publication number: 20030182343
    Abstract: Fast multiplication of two operands may be achieved by an interstitial product generator that generates an interstitial product from each of a plurality of mult-ibit segments of a multiplier. Generation of a final product is made faster because fewer interstitial products are created than in prior systems and, therefore, summing of the interstitial products is faster. In one embodiment, an interstitial product generator is used having registers to store a multiplicand value (“A”), shifted values of A and a 3A value. A series of multiplexers and an inverter may generate interstitial product values from data in these registers. This embodiment is useful with four bit segments of the multiplicand.
    Type: Application
    Filed: May 8, 2002
    Publication date: September 25, 2003
    Inventor: Erik Hojsted
  • Publication number: 20030163503
    Abstract: A multiplier (42) forms a product from two signed operands without performing a sign extension of the multiplicand (A). A modified Booth's recoding of the multiplier operand (B) is begun immediately without being delayed by a sign extension operation. While recoding and partial product generation is occurring, a determination is made in parallel whether or not a sign extension adjustment term must be created. When needed, a value equal to N (−B) (2N), where N is equal to a bit width of the multiplicand (A), is formed in parallel with the recoding and partial product generation. The sign extension adjustment term is coupled to a plurality of carry save adders (49, 51, 53) that compress a plurality of partial products to a sum term and a carry term. A final add stage combines the sum term and carry term to provide a product with correct sign extension.
    Type: Application
    Filed: February 22, 2002
    Publication date: August 28, 2003
    Inventor: Trinh Huy Nguyen
  • Patent number: 6598064
    Abstract: A multiplier circuit for use in a data processor. The multiplier circuit contains a partial products generating circuit that receives a multiplicand value and a multiplier value and generates a group of partial products. The multiplier circuit also contains a split array for adding the partial products. A first summation array has a first group of adders that sum the even partial products to produce an even summation value. A second summation array has a second group of adders that sum the odd partial products to produce an odd summation value. The even and odd summation values are then summed to produce the output of the multiplier.
    Type: Grant
    Filed: January 4, 2000
    Date of Patent: July 22, 2003
    Assignee: National Semiconductor Corporation
    Inventor: Daniel W. Green
  • Patent number: 6591357
    Abstract: A method and an apparatus for configuring arbitrary sized data paths comprising multiple context processing elements (MCPEs) are provided. Multiple MCPEs may be chained to form wider-word data paths of arbitrary widths, wherein a first ALU serves as the most significant byte (MSB) of the data path while a second ALU serves as the least significant byte (LSB) of the data path. The ALUs of the data path are coupled using a left-going, or forward, carry chain for transmitting at least one carry bit from the LSB ALU to the MSB ALU. The MSB ALU comprises configurable logic for generating at least one signal in response to a carry bit received over the left-going carry chain, the at least one signal comprising a saturation signal and a saturation value. The MCPEs of the data path use configurable logic to manipulate a resident bit sequence in response to the saturation signal transmitted thereby reconfiguring, or changing the operation of, the data path in response to he saturation signal.
    Type: Grant
    Filed: February 26, 2001
    Date of Patent: July 8, 2003
    Assignee: Broadcom Corporation
    Inventor: Ethan A. Mirsky
  • Publication number: 20030105793
    Abstract: This invention is a data processing apparatus which operates on instruction controlling plural processor actions. Each instruction includes a data unit section and a data transfer section. These instruction sections are independent and may include differing options. In the preferred embodiment, each instruction is 64 bits. The data unit section includes a data operation field that indicates the type of arithmetic logic unit operation and six operand fields. The six operand fields include four source data register fields and two destination register fields. The data unit (110) includes a multiplication unit (220) and an arithmetic logic unit (230). The data unit (110) may include a barrel rotator (235) for one input of the arithmetic logic unit (230). The rotated data may be stored in the first destination register instead of the multiply result. The address unit (120) operations according to the data transfer operation field. This could be a load, a store or a register to register move.
    Type: Application
    Filed: April 9, 2002
    Publication date: June 5, 2003
    Inventors: Karl M. Guttag, Christopher J. Read, Keith Balmer
  • Publication number: 20030105792
    Abstract: A high speed scalable multiplier. The high speed scalable multiplier can include a folding multiplier configured to fold multiplicands and multipliers where individual ones of the multiplicands and multipliers exceed a folding threshold. The folding multiplier also can compute a product of the multiplicands and multipliers based on less than all bits forming the multiplicands and multipliers. The high speed scalable multiplier also can include a conventional multiplier and at least one additional folding multiplier, each of the multipliers being individually, selectably activatable.
    Type: Application
    Filed: December 4, 2001
    Publication date: June 5, 2003
    Inventor: Ravi Shankar
  • Patent number: 6556044
    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: September 18, 2001
    Date of Patent: April 29, 2003
    Assignee: Altera Corporation
    Inventors: Martin Langhammer, Chiao Kai Hwang, Gregory Starr
  • Publication number: 20030065699
    Abstract: A method and architecture with which to achieve efficient sub-word parallelism for multiplication resources is presented. In a preferred embodiment, a dual two's complement multiplier is presented, such that an n bit operand B can be split, and each portion of the operand B multiplied with another operand A in parallel. The intermediate products are combined in an adder with a compensation vector to correct any false negative sign on the two's complement sub-product from the multiplier handling the least significant, or lower, p bits of the split operand B, or B[p-1:0], where p=n/2. The compensation vector C is derived from the A and B operands using a simple circuit.
    Type: Application
    Filed: October 1, 2001
    Publication date: April 3, 2003
    Applicant: KONINKLIJKE PHILIPS ELECTRONICS N.V.
    Inventor: Geoffrey Burns
  • Patent number: 6538470
    Abstract: A programmable logic integrated circuit device (“PLD”) includes programmable logic and a dedicated (i.e., at least partly hard-wired) digital signal processing region for performing or at least helping to perform digital signal processing tasks that are unduly inefficient to implement in the more general-purpose programmable logic and/or that, if implemented in the programmable logic, would operate unacceptably or at least undesirably slowly. The digital signal processing region may include multiple digital signal processing stages. The digital signal processing region may include a multiplier stage and one ore more stages that can operate in combination with the multiplier stage. The digital signal processing region has a plurality of modes such as for providing multiply-and-accumulate operation, multiply-and-add operation, etc.
    Type: Grant
    Filed: September 18, 2001
    Date of Patent: March 25, 2003
    Assignee: Altera Corporation
    Inventors: Martin Langhammer, Gregory Starr, Chiao Kai Hwang
  • Patent number: 6523055
    Abstract: A multiplication accumulation circuit (abbreviated as “MAC”) has five input buses that carry signals for operands A, B, C, D and E, a control bus that carries signals for controlling the operations performed on the received operands, and an output bus that carries a signal generated by the MAC. Each of operands A, B, C and D can be four different operands that are used as follows by the MAC: (1) to perform two multiplications simultaneously, and (2) to perform an addition of the products of the two multiplications and the fifth operand E, e.g. generate on the output bus a signal of value A*C+B*D+E. Alternatively, operands A and B can be, respectively, the upper and lower halves of a first double word to be used as a multiplicand. Similarly, operands C and D can be the upper and lower halves of a second double word to be used as a multiplier.
    Type: Grant
    Filed: January 20, 1999
    Date of Patent: February 18, 2003
    Assignee: LSI Logic Corporation
    Inventors: Robert K. Yu, Satish Padmanabhan, Chakra R. Srivatsa, Shailesh I. Shah
  • Publication number: 20030028575
    Abstract: A circuit and method for deriving an adder output bit from adder input bits, a multiplier circuit, a method of multiplying, a microprocessor and digital signal processor (DSP) employing the circuit or the method and a method of selecting weights and thresholds for logic gates. In one embodiment, the circuit includes: (1) first, second and third logic gates that generate intermediate bits based on threshold comparisons of concatenations of ones of the adder input bits and (2) combinatorial logic that generates the adder output bit from the intermediate bits. In one embodiment, the multiplier includes a summer having at least two inputs with corresponding weights, the inputs corresponding to bits of a multiplicand, the weights based on a multiplier, the summer generating a weighted sum of the multiplicand that represents a multiplication of the multiplicand and the multiplier that is a function of the weighted sum.
    Type: Application
    Filed: August 15, 2002
    Publication date: February 6, 2003
    Applicant: RN2R, L.L.C.
    Inventor: Valeriu Beiu
  • Patent number: 6516334
    Abstract: In the circuit arrangement, combinatorial blocks are arranged between an input register (RG1) and an output register (RG2). The output of the input register (before the combinatorial blocks (KBL)) is connected to an analysis unit (ANA) that analyzes the value (EW) of the output of the input register (RG1) and send an enable signal (EN) to the output register (RG2) (after the combinatorial blocks) when the output value (AW) of the combinatorial blocks (KBL) must be present after the value (EW) of the output of the input register (RG1). The transit time required for an operation in the circuit arrangement can thus be shortened given certain value combinations.
    Type: Grant
    Filed: September 19, 1997
    Date of Patent: February 4, 2003
    Assignee: Siemens Aktiengesellschaft
    Inventor: Wolfgang Ecker
  • Publication number: 20030009503
    Abstract: An integrated cryptographic system (24) executes a mathematical algorithm that computes equations for public-key cryptography. An arithmetic processor (22) receives data values stored in a temporary storage memory (14) and computes both the Rivest-Shamir-Adleman (RSA) and Elliptic Curve Cryptography (ECC) algorithms. Multiplication cells (270 and 280) have an INT/POLY terminal that selects a C-register (246) for computing RSA modular exponentiation or ECC elliptic curve point multiplication.
    Type: Application
    Filed: March 25, 2002
    Publication date: January 9, 2003
    Inventors: Philipp Michael Glaser, Michael J. Torla
  • Publication number: 20030009504
    Abstract: A circuit and method for deriving an adder output bit from adder input bits, a multiplier circuit, a method of multiplying, a microprocessor and digital signal processor (DSP) employing the circuit or the method and a method of selecting weights and thresholds for logic gates. In one embodiment, the circuit includes: (1) first, second and third logic gates that generate intermediate bits based on threshold comparisons of concatenations of ones of the adder input bits and (2) combinatorial logic that generates the adder output bit from the intermediate bits. In one embodiment, the multiplier includes a summer having at least two inputs with corresponding weights, the inputs corresponding to bits of a multiplicand, the weights based on a multiplier, the summer generating a weighted sum of the multiplicand that represents a multiplication of the multiplicand and the multiplier that is a function of the weighted sum.
    Type: Application
    Filed: August 2, 2002
    Publication date: January 9, 2003
    Applicant: RN2R, L.L.C.
    Inventor: Valeriu Beiu
  • Patent number: 6484193
    Abstract: A fully pipelined parallel multiplier with a fast clock cycle. The pipelined parallel multiplier contains three units: a bit-product matrix unit, a reduction unit, and an addition unit. The bit-product matrix is configured to receive two binary numbers, a multiplier and a multiplicand. A bit-product matrix is formed based on these two numbers. The bit-product matrix unit forms a first pipeline stage. The bit-product matrix is latched to the reduction unit using d-type latch circuits. The reduction unit includes a plurality of reduction stages, with each reduction stage acting as a pipeline stage. The reduction unit reduces the matrix down to a two-row matrix. Intermediate results are latched from one stage to the next using d-type latch circuits. The reduction unit also contains a plurality of half-adder and full-adder circuits. The final two-row matrix formed by the reduction unit is then latched to an addition unit.
    Type: Grant
    Filed: July 30, 1999
    Date of Patent: November 19, 2002
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Gwangwoo Johnny Choe, James R. MacDonald
  • Patent number: 6483343
    Abstract: A plurality of configurable computational units are embedded in a programmable device, such as a field programmable gate array. Each configurable computational unit includes an adder circuit that is switchably coupled to a multiplier circuit and an accumulator circuit. The configurable computational unit may be configured permanently or on-the-fly to perform desired arithmetic type functions efficiently and effectively. For example, the computational unit may be configured for digital signal processing functions, filtering functions, and algorithm functions. The computational units may be cascaded by programmably connecting the computational units together, e.g., through the routing resources of the programmable device.
    Type: Grant
    Filed: December 29, 2000
    Date of Patent: November 19, 2002
    Assignee: QuickLogic Corporation
    Inventors: Brian C. Faith, Thomas Oelsner, Gary N. Lai
  • Patent number: 6484194
    Abstract: This application describes a method of multiplying numbers represented in multiple-word chains. The multiplication scheme allows for the multiplication of both signed and unsigned numbers of varying lengths. The multiplier block 30 executes a 17-bit by 17-bit two's complement multiply and multiply-accumulate in a single instruction cycle. A 4-bit shift value register with a 4 to 16 bit decoder 35 allows the multiplier to do a 1-16 bit barrel shift on either a 16-bit operand or an (N×16)-bit chain operand.
    Type: Grant
    Filed: June 17, 1999
    Date of Patent: November 19, 2002
    Assignee: Texas Instruments Incorporated
    Inventors: Alva Henderson, Francesco Cavaliere
  • Patent number: 6460065
    Abstract: A circuit for shifting the number of partial product bits per column in an adder tree is provided. A partial product bit is generated having a weight 22k that has a 1 value only if one input bit of weight 2(k−1) has a 0 value while another input bit of weight 2k has a 1 value. Another more significant partial product bit of weight 2(2k+1) receives the same input bits and has a 1 value only if both of the input bits have a 1 value. In this manner, the number of partial product bits in the column of weight 22k is decreased by 1 while the number of bits is the column of weight 2(2k+1) is increased by 1. Therefore, if the column of weight 22k had the greatest number of partial product bits of all columns, and if the column of weight 2(2k+1) had at least two fewer bits than the column of weight 22k, the total maximum number of bits for all the columns is reduced by 1.
    Type: Grant
    Filed: September 22, 1998
    Date of Patent: October 1, 2002
    Assignee: ATI International SRL
    Inventor: Stephen C. Purcell
  • Publication number: 20020138538
    Abstract: A multiplication logic circuit comprises array generation logic and array reduction logic. The array reduction logic comprises array reduction logic for a first level of array reduction which comprises maximal length parallel counters for reducing maximal length columns. The output of the maximal length parallel counters are then further reduced by a second level of reduction logic comprising logic circuits with asymmetric delays in order to compensate for the differential delays experienced by the outputs of the maximal length parallel counters.
    Type: Application
    Filed: July 3, 2001
    Publication date: September 26, 2002
    Inventors: Sunil Talwar, Dmitriy Rumynin
  • Publication number: 20020116434
    Abstract: The present invention provides an apparatus and method for processing data using a multiplying circuit for performing a multiplication of a W/2 bit data value by a W bit data value. An instruction decoder is provided which is responsive to a multiply instruction to control the multiplying circuit to generate a multiplication result for the computation M×N, where M and N are W bit data words. The multiplying circuit is arranged to execute a first operation in the which the data word N is multiplied by the most significant W/2 bits of the data word M to generate a first intermediate result having 3W/2 bits, and to then execute a second operation in which the data word N is multiplied by the least significant W/2 bits of the data word M to generate a second intermediate result having 3W/2 bits. The first intermediate result is shifted by W/2 with respect to the second intermediate result and added to the second intermediate result to generate the multiplication result.
    Type: Application
    Filed: December 27, 2000
    Publication date: August 22, 2002
    Inventor: Alexander Edward Nancekievill
  • Patent number: 6438570
    Abstract: A bit-serial multiplier and an infinite impulse response filter implemented therewith, both implemented on an FPGA, are described in various embodiments. The bit-serial multiplier includes function generators configured as a multiplicand memory, a multiplier memory, a product memory, a bit-serial multiplier, and a bit-serial adder. The function generators are arranged to perform bit-serial multiplication of values in the multiplier and multiplicand memories.
    Type: Grant
    Filed: July 21, 1999
    Date of Patent: August 20, 2002
    Assignee: Xilinx, Inc.
    Inventor: Andrew J. Miller
  • Patent number: 6434584
    Abstract: Specialized microprocessor hardware 10 and a specialized instruction set that provides efficient data processing operations on long word length or bit length data. Instructions that manipulate data include a reserved bit-switch (in the form of a two bit field) whose status (A0) causes the instruction to be executed once to operate on a single word of data, or whose status (A0S) causes the instruction to be repeatedly executed as the instruction operates on a chain or list of sequential data, for example a data chain including N 16-bit words of data, wherein N is an integer. Every instruction word that manipulates data has a reserved bit switch that will cause the instruction to be executed either once operating on single word data or as a repeated execution of the same instruction operating on a chain or list of sequential data (n words).
    Type: Grant
    Filed: June 17, 1999
    Date of Patent: August 13, 2002
    Assignee: Texas Instruments Incorporated
    Inventors: Alva Henderson, Francesco Cavaliere
  • Patent number: 6434586
    Abstract: A multiplier including a processor that generates at least one N by M array of partial products. The processor includes a first section that performs a first operation that generates an N by M array of partial products representing low order bits, and a second section that performs a second operation that generates an N by M array of partial products representing high order bits. The multiplier also includes a compressor that compresses the N by M array of partial products representing low order bits after the first operation and generates a plurality of carry bits that are utilized in the second operation.
    Type: Grant
    Filed: January 29, 1999
    Date of Patent: August 13, 2002
    Assignee: Compaq Computer Corporation
    Inventors: David Albert Carlson, Derek Scott Brasili, Vishnu V. Yalala
  • Publication number: 20020099751
    Abstract: An energy saving multiplication device and its method is disclosed. The multiplication device comprises a dynamic range determination unit, a Booth encoding/decoding unit and a counter array. The dynamic range determination unit determines dynamic ranges of the numerical values to be multiplied together and outputs after processing according to the dynamic-range size relation of the input data. The Booth encoding/decoding unit couples to the dynamic range determination unit. The counter array couples to the Booth encoding/decoding unit for accumulating the partial products to obtain the products of the input data.
    Type: Application
    Filed: May 22, 2001
    Publication date: July 25, 2002
    Applicant: INDUSTRIAL TECHNOLOGY RESEARCH INSTITUTE
    Inventors: Oscal T.-C. Chen, Kuo-Hua Chen, Ruey-Liang Ma
  • Patent number: 6421699
    Abstract: A method and system is provided which overlaps the process of partial product reduction and the final adder in both higher- and lower-order bits when performing multiplication. The method and system reduces the number of left-over bits such that the final addition on these bits requires fewer logic stages to complete its process thereby reducing the propagation delay.
    Type: Grant
    Filed: March 19, 1999
    Date of Patent: July 16, 2002
    Assignee: International Business Machines Corporation
    Inventors: Sang Hoo Dhong, Perng Shyong Lin, Joel Abraham Silberman
  • Patent number: 6397241
    Abstract: An integrated cryptographic system (24) executes a mathematical algorithm that computes equations for public-key cryptography. An arithmetic processor (22) receives data values stored in a temporary storage memory (14) and computes both the Rivest-Shamir-Adleman (RSA) and Elliptic Curve Cryptography (ECC) algorithms. Multiplication cells (270 and 280) have an INT/POLY terminal that selects a C-register (246) for computing RSA modular exponentiation or ECC elliptic curve point multiplication.
    Type: Grant
    Filed: December 18, 1998
    Date of Patent: May 28, 2002
    Assignee: Motorola, Inc.
    Inventors: Philipp Michael Glaser, Michael J. Torla
  • Patent number: 6370559
    Abstract: A method and apparatus for performing N bit by 2*N (or 2*N−1) bit signed multiplication using two N bit multiply instructions. According to one aspect of the invention, a method for performing signed multiplication of A times B (where B has N bits and A has N*2 bits) is described. In this method, Ahigh and Alow respectively represent the most and least significant halves of A. According to this method, Alow is logically shifted right by one bit to generate Alow>>1. Then, Alow>>1 is multiplied by B using signed multiplication to generate a first partial result. In addition, a second partial result is generated by performing signed multiplication of Ahigh times B. One or both of the first and second partial results is shifted to align the first and second partial results for addition, and then the addition is performed to generate a final result representing A multiplied by B.
    Type: Grant
    Filed: July 13, 1999
    Date of Patent: April 9, 2002
    Assignee: Intel Corportion
    Inventor: Nathaniel Hoffman
  • Publication number: 20020032713
    Abstract: This invention purposes a reduced-width low-error multiplier that can be used in the DSP (Digital Signal Processing) approach of digital communication system. We derive a binary compensation vector to compensate the error caused by the reduction of area without any hardware overhead. We also implement the compensation structure in Array and Booth multiplier to reduce hardware complexity.
    Type: Application
    Filed: May 22, 2001
    Publication date: March 14, 2002
    Inventors: Shyh-Jye Jou, Hui-Hsuan Wang
  • Patent number: 6347326
    Abstract: The operands of an N×M bit multiplication are partitioned into N/j+1 and M/k+1 bit signed submultiples. The most significant submultiple is assigned the sign of the operand, while each of the less significant submultiples is assigned a positive sign. The product of each submultiple pair is sign extended to the width of the product (N+M), and the accumulation of these sign extended submultiple products provides the product of the original twos complement operands, in twos complement form.
    Type: Grant
    Filed: March 2, 1999
    Date of Patent: February 12, 2002
    Assignee: Philips Electronics North America Corporation
    Inventors: Rune Hartung Jensen, Hans Albert Spanjaart, Hans Adrianus Bouwmeester, Kenneth David Currie
  • Patent number: 6330631
    Abstract: A bus bridge for a computer system for bridging first and second buses includes a shift and accumulate unit. The shift and accumulate unit includes a shifter having an input connected to receive bytes from one of the first and second buses and an output providing a selectable shift to the received bytes. The shift and accumulate unit also includes an accumulator having an input connected to receive the output of the shifter and providing accumulation of selectable bits of the shifted bytes, the accumulator having an output for supplying realigned bytes to be passed to the other of the first and second buses. The combination of the shifter and the accumulator permits a desired amount of shift to be combined with the accumulation of selected bits or bytes to realign sets of bytes from one bus and to form sets of bytes for the other bus. Burst transfer is also possible by operating the shift and accumulate unit to operate in successive cycles for successive sets of input bytes from one of the buses.
    Type: Grant
    Filed: February 3, 1999
    Date of Patent: December 11, 2001
    Assignee: Sun Microsystems, Inc.
    Inventor: Andrew Crosland
  • Patent number: RE38387
    Abstract: A multiplier circuit which multiplies together both natural and two's complement binary numbers, which it receives in the form of electric signals having predetermined logic values, that are applied to input terminals of logic gating circuits. The logic gating circuits provide partial products of the bits of the two binary numbers, and a combinatorial network provides the final sum of the partial products. The partial products that include at least one of the more significant bits of either of the operands are performed by logic gating circuits which can be enabled to complement the partial product. The multiplier circuit further includes additional logic gating circuits which supply the combinatorial network with additive constants with predetermined logic values.
    Type: Grant
    Filed: August 17, 2001
    Date of Patent: January 13, 2004
    Assignee: STMicroelectronics S.r.l.
    Inventors: Raffaele Costa, Anna Faldarini, Laura Formenti