Binary Patents (Class 708/625)
-
Publication number: 20040128336Abstract: 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: ApplicationFiled: October 9, 2003Publication date: July 1, 2004Inventor: Clemens M. Zierhofer
-
Publication number: 20040107233Abstract: 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: ApplicationFiled: October 10, 2003Publication date: June 3, 2004Inventors: Won Jong Kim, Seung Chul Kim, Han Jin Cho, Kwang Youb Lee
-
Patent number: 6745319Abstract: 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: GrantFiled: October 31, 2000Date of Patent: June 1, 2004Assignee: Texas Instruments IncorporatedInventors: Keith Balmer, David Hoyle, Lewis Nardini
-
Patent number: 6742012Abstract: 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: GrantFiled: December 27, 2000Date of Patent: May 25, 2004Assignee: Arm LimitedInventor: Alexander Edward Nancekievill
-
Apparatus and method for increasing performance of multipliers utilizing regular summation circuitry
Patent number: 6742011Abstract: 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: GrantFiled: February 15, 2000Date of Patent: May 25, 2004Assignee: Hewlett-Packard Development Company, L.P.Inventors: Glenn T Colon-Bonet, Stephen L Bass, Thomas J. Sullivan -
Patent number: 6728744Abstract: 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: GrantFiled: January 2, 2001Date of Patent: April 27, 2004Assignee: Mosaid Technologies IncorporatedInventor: Maher Amer
-
Publication number: 20040059771Abstract: 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: ApplicationFiled: September 25, 2002Publication date: March 25, 2004Applicant: Broadcom CorporationInventor: Minsheng Wang
-
Patent number: 6711602Abstract: 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: GrantFiled: October 31, 2000Date of Patent: March 23, 2004Assignee: Texas Instruments IncorporatedInventors: Amarjit Singh Bhandal, Keith Balmer, David Hoyle, Karl M. Guttag, Zahid Hussain
-
Patent number: 6708193Abstract: 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: GrantFiled: February 21, 2000Date of Patent: March 16, 2004Assignee: Hewlett-Packard Development Company, L.P.Inventor: Richard B Zeng
-
Publication number: 20040049529Abstract: 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: ApplicationFiled: June 10, 2003Publication date: March 11, 2004Inventors: Kaoru Awaka, Yutaka Toyonoh, Hideyuki Fukuhara
-
Patent number: 6704762Abstract: 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: GrantFiled: August 30, 1999Date of Patent: March 9, 2004Assignee: NEC CorporationInventor: Toshiaki Inoue
-
Patent number: 6693455Abstract: 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: GrantFiled: February 26, 2003Date of Patent: February 17, 2004Assignee: Altera CorporationsInventors: Martin Langhammer, Chiao Kai Hwang, Gregory Starr
-
Patent number: 6687810Abstract: 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: GrantFiled: June 6, 2002Date of Patent: February 3, 2004Assignee: Intel CorporationInventors: Patrice Roussel, Glenn J. Hinton, Shreekant S. Thakkar, Brent R. Boswell, Karol F. Menezes
-
Patent number: 6687726Abstract: 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: GrantFiled: June 19, 2000Date of Patent: February 3, 2004Assignee: Infineon Technologies AGInventor: Claus Schneider
-
Patent number: 6684236Abstract: 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: GrantFiled: February 15, 2000Date of Patent: January 27, 2004Assignee: Conexant Systems, Inc.Inventor: William A. Farnbach
-
Publication number: 20040010536Abstract: 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: ApplicationFiled: July 11, 2002Publication date: January 15, 2004Applicant: International Business Machines CorporationInventors: Jaime H. Moreno, Uzi Shvadron, Ayal Zaks, Victor V. Zyuban
-
Publication number: 20030212729Abstract: 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: ApplicationFiled: March 11, 2003Publication date: November 13, 2003Applicant: Sun Microsystems, Inc.Inventors: Hans Eberle, Nils Gura, Russell A. Brown, Sheueling Chang-Shantz, Vipul Gupta
-
Publication number: 20030208519Abstract: 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: ApplicationFiled: May 6, 2002Publication date: November 6, 2003Inventors: David Garrett, Geoff Knagge, Christopher J. Nicol
-
Publication number: 20030195914Abstract: 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: ApplicationFiled: April 12, 2002Publication date: October 16, 2003Inventors: J. William Whikehart, Christopher John Hagan
-
Publication number: 20030182343Abstract: 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: ApplicationFiled: May 8, 2002Publication date: September 25, 2003Inventor: Erik Hojsted
-
Publication number: 20030163503Abstract: 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: ApplicationFiled: February 22, 2002Publication date: August 28, 2003Inventor: Trinh Huy Nguyen
-
Patent number: 6598064Abstract: 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: GrantFiled: January 4, 2000Date of Patent: July 22, 2003Assignee: National Semiconductor CorporationInventor: Daniel W. Green
-
Patent number: 6591357Abstract: 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: GrantFiled: February 26, 2001Date of Patent: July 8, 2003Assignee: Broadcom CorporationInventor: Ethan A. Mirsky
-
Publication number: 20030105793Abstract: 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: ApplicationFiled: April 9, 2002Publication date: June 5, 2003Inventors: Karl M. Guttag, Christopher J. Read, Keith Balmer
-
Publication number: 20030105792Abstract: 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: ApplicationFiled: December 4, 2001Publication date: June 5, 2003Inventor: Ravi Shankar
-
Patent number: 6556044Abstract: 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: GrantFiled: September 18, 2001Date of Patent: April 29, 2003Assignee: Altera CorporationInventors: Martin Langhammer, Chiao Kai Hwang, Gregory Starr
-
Publication number: 20030065699Abstract: 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: ApplicationFiled: October 1, 2001Publication date: April 3, 2003Applicant: KONINKLIJKE PHILIPS ELECTRONICS N.V.Inventor: Geoffrey Burns
-
Patent number: 6538470Abstract: 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: GrantFiled: September 18, 2001Date of Patent: March 25, 2003Assignee: Altera CorporationInventors: Martin Langhammer, Gregory Starr, Chiao Kai Hwang
-
Patent number: 6523055Abstract: 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: GrantFiled: January 20, 1999Date of Patent: February 18, 2003Assignee: LSI Logic CorporationInventors: Robert K. Yu, Satish Padmanabhan, Chakra R. Srivatsa, Shailesh I. Shah
-
Publication number: 20030028575Abstract: 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: ApplicationFiled: August 15, 2002Publication date: February 6, 2003Applicant: RN2R, L.L.C.Inventor: Valeriu Beiu
-
Patent number: 6516334Abstract: 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: GrantFiled: September 19, 1997Date of Patent: February 4, 2003Assignee: Siemens AktiengesellschaftInventor: Wolfgang Ecker
-
Publication number: 20030009503Abstract: 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: ApplicationFiled: March 25, 2002Publication date: January 9, 2003Inventors: Philipp Michael Glaser, Michael J. Torla
-
Publication number: 20030009504Abstract: 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: ApplicationFiled: August 2, 2002Publication date: January 9, 2003Applicant: RN2R, L.L.C.Inventor: Valeriu Beiu
-
Patent number: 6484193Abstract: 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: GrantFiled: July 30, 1999Date of Patent: November 19, 2002Assignee: Advanced Micro Devices, Inc.Inventors: Gwangwoo Johnny Choe, James R. MacDonald
-
Patent number: 6483343Abstract: 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: GrantFiled: December 29, 2000Date of Patent: November 19, 2002Assignee: QuickLogic CorporationInventors: Brian C. Faith, Thomas Oelsner, Gary N. Lai
-
Patent number: 6484194Abstract: 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: GrantFiled: June 17, 1999Date of Patent: November 19, 2002Assignee: Texas Instruments IncorporatedInventors: Alva Henderson, Francesco Cavaliere
-
Patent number: 6460065Abstract: 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: GrantFiled: September 22, 1998Date of Patent: October 1, 2002Assignee: ATI International SRLInventor: Stephen C. Purcell
-
Publication number: 20020138538Abstract: 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: ApplicationFiled: July 3, 2001Publication date: September 26, 2002Inventors: Sunil Talwar, Dmitriy Rumynin
-
Publication number: 20020116434Abstract: 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: ApplicationFiled: December 27, 2000Publication date: August 22, 2002Inventor: Alexander Edward Nancekievill
-
Patent number: 6438570Abstract: 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: GrantFiled: July 21, 1999Date of Patent: August 20, 2002Assignee: Xilinx, Inc.Inventor: Andrew J. Miller
-
Patent number: 6434584Abstract: 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: GrantFiled: June 17, 1999Date of Patent: August 13, 2002Assignee: Texas Instruments IncorporatedInventors: Alva Henderson, Francesco Cavaliere
-
Patent number: 6434586Abstract: 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: GrantFiled: January 29, 1999Date of Patent: August 13, 2002Assignee: Compaq Computer CorporationInventors: David Albert Carlson, Derek Scott Brasili, Vishnu V. Yalala
-
Publication number: 20020099751Abstract: 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: ApplicationFiled: May 22, 2001Publication date: July 25, 2002Applicant: INDUSTRIAL TECHNOLOGY RESEARCH INSTITUTEInventors: Oscal T.-C. Chen, Kuo-Hua Chen, Ruey-Liang Ma
-
Patent number: 6421699Abstract: 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: GrantFiled: March 19, 1999Date of Patent: July 16, 2002Assignee: International Business Machines CorporationInventors: Sang Hoo Dhong, Perng Shyong Lin, Joel Abraham Silberman
-
Patent number: 6397241Abstract: 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: GrantFiled: December 18, 1998Date of Patent: May 28, 2002Assignee: Motorola, Inc.Inventors: Philipp Michael Glaser, Michael J. Torla
-
Patent number: 6370559Abstract: 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: GrantFiled: July 13, 1999Date of Patent: April 9, 2002Assignee: Intel CorportionInventor: Nathaniel Hoffman
-
Publication number: 20020032713Abstract: 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: ApplicationFiled: May 22, 2001Publication date: March 14, 2002Inventors: Shyh-Jye Jou, Hui-Hsuan Wang
-
Patent number: 6347326Abstract: 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: GrantFiled: March 2, 1999Date of Patent: February 12, 2002Assignee: Philips Electronics North America CorporationInventors: Rune Hartung Jensen, Hans Albert Spanjaart, Hans Adrianus Bouwmeester, Kenneth David Currie
-
Patent number: 6330631Abstract: 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: GrantFiled: February 3, 1999Date of Patent: December 11, 2001Assignee: Sun Microsystems, Inc.Inventor: Andrew Crosland
-
Patent number: RE38387Abstract: 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: GrantFiled: August 17, 2001Date of Patent: January 13, 2004Assignee: STMicroelectronics S.r.l.Inventors: Raffaele Costa, Anna Faldarini, Laura Formenti