IP Library Granted Patent US 7,339,985
Granted Patent B2
US 7,339,985 · App. 10/338,534 · Granted Mar 4, 2008

Zero crossing method of symbol rate and timing estimation

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,339,985
App. No.
10/338,534
Granted
Mar 4, 2008
Kind
B2
Abstract

System and method for analyzing communication signals. A digital signal comprising multiple samples is received, representing a plurality of binary symbols. Zero crossings of the signal are determined, each comprising a respective first sample immediately preceding the zero crossing and a respective second sample immediately following the zero crossing. Per zero crossing, an error expression is determined interpolating between the first and second samples as a function of estimated period T and estimated offset τ of the signal. Based on the error expressions, values of T and τ are determined using a linear fit that minimizes a total error of values of the error expressions. T and τ are usable in analyzing the signal, e.g., each zero crossing corresponds to a respective symbol represented by a respective segment of the signal. The segments are overlaid based on T and τ, forming an eye diagram usable to analyze the signal.

Claims (72)

1. A method for analyzing digital signals, the method comprising:

receiving a digital signal, wherein the digital signal encodes a plurality of binary symbols;

sampling the digital signal to generate a plurality of samples that represent the digital signal;

determining a plurality of zero crossings of the digital signal, wherein each of the plurality of zero crossings is determined by a respective first sample and a respective second sample, wherein the first sample immediately precedes the zero crossing, and wherein the second sample immediately follows the zero crossing;

for each of the plurality of zero crossings, determining an error expression, wherein the error expression computes an error of an interpolated value from the first sample and the second sample as a function of an estimated symbol period T and an estimated offset τ of the digital signal, wherein τ denotes a preamble of the signal that precedes the plurality of symbols;

determining values of T and τ based on said error expressions using a linear fit that minimizes a total error of values of said error expressions; and

storing said determined values of T and τ, wherein said determined values of T and τ are usable in analyzing the digital signal.

2. The method of claim 1 , wherein the digital signal comprises Universal Serial Bus (USB) signal data.

3. The method of claim 1 , wherein the digital signal comprises a binary pulse amplitude modulated (PAM) signal.

4. The method of claim 1 , wherein said linear fit comprises one or more of:

a least squares linear fit;

a median linear fit;

a weighted linear fit;

a weighted least squares linear fit; and

a weighted median linear fit.

5. The method of claim 1 , further comprising:

determining a symbol rate for the signal based on said determined value of T.

6. The method of claim 1 , wherein said values of said error expressions comprise:

interpolated amplitude values corresponding to said values of said T and said τ.

7. The method of claim 1 , wherein said values of said error expressions comprise:

interpolated zero crossing values corresponding to said values of said T and said τ.

8. The method of claim 1 , wherein said values of said T and said τ are in time units of samples, the method further comprising:

dividing said values of said T and said τ by a sampling frequency of the digital signal to compute physical time-based values of said T and said τ.

9. The method of claim 1 , wherein each zero crossing corresponds to a respective symbol of said plurality of symbols, and wherein each respective symbol is represented by a respective segment of said digital signal, the method further comprising:

overlaying each respective segment based on said determined values of said T and said τ to form an eye diagram, wherein said eye diagram is usable to analyze the digital signal.

10. A system for analyzing digital signals, the system comprising:

a processor;

a memory medium coupled to the processor;

an input coupled to the processor and the memory medium; and

a digital sampler coupled to the input;

wherein the digital sampler is operable to:

receive a digital signal, wherein the digital signal encodes a plurality of binary symbols; and

sample the digital signal to generate a plurality of samples that represent the digital signal;

wherein the input is operable to:

receive the plurality of samples;

wherein the memory medium stores a program instructions which are executable by the processor to:

determine a plurality of zero crossings of the digital signal, wherein each of the plurality of zero crossings is determined by a respective first sample and a respective second sample, wherein the first sample immediately precedes the zero crossing, and wherein the second sample immediately follows the zero crossing;

for each of the plurality of zero crossings, determine an error expression, wherein the error expression computes an error of an interpolated value from the first sample and the second sample as a function of an estimated period T and an estimated offset τ of the digital signal;

determine values of T and τ based on said error expressions using a linear fit that minimizes a total error of values of said error expressions; and

store said determined values of T and τ, wherein said determined values of T and τ are usable in analyzing the digital signal.

11. The system of claim 10 , wherein the digital signal comprises USB signal data.

12. The system of claim 10 , wherein the digital signal comprises a binary pulse amplitude modulated (PAM) signal.

13. The system of claim 10 , wherein said linear fit comprises one or more of:

a least squares linear fit;

a median linear fit;

a weighted linear fit;

a weighted least squares linear fit; and

a weighted median linear fit.

14. The system of claim 10 , wherein said values of said error expressions comprise:

interpolated amplitude values corresponding to said values of said T and said τ.

15. The system of claim 10 , wherein said values of said error expressions comprise:

interpolated zero crossing values corresponding to said values of said T and said τ.

16. The system of claim 10 , wherein said values of said T and said τ are in time units of samples, wherein the program instructions are further executable to:

divide said values of said T and said τ by a sampling frequency of the digital signal to compute physical time-based values of said T and said τ.

17. The system of claim 10 , wherein each zero crossing corresponds to a respective symbol of said plurality of symbols, and wherein each respective symbol is represented by a respective segment of said digital signal, wherein the program instructions are further executable to:

overlay each respective segment based on said determined values of said T and said τ to form an eye diagram, wherein said eye diagram is usable to analyze the digital signal.

18. The system of claim 10 , wherein the program instructions are further executable to:

determine a symbol rate of the signal based on said determined value of T.

19. A system for analyzing digital signals, the system comprising:

means for receiving a digital signal, wherein the digital signal encodes a plurality of binary symbols;

means for sampling the digital signal to generate a plurality of samples that represent the digital signal;

means for determining a plurality of zero crossings of the digital signal, wherein each of the plurality of zero crossings is determined by a respective first sample and a respective second sample, wherein the first sample immediately precedes the zero crossing, and wherein the second sample immediately follows the zero crossing;

means for, for each of the plurality of zero crossings, determining an error expression, wherein the error expression computes an error of an interpolated value from the first sample and the second sample as a function of an estimated symbol period T and an estimated offset τ of the digital signal, wherein τ denotes a preamble of the signal that precedes the plurality of symbols;

means for determining values of T and τ based on said error expressions using a linear fit that minimizes a total error of values of said error expressions; and

means for storing said determined values of T and τ, wherein said determined values of T and τ are usable in analyzing the digital signal.

20. A computer accessible memory medium which stores program instructions for analyzing digital signals, wherein the program instructions are executable by a processor to perform:

receiving a digital signal, wherein the digital signal encodes a plurality of binary symbols;

sampling the digital signal to generate a plurality of samples that represent the digital signal;

determining a plurality of zero crossings of the digital signal, wherein each of the plurality of zero crossings is determined by a respective first sample and a respective second sample, wherein the first sample immediately precedes the zero crossing, and wherein the second sample immediately follows the zero crossing;

for each of the plurality of zero crossings, determining an error expression, wherein the error expression computes an error of an interpolated value from the first sample and the second sample as a function of an estimated symbol period T and an estimated offset τ of the digital signal, wherein τ denotes a preamble of the signal that precedes the plurality of symbols;

determining values of T and τ based on said error expressions using a linear fit that minimizes a total error of values of said error expressions; and

storing said determined values of T and τ, wherein said determined values of T and τ are usable in analyzing the digital signal.

Assignments (5)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 057280/0028) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 065231/0466 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 052935/0001) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
Reel/Frame 065653/0463 →
SECURITY INTEREST Recorded Jun 18, 2021
From: NATIONAL INSTRUMENTS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 057280/0028 →
SECURITY INTEREST Recorded Jun 14, 2020
From: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 052935/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 8, 2003
From: RAO, YONG
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 013646/0088 →