Claims
- 1. A method of determining a first integer divider value (R) and a second integer divider value (N) for a phase lock loop system given a target frequency (F.sub.VE), a reference frequency (F.sub.R), an initial first integer divider (R.sub.0) value and an error limit (E.sub.L) comprising:
- A) initializing a first integer divider increment (r) equal to zero;
- B) computing a first constant (K) equal to a quotient of the target frequency (F.sub.VE) divided by the reference frequency (F.sub.R);
- C) computing a second constant (L) equal to a product of the first constant (K) multiplied times the initial first integer divider (R.sub.0) value;
- D) computing the second integer divider value (N) equal to a sum of the second constant added to a product of the first constant multiplied times the first integer divider increment (r);
- E) testing to determine whether an error term (E) resulting from computation of the second integer divider value (N) is within the error limit (E.sub.L);
- F) selecting a different first integer divider increment (r) as the first integer divider increment (r) if the error term (E) is determined in step (E) to be within the specified error limit (E.sub.L); and
- G) repeating steps (D) and (E) as a loop after the different first integer divider increment (r) has been selected as the first integer divider increment (r) in step (F).
- 2. The method in claim 1 wherein step (E) comprises:
- 1) isolating a fractional part (N.sub.F) of the second integer divider value (N); and
- 2) testing the fractional part (N.sub.F) against a fractional error limit (E.sub.F).
- 3. The method in claim 2 which further comprises:
- F) computing the fractional error limit (E.sub.F) to be equal to a product of the error limit (E.sub.L) multiplied times a quotient of the initial first integer divider (R.sub.0) value divided by the reference frequency (F.sub.R).
- 4. A method of determining a first integer divider value (R) and a second integer divider value (N) for a phase lock loop system given a target frequency (F.sub.VE), a reference frequency (F.sub.R), an initial first integer divider (R.sub.0) value and an error limit (E.sub.L) comprising:
- A) initializing a first integer divider increment (r) equal to zero;
- B) computing a first constant (K) equal to a quotient of the target frequency (F.sub.VE) divided by the reference frequency (F.sub.R);
- C) computing a second constant (L) equal to a product of the first constant (K) multiplied times the initial first integer divider (R.sub.0) value;
- D) computing the second integer divider value (N) equal to a sum of the second constant added to a product of the first constant multiplied times the first integer divider increment (r);
- E) testing to determine whether an error term (E) resulting from computation of the second integer divider value (N) is within the error limit (E.sub.L);
- F) selecting a different first integer divider increment (r) as the first integer divider increment (r) if the error term (E) is determined in step (E) to be within the specified error limit (E.sub.L); and
- G) repeating steps (D) and (E) as a loop after the different first integer divider increment has been selected as the first integer divider increment (r) in step (F) while the first integer divider increment (r) is within a specified range.
- 5. The method in claim 4 wherein:
- values of the first integer divider increment (r) are selected in step (F) from an ordered set of integers comprising: +1, -1, +2, -2, etc.
- 6. The method in claim 4 wherein:
- values of the first integer divider increment (r) are selected in step (F) from an ordered set of integers comprising: -1, +1, -2, +2, etc.
- 7. The method in claim 4 which further comprises:
- G) initializing a upper second integer divider value (N.sub.High) and a lower second integer divider value (N.sub.Low) to be equal to the second constant;
- wherein step (D) comprises:
- computing the upper second integer divider value (N.sub.High) equal to a sum of the upper second integer divider value (N.sub.High) added to the first constant (K); and
- computing the lower second integer divider value (N.sub.Low) equal to a difference of the lower second integer divider value (N.sub.Low) minus the first constant (K); and
- within step (F):
- values of the first integer divider increment (r) are selected in step (F) from an ordered set of integers comprising: +1, +2, +3, etc.
- 8. Software for determining a first integer divider value (R) and a second integer divider value (N) for a phase lock loop system given a target frequency (F.sub.VE), a reference frequency (F.sub.R), an initial first integer divider (R.sub.0) value and an error limit (E.sub.L) comprising:
- A) a set of computer instructions for initializing a first integer divider increment (r) equal to zero;
- B) a set of computer instructions for computing a first constant (K) equal to a quotient of the target frequency (F.sub.VE) divided by the reference frequency (F.sub.R);
- C) a set of computer instructions for computing a second constant (L) equal to a product of the first constant (K) multiplied times the initial first integer divider (R.sub.0) value;
- D) a set of computer instructions for computing the second integer divider value (N) equal to a sum of the second constant added to a product of the first constant multiplied times the first integer divider increment (r);
- E) a set of computer instructions for testing to determine whether an error term (E) resulting from computation of the second integer divider value (N) is within the error limit (E.sub.L);
- F) a set of computer instructions for selecting a different first integer divider increment (r) as the first integer divider increment (r) if the error term (E) is determined in step (E) to be within the specified error limit (E.sub.L); and
- G) a set of computer instructions for repeating steps (D) and (E) as a loop after the different first integer divider increment (r) has been selected as the first integer divider increment (r) in step (F).
- 9. A computer readable medium containing the software in claim 8 encoded in a computer readable format.
- 10. Software for determining a first integer divider value (R) and a second integer divider value (N) for a phase lock loop system given a target frequency (F.sub.VE), a reference frequency (F.sub.R), an initial first integer divider (R.sub.0) value and an error limit (E.sub.L) comprising:
- A) a set of computer instructions for initializing a first integer divider increment (r) equal to zero;
- B) a set of computer instructions for computing a first constant (K) equal to a quotient of the target frequency (F.sub.VE) divided by the reference frequency (F.sub.R);
- C) a set of computer instructions for computing a second constant (L) equal to a product of the first constant (K) multiplied times the initial first integer divider (R.sub.0) value;
- D) a set of computer instructions for computing the second integer divider value (N) equal to a sum of the second constant added to a product of the first constant multiplied times the first integer divider increment (r);
- E) a set of computer instructions for testing to determine whether an error term (E) resulting from computation of the second integer divider value (N) is within the error limit (E.sub.L);
- F) a set of computer instructions for selecting a different first integer divider increment (r) as the first integer divider increment (r) if the error term (E) is determined in step (E) to be within the specified error limit (E.sub.L); and
- G) a set of computer instructions for repeating steps (D) and (E) as a loop after the different first integer divider increment has been selected as the first integer divider increment (r) in step (F) while the first integer divider increment (r) is within a specified range.
- 11. A computer readable medium containing the software in claim 10 encoded in a computer readable format.
CROSS REFERENCE TO RELATED APPLICATION
This application is related to our commonly assigned copending United States patent application entitled "ADAPTIVE PHASE LOCKED LOOP SYSTEM WITH CHARGE PUMP HAVING DUAL CURRENT OUTPUT" by James Stuart Irwin, having docket number SC90545A, and filed of even date herewith issued Jun. 30, 1998, with U.S. Pat. No. 5,774,023.
US Referenced Citations (7)