Systems, methods and computer program products for identifying digital impairments in modems based on clusters and/or skips in pulse code modulation signal levels
First Claim
1. A method of identifying digital impairments in a set of Pulse Code Modulation (PCM) signal levels that are received at a client modem from a server modem, comprising the steps of:
- identifying clusters and/or skips in the set of PCM signal levels that are received at the client modem from the server modem wherein said identifying comprises counting said clusters and/or skips; and
determining a digital impairment in the set of PCM signal levels that are received at the client modem from the server modem based on the clusters and/or skips so identified and counted.
1 Assignment
0 Petitions
Accused Products
Abstract
Digital impairments in a set of Pulse Code Modulation (PCM) signal levels that are received at a client modem from a server modem are identified by compressing the set of PCM signal levels into a signature. Digital impairments are determined based on the signature. In a preferred embodiment, the PCM signal levels are compressed into a signature by identifying clusters and/or skips in the set of PCM signal levels. In particular, when transmitting PCM signal levels from a server modem to a client modem over a connection that is subject to digital impairments such as Robbed Bit Signaling (RBS) and/or PAD digital impairments and quantization, some adjacent PCM signal levels may become identical or very close to one another. Moreover, other adjacent signal levels may have a difference that is at least approximately twice the difference of other levels. The former phenomenon is referred to as a “cluster” and the latter phenomenon is referred to as a “skip”. By identifying clusters and/or skips in the set of PCM signals that are received at the client modem from the server modem, a signature of the network connection may be obtained. Digital impairments including RBS and/or PAD may be identified using the signature.
148 Citations
36 Claims
-
1. A method of identifying digital impairments in a set of Pulse Code Modulation (PCM) signal levels that are received at a client modem from a server modem, comprising the steps of:
-
identifying clusters and/or skips in the set of PCM signal levels that are received at the client modem from the server modem wherein said identifying comprises counting said clusters and/or skips; and
determining a digital impairment in the set of PCM signal levels that are received at the client modem from the server modem based on the clusters and/or skips so identified and counted. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
obtaining a listing of cluster counts and/or skip counts for a plurality of digital impairments; and
comparing the clusters and/or skips that are counted in the set of PCM signal levels that are received at the client modem from the server modem, to the listing of cluster counts and/or skip counts for a plurality of digital impairments to identify a digital impairment.
-
-
3. A method according to claim 2 wherein the step of obtaining comprises the step of computing cluster counts and/or skip counts for an ideal set of PCM signal levels that is subject to a plurality of digital impairments.
-
4. A method according to claim 1 wherein the set of PCM signal levels that are received at a client modem from a server modem comprises a plurality of sets of Digital Impairment Learning (DIL) signals that are repeatedly transmitted from the server modem to the client modem over a corresponding plurality of DIL intervals.
-
5. A method according to claim 4:
-
wherein the step of identifying comprises the step of counting the clusters and/or skips in the plurality of sets of DIL signals; and
wherein the step of determining comprises the step of averaging the counts for clusters and/or skips from at least two of the DIL intervals.
-
-
6. A method according to claim 1 wherein the step of identifying comprises the step of only identifying clusters and/or skips in a subset of the set of PCM signal levels that are received at the client modem from the server modem.
-
7. A method according to claim 1 wherein the step of identifying clusters comprises the step of identifying adjacent PCM signal levels that are within a first threshold of one another and wherein the step of identifying skips comprises the step of identifying adjacent PCM signal levels that are at least a second threshold apart from one another.
-
8. A method according to claim 1 wherein the step of identifying clusters comprises the step of identifying adjacent PCM signal levels that are identical to one another and wherein the step of identifying skips comprises the step of identifying adjacent PCM signal levels having level differences that arc at least twice as far apart from one another as other adjacent PCM signal levels.
-
9. A method according to claim 1 wherein the digital impairments comprise Robbed Bit Signaling (RBS) and PAD digital impairments in a plurality of sets of Digital Impairment Learning (DIL) signals that are repeatedly received at the client modem from the server modem over a corresponding plurality of DIL intervals, and wherein the determining step comprises the steps of:
-
determining the DIL intervals that are not subject to RBS, based on the clusters and/or skips so identified;
averaging counts of clusters and/or skips for the DIL intervals that are not subject to RBS; and
determining PAD impairments from the counts of clusters and/or skips so averaged.
-
-
10. A method of identifying digital impairments in a set of Pulse Code Modulation (PCM) signal levels that are received at a client modem from a server modem, comprising the steps of:
-
compressing the set of PCM signal levels that are received at the client modem from the server modem into a signature wherein said signature comprises a count of clusters and/or skips in the set of PCM signal levels; and
determining a digital impairment in the set of PCM signal levels that are received at the client modem from the server modem based on the signature. - View Dependent Claims (11, 12)
determining the DIL intervals that are not subject to RBS, based on the clusters and/or skips so compressed;
averaging counts of clusters and/or skips for the DIL intervals that are not subject to RBS; and
determining PAD impairments from the counts of clusters and/or skips so averaged.
-
-
13. A modem comprising:
-
means for receiving a set of Pulse Code Modulation (PCM) signal levels from a server modem;
means for identifying clusters and/or skips in the set of PCM signal levels that are received from the server modem comprising means for counting said clusters and/or skips; and
means for determining a digital impairment in the set of PCM signal levels that are received from the server modem in response to the means for identifying and counting. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21)
means for obtaining a listing of cluster counts and/or skip counts for a plurality of digital impairments; and
means for comparing the clusters and/or skips that are counted in the set of PCM signal levels that are received from the server modem, to the listing of cluster counts and/or skip counts for a plurality of digital impairments to identify a digital impairment.
-
-
15. A modem according to claim 14 wherein the means for obtaining comprises means for computing cluster counts and/or skip counts for an ideal set of PCM signal levels that is subject to a plurality of digital impairments.
-
16. A modem according to claim 13 wherein the set of PCM signal levels that are received from a server modem comprises a plurality of sets of Digital Impairment Learning (DIL) signals that are repeatedly transmitted from the server modem over a corresponding plurality of DIL intervals.
-
17. A modem according to claim 16:
-
wherein the means for identifying comprises means for counting the clusters and/or skips in the plurality of sets of DIL signals; and
wherein the means for determining comprises means for averaging the counts for clusters and/or skips from at least two of the DIL intervals.
-
-
18. A modem according to claim 13 wherein the means for identifying comprises means for only identifying clusters and/or skips in a subset of the set of PCM signal levels that are received from the server modem.
-
19. A modem according to claim 13 wherein the means for identifying clusters comprises means for identifying adjacent PCM signal levels that are within a first threshold of one another and wherein the means for identifying skips comprises means for identifying adjacent PCM signal levels that are at least a second threshold apart from one another.
-
20. A modem according to claim 13 wherein the means for identifying clusters comprises means for identifying adjacent PCM signal levels that are identical to one another and wherein the means for identifying skips comprises means for identifying adjacent PCM signal levels having level differences that are at least twice as far apart from one another as other adjacent PCM signal levels.
-
21. A modem according to claim 13 wherein the digital impairments comprise Robbed Bit Signaling (RBS) and PAD digital impairments in a plurality of sets of Digital Impairment Learning (DIL) signals that are repeatedly received from the server modem over a corresponding plurality of DIL intervals, and wherein the means for determining comprises:
-
means for determining the DIL intervals that are not subject to RBS, in response to the means for identifying;
means for averaging counts of clusters and/or skips for the DIL intervals that are not subject to RBS; and
means for determining PAD impairments from the counts of clusters and/or skips in response to the means for averaging.
-
-
22. A modem comprising:
-
means for receiving a set of Pulse Code Modulation (PCM) signal levels from a server modem;
means for compressing the set of PCM signal levels that are received from the server modem into a signature wherein said signature comprises a count of clusters and/or skips in the set of PCM signed levels; and
means for determining a digital impairment in the set of PCM signal levels that are received from the server modem based on the signature. - View Dependent Claims (23, 24)
means for determining the DIL intervals that are not subject to RBS, in response to the means for identifying;
means for averaging counts of clusters and/or skips for the DIL intervals that are not subject to RBS; and
means for determining PAD impairments from the counts of clusters and/or skips in response to the means for averaging.
-
-
25. A computer program product identifying digital impairments in a sct of Pulse Code Modulation (PCM) signal levels that are received at a client modem from a server modem, the computer program product comprising a computer-readable storage medium having computer-readable program code embodied in the medium, the computer-readable program code comprising:
-
computer-readable program code for identifying and counting clusters and/or skips in the set of PCM signal levels that are received at the client modem from the server modem; and
computer-readable program code for determining a digital impairment in the set of PCM signal levels that are received at the client modem from the server modem in response to the computer-readable program code for identifying and counting. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33)
computer-readable program code for obtaining a listing of cluster counts and/or skip counts for a plurality of digital impairments; and
computer-readable program code for comparing the clusters and/or skips that are counted in the set of PCM signal levels that are received at the client modem from the server modem, to the listing of cluster counts and/or skip counts for a plurality of digital impairments to identify a digital impairment.
-
-
27. A computer program product according to claim 26 wherein the computer-readable program code for obtaining comprises computer-readable program code for computing cluster counts and/or skip counts for an ideal set of PCM signal levels that is subject to a plurality of digital impairments.
-
28. A computer program product according to claim 25 wherein the set of PCM signal levels that are received at a client modem from a server modem comprises a plurality of seas of Digital Impairment Learning (DIL) signals that are repeatedly transmitted from the server modem to the client modem over a corresponding plurality of DIL intervals.
-
29. A computer program product according to claim 28:
-
wherein the computer-readable program code for identifying comprises computer-readable program code for counting the clusters and/or skips in the plurality of sets of DIL signals; and
wherein the computer-readable program code for determining comprises computer-readable program code for averaging the counts for clusters and/or skips from at least two of the DIL intervals.
-
-
30. A computer program product according to claim 25 wherein the computer-readable program code for identifying comprises computer-readable program code for only identifying clusters and/or skips in a subset of the set of PCM signal levels that are received at the client modem from the server modem.
-
31. A computer program product according to claim 25 wherein the computer-readable program code for identifying clusters comprises computer-readable program code for identifying adjacent PCM signal levels that are within a first threshold of one another and wherein the computer-readable program code for identifying skips comprises computer-readable program code for identifying adjacent PCM signal levels that are at least a second threshold apart from one another.
-
32. A computer program product according to claim 25 wherein the computer-readable program code for identifying clusters comprises computer-readable program code for identifying adjacent PCM signal levels that are identical to one another and wherein the computer-readable program code for identifying skips comprises computer-readable program code for identifying adjacent PCM signal levels having level differences that are at least twice as far apart from one another as other adjacent PCM signal levels.
-
33. A computer program product according to claim 25 wherein the digital impairments comprise Robbed Bit Signaling (RBS) and PAD digital impairments in a plurality of sets of Digital Impairment Learning (DIL) signals that are repeatedly received at the client modem from the server modem over a corresponding plurality of DIL intervals, and wherein the computer-readable program code for determining comprises:
-
computer-readable program code for determining the DIL intervals that are not subject to RBS, in response to the computer-readable program code for identifying;
computer-readable program code for averaging counts of clusters and/or skips for the DIL intervals that are not subject to RBS; and
computer-readable program code for determining PAD impairments from the counts of clusters and/or skips in response to the computer-readable program code for averaging.
-
-
34. A computer program product identifying digital impairments in a set of Pulse Code Modulation (PCM) signal levels that are received at a client modem from a server modem, the computer program product comprising a computer-readable storage medium having computer-readable program code embodied in the medium, the computer-readable program code comprising:
-
computer-readable program code for compressing the set of PCM signal levels that are received at the client modem from the server modem into a signature wherein said signature comprises a count of clusters and/or skips in the set of PCM signal levels; and
computer-readable program code for determining a digital impairment in the set of PCM signal levels that are received at the client modem from the server modem based on the signature. - View Dependent Claims (35, 36)
computer-readable program code for determining the DIL intervals that are not subject to RBS, in response to the computer-readable program code for identifying;
computer-readable program code for averaging counts of clusters and/or skips for the DIL intervals that are not subject to RBS; and
computer-readable program code for determining PAD impairments from the counts of clusters and/or skips in response to the computer-readable program code for averaging.
-
Specification