IP Library Granted Patent US 7,020,674
Granted Patent B2
US 7,020,674 · App. 10/722,728 · Granted Mar 28, 2006

Device and method for performing multiple modulus conversion using inverse modulus multiplication

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,020,674
App. No.
10/722,728
Granted
Mar 28, 2006
Kind
B2
Abstract

A method and device are provided that allow computation of multiple modulus conversion (MMC) outputs using little or no division operations. Instead of division operations, multiplication and logical shift operations are used to produce pseudo-quotients and pseudo-remainders, which may be corrected in a final step to produce correct MMC outputs. This allows for more efficient implementation, since division is typically less efficient than multiplication and logical shift. The method and device operate on MMC inputs that may be partitioned into sub-quotients of varying numbers of digits in any numbering system. The multiplication and logical shift operations are performed on each of the sub-quotients according to a procedure derived from long-division techniques.

Claims (20)

1. A multiple modulus conversion (MMC) method for obtaining a plurality of index values associated with a plurality of moduli, for use in a communication system configured to map frames of information bits onto predetermined communication signal parameters, the method comprising:

obtaining an input Q 0 ;

representing the input as a plurality of sub-quotients in the form of Q 0 =Q 0,0 +Q 0,1 *B n(0) + . . . +Q 0,k *B n(0)+n(1)+ . . . n(k−1) , where Q 0,j is the j th sub-quotient of the input, B is the base numbering system, n(j) is the number of digits assigned for the j th sub-quotient, and k+1 is the number of sub-quotients, for j=[0,k];

obtaining a multiplicand C i , that is an estimate of the inverse of a whole number Y i , where Y i is one of the moduli;

performing an inverse modulus multiplication operation by:

calculating at least one sub-quotient of the output pseudo-quotient corresponding to Y i according to the following formula: Q i,j =((Q i−1,j +R i,j+1 *B n(j) )*C i )>>N 3 , where Q i−1,j is one of a sub-quotient from a previous calculation and a sub-quotient of the input, R ij+1 is the pseudo-remainder from a previous calculation, and N 3 is the number of digits used to represent C 1; and

calculating a pseudo-remainder according to the following formula: R i,j =(Q i−1,j +R i,j+1 *B n(j) )−(Q i,j *Y i ); and

determining an index value associated with the modulus Y i , the index value being responsive to the inverse modulus multiplication operation.

2. A method according to claim 1 , wherein C i is estimated according to the formula: C j =floor(B N3 /Y j ), where the floor function returns the largest integer less than its argument.

3. A method according to claim 1 , wherein C i is estimated according to the formula: C i =ceil(B N3 /Y i ), where the ceil function returns the smallest integer greater than its argument.

4. A method according to claim 1 , wherein C i is estimated according to the formula: C i= rnd(B N3 /Y i ), where the rnd function returns the closest integer to its argument.

5. A method according to claim 1 , wherein the index value is determined by:

obtaining a final pseudo-remainder R i,0 associated with a least significant sub-quotient Q i,0 ; and

performing a final pseudo-remainder correction loop, wherein the value Y i is repeatedly added to R j,0 until the result is in the range [0,Y i ).

6. A method according to claim 1 , wherein the index value is determined by:

obtaining a final pseudo-remainder R i,0 associated with a least significant sub-quotient Q i,0 ; and

performing a final pseudo-remainder correction loop, wherein the value Y i is repeatedly subtracted to R i,0 until the result is in the range [0,Y i ).

7. A method according to claim 1 , wherein the index value is determined by:

obtaining a final pseudo-remainder R i,0 associated with a least significant sub-quotient Q i,0 ; and

performing a final pseudo-remainder correction loop, wherein the value Y i is alternately added and subtracted to R i,0 until the result is in the range [0,Y i ).

Assignments (1)
SECURITY AGREEMENT Recorded Jul 9, 2008
From: ESS TECHNOLOGY, INC.
To: THE PRIVATE BANK OF THE PENINSULA
Reel/Frame 021212/0413 →