Computer modem
First Claim
1. A service chip for use with a computer, comprising:
- a CPU interface designed to receive a transmit sample sequence from a modem sample generator executing on a central processor of the computer, and presenting a receive sample sequence to a modem sample receiver executing on the central processor;
a transceiver interface for presenting data to a line interface for conversion by a digital-to-analog converter to analog signals for transmission on a telephone line;
an adaptive echo cancellation filter, designed to adapt in response to an echo correlation between data transmitted over a transmit channel of the modem and data received on a receive channel of the transceiver interface;
a monitor designed to monitor the transmit sample sequence for a data starvation condition; and
a first synthesizer designed to synthesize a transmit sample sequence for delivery to the-digital-to-analog converter over the transceiver interface when the monitor detects the data starvation condition, the synthesized transmit sample sequence being essentially free of timing information; and
a second synthesizer designed to synthesize a received data sequence for delivery on the modem receive channel to the central processing unit through the CPU interface when the monitor detects the data starvation condition, the synthesized received data sequence imperfectly approximating an echo of the transmit channel, synthesis of the received data sequence being based on the adapted parameters of the echo cancellation filter.
5 Assignments
0 Petitions
Accused Products
Abstract
A service chip for use with a computer. The chip includes a CPU interface, a transceiver interface, an adaptive echo cancellation filter, a monitor, and first and second data synthesizers. The CPU interface receives a transmit sample sequence from a modem sample generator executing on a central processor of the computer, and presents a receive sample sequence to a modem sample receiver executing on the central processor. The transceiver interface presents data to a line interface, which includes digital-to-analog and analog-to-digital converters for converting samples to/from analog signals for transmission on a telephone line. The filter adapts in response to an echo correlation between data transmitted over a transmit channel of the modem and data received on a receive channel of the transceiver interface. The monitor monitors the transmit sample sequence for a data starvation condition. The first synthesizer synthesizes a transmit sample sequence for delivery to the digital-to-analog converter over the transceiver interface when the monitor detects the data starvation condition, the synthesized transmit sample sequence being essentially free of timing information. The second synthesizer synthesizes a received data sequence for delivery on a modem receive channel to the central processing unit through the CPU interface when the monitor detects the data starvation condition, the synthesized received data sequence imperfectly approximating an echo of the transmit data channel, synthesis of the received data sequence being based on the adapted parameters of the echo cancellation filter.
27 Citations
79 Claims
-
1. A service chip for use with a computer, comprising:
-
a CPU interface designed to receive a transmit sample sequence from a modem sample generator executing on a central processor of the computer, and presenting a receive sample sequence to a modem sample receiver executing on the central processor;
a transceiver interface for presenting data to a line interface for conversion by a digital-to-analog converter to analog signals for transmission on a telephone line;
an adaptive echo cancellation filter, designed to adapt in response to an echo correlation between data transmitted over a transmit channel of the modem and data received on a receive channel of the transceiver interface;
a monitor designed to monitor the transmit sample sequence for a data starvation condition; and
a first synthesizer designed to synthesize a transmit sample sequence for delivery to the-digital-to-analog converter over the transceiver interface when the monitor detects the data starvation condition, the synthesized transmit sample sequence being essentially free of timing information; and
a second synthesizer designed to synthesize a received data sequence for delivery on the modem receive channel to the central processing unit through the CPU interface when the monitor detects the data starvation condition, the synthesized received data sequence imperfectly approximating an echo of the transmit channel, synthesis of the received data sequence being based on the adapted parameters of the echo cancellation filter. - View Dependent Claims (2, 3)
the imperfectly approximated echo reflects an intentional misadjustment, induced by one or more of (1) ignoring components of the data sequence received from a far modem, and (2) selecting a filter parameter to preserve a misadaptation of the echo cancellation filter.
-
-
3. The service clip of claim 1, wherein:
the synthesized transmit sample sequence is synthesized from transmit samples drawn to provide roughly equal representation of all phases of the transmit signal.
-
4. An apparatus for use with a computer comprising:
-
a monitor for monitoring a modem transmit channel for a data starvation condition, data of the transmit channel produced by a process for execution on the central processing unit of the computer; and
a synthesizer designed to synthesize a received data sequence to be provided to the central processing unit on a modem receive channel when the monitor detects the data starvation condition. - View Dependent Claims (5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
the received data sequence is synthesized to approximate an echo of the transmit channel.
-
-
6. The apparatus of claim 5, wherein:
the synthesized approximate echo reflects an intentional misadjustment induced by ignoring components of the data sequence received on the receive channel.
-
7. The apparatus of claim 5, wherein:
the synthesized approximate echo reflects an intentional misadjustment induced by selecting a filter parameter to preserve a misadaptation of the filter.
-
8. The apparatus of claim 4, wherein:
the apparatus is embodied in a coprocessor for installation in a chassis of the computer.
-
9. The apparatus of claim 8, further comprising:
the computer, the central processor of the computer being a microprocessor executing a program performing digital signal processing to synthesize the data of the transmit channel.
-
10. The apparatus of claim 4, wherein:
the data of the transmit channel are generated by a modem transmit process.
-
11. The apparatus of claim 4, further comprising:
a transmit sample synthesizer, responsive to detection of the data starvation condition, and designed to synthesize a substitute waveform sample sequence for transmission over a telecommunications channel, the synthesized waveform sample sequence being essentially free of timing information.
-
12. The apparatus of claim 11, wherein:
the substitute waveform sample sequence is synthesized by averaging the values of several samples from a generated transmit sample sequence.
-
13. The apparatus of claim 12, wherein:
the number of samples averaged corresponds to an oversampling factor of the modem transmit channel.
-
14. The apparatus of claim 12, wherein:
the samples averaged are drawn to provide roughly equal representation of all phases of the transmit signal.
-
15. The apparatus of claim 4, further comprising:
-
circuitry designed to adapt parameters of an echo cancellation filter of the modem receive channel, the adapting being responsive to data transmitted over the transmit channel and received on the receive channel;
the data of the synthesized received data sequence being based on the adapted parameters of the echo cancellation filter.
-
-
16. A method comprising:
-
when a data starvation condition is detected on a modem transmit data channel, synthesizing a data sequence in a receive channel of the modem, the synthesized data sequence being essentially independent of data received on a receive terminal of the modem. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
the synthesized receive data sequence is synthesized to approximate an echo of data transmitted on the transmit data channel.
-
-
18. The method of claim 17, wherein:
the synthesized approximate echo reflects an intentional misadjustment.
-
19. The method of claim 18, wherein:
the intentional misadjustment is induced by ignoring components of the data sequence received from a far modem.
-
20. The method of claim 19, wherein:
the ignored component includes message data from the far modem.
-
21. The method of claim 19, wherein:
the ignored component includes an echo from the far modem.
-
22. The method of claim 18, wherein:
the intentional misadjustment is induced by configuring a filter with a number of taps insufficient to model an impulse response of a round-trip over a transmission channel from the transmit data channel to the receive channel.
-
23. The method of claim 18, wherein:
the intentional misadjustment is induced by selecting a filter adaptation parameter to preserve a misadaptation of the filter.
-
24. The method of claim 23, wherein:
the selected filter adaptation parameter is the filter'"'"'s adaptation mu parameter, with a value selected so that the amplitude of a misadjustment component of an echo approximation is approximately equal to half the amplitude of the receive data sequence.
-
25. The method of claim 23, wherein:
the selected filter adaptation parameter is the filter'"'"'s adaptation mu parameter, with a value selected so that the amplitude of a misadjustment component of an echo approximation is approximately equal to the amplitude of a message signal from a far modem.
-
26. The method of claim 16, further comprising:
detecting the starvation condition when a CODEC demands data from an empty transmit data buffer.
-
27. The method of claim 16, further comprising:
when the monitor detects the data starvation condition, synthesizing a transmit data sequence for conversion by a digital-to-analog converter for transmission on a transmission channel, the synthesized transmit data sequence being essentially free of timing information.
-
28. The method of claim 27, further comprising:
synthesizing the transmit data sequence by averaging the values of several samples from a generated transmit sample sequence.
-
29. The method of claim 28, wherein:
the number of samples averaged corresponds to an oversampling factor of the modem transmit data channel.
-
30. The method of claim 16, further comprising:
-
adapting parameters of an echo cancellation filter of the modem, the adapting being responsive to the data transmitted over the transmit data channel and received on the receive channel; and
synthesizing the synthesized data sequence based on the adapted parameters of the echo cancellation filter.
-
-
31. A service chip for use with a computer, comprising:
-
a first interface designed to receive a transmit sample sequence from a modem sample generator executing on a central processor of the computer;
a second interface for presenting data to a line interface, the line interface including a digital-to-analog converter for converting the transmit sample sequence to analog signals for transmission on a telephone line;
a monitor for monitoring the transmit sample sequence for a data starvation condition; and
a synthesizer designed to synthesize a transmit sample sequence for presentation on the second interface when the monitor detects the data starvation condition, the synthesized transmit sample sequence containing samples other than the transmit sample sequence received at the first interface. - View Dependent Claims (32, 33, 34)
the synthesized transmit sample sequence is essentially free of timing information.
-
-
33. The chip of claim 32, wherein:
the synthesized transmit sample sequence is synthesized from transmit samples drawn to provide roughly equal representation of all phases of the transmit signal.
-
34. The chip of claim 32, further comprising:
the computer, the central processor of the computer being a microprocessor executing a program performing digital signal processing to synthesize the data of the transmit channel.
-
35. A method comprising:
-
adapting parameters of an echo cancellation filter operating between transmit and receive channels of a modem, the adapting being responsive to data transmitted over the transmit channel and received on the receive channel; and
when the transmit channel is disrupted, synthesizing a data sequence in the receive channel, the data of the synthesized sequence being based on the adapted parameters of the echo cancellation filter. - View Dependent Claims (36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47)
the synthesized receive data sequence is synthesized to approximate an echo of data transmitted on the transmit channel.
-
-
37. The method of claim 36, wherein:
the synthesized approximate echo reflects an intentional misadjustment.
-
38. The method of claim 37, wherein:
the intentional misadjustment is induced by ignoring message data from a far modem.
-
39. The method of claim 37, wherein:
the intentional misadjustment is induced by configuring a filter with a number of taps insufficient to model an impulse response of a round-trip over a transmission channel from the transmit channel to the receive channel.
-
40. The method of claim 37, wherein:
the intentional misadjustment is induced by selecting a filter adaptation mu parameter so that the amplitude of a misadjustment component of the echo approximation is approximately equal to half the amplitude of the receive data sequence.
-
41. The method of claim 35, further comprising:
detecting the starvation condition when a CODEC demands data from an empty transmit data buffer.
-
42. The method of claim 35:
-
wherein the disruption is a data starvation condition in the transmit channel;
and further comprising the step of synthesizing a substitute transmit data sequence for transmission over a telecommunications channel.
-
-
43. The method of claim 42, wherein the synthesized substitute transmit data sequence comprises a waveform sample sequence essentially free of modem timing information.
-
44. The method of claim 43, further comprising:
synthesizing the substitute transmit data sequence by averaging the values of several samples from a generated transmit sample sequence.
-
45. The method of claim 44, wherein:
the number of samples averaged corresponds to an oversampling factor of the modem transmit data channel.
-
46. The method of claim 44, wherein:
the samples averaged are drawn to provide roughly equal representation of all phases of the transmit signal.
-
47. The method of claim 42, further comprising:
when the data starvation condition is detected, synthesizing a receive data sequence in the receive channel, the data of the synthesized receive data sequence being based on the adapted parameters of the echo cancellation filter.
-
48. A method comprising the steps of:
-
when a data starvation condition is detected in a modem transmit channel, synthesizing a substitute sequence, consisting essentially of samples of an analog waveform, to be transmitted over a telecommunications channel, the substitute waveform sample sequence beiong substantially free of timing information. - View Dependent Claims (49, 50, 51, 52, 53, 54, 55)
synthesizing each sample of the susbtitute waveform sample sequence be averaging values of several samples from a transmit sample sequence encoding digital data for transmission. -
50. The method of claim 49, wherein:
the number of samples averaged corresponds to an oversampling factor of the modem transmit channel.
-
51. The method of claim 49, wherein:
the samples averaged are drawn to provide roughly equal representation of all phases of a generated transmit sample sequence.
-
52. The method of claim 49, wherein:
the substitute waveform sample sequence is in a form intentionally violating a transmission protocol used by the modem.
-
53. The method of claim 48, further comprising the steps of:
-
adapting parameters of an echo cancellation filter of a receive channel of the modem, the adapting being responsive to data transmitted over the channel of the modem and receive on the receive channel, and when the monitor detects the data starvation condition, synthesizing a receive data sequence of the receive channel, the synthesizing receive data sequence being based on the adapted parameters of the echo cancellation filter.
-
-
54. The method of claim 48, further comprising the steps of:
when a data starvation condition is detected on a modem transmit channel, synthesizing a data sequence on a receive channel of the modem, the synthesized receive data sequence being substantially independent of data received on a receive terminal of the modem.
-
55. The method of claim 48, wherein:
the substituted waveform sample sequence is in a form intentionally violating a transmission protocol of the modem.
-
-
56. A method comprising the step of:
-
when a data starvation condition is detected in a modem transmit channel, synthesizing a substitute waveform sample sequence for transmission over a telecommunications channel, the substitute waveform sample sequence being substantially free of timing information. - View Dependent Claims (57, 58, 59, 60)
synthesizing the substitute waveform sample sequence by averaging values os several samples from a generated transmit sample sequence.
-
-
58. The method of claim 57, wherein:
the number of samples averaged corresponds to an oversampling factor of the modem transmit signal.
-
59. The method of claim 57, wherein:
the samples averaged are drawn to provide roughly equal representation of all phases of the generated transmit sample sequence.
-
60. The method of claim 56, further comprising the steps of:
-
adapting parameters of an echo cancellation filter of a receive channel of a modem, the adapting being responsive to data transmitted over the modem transmit channel of the modem and received on the receive channel; and
when the monitor detected the data starvation condition, synthesizing a receive data sequence in the receive channel, the synthesized receive data sequence being based on the adapted parameters of the echo cancellation filter.
-
-
61. An apparatus, comprising:
-
a transmit channel of a modem designed to transmit over a telecommunications channel, the transmission observing a modem transmissiono protocol;
a synthesizer designed to respond to detection of a disruption in the modem transmit channel synthesizing a substitute waveform sample sequence for transmission over the telecommunications channel, the substitute waveform sample sequence being substantially free of timing information. - View Dependent Claims (62, 63, 64, 65, 66)
circuitry designed to adapt parameters of an echo cancellation filter of a receive channel of the modem, the adapting being responsive to data transmitted over the modem transmit channel and received on the receive channel; and
a second synthesizer designed to synthesized a receive data sequence for delivery on the modem receive channel to a computer when the disruption is detected, synthesis of the receive data sequence being based on the adapted parameters of the acho cancellation filter.
-
-
64. The apparatus of claim 61, wherein the substitute waveform sample sequence is designed to allow a timing recovery component of a remote modem to coast.
-
65. The apparatus of claim 61, further comprising:
circuitry responsive to detection of a data starvation condition on a modem transmit channel, and designed to synthesize a receive data sequence on a receive channel of the modem, the synthesized receive data sequence beign substantially independent of data received on a receive terminal of the modem.
-
66. The apparatus of claim 61, wherein:
the substitute waveform sample sequence is in a form intentionally violating a transmission protocol of the modem.
-
67. A method comprising the steps of:
-
transmitting data from a transmit channel of a modem over a telecommunications channel, the transmission observing a modem transmission protocol; and
when a disruption is detected in the modem transmit channel, synthesizing a substitute transmit data sequence for transmission over the telecommunications channel, the synthesized substitute transmit data sequence being in a form intentionally violating the modem transmission protocol. - View Dependent Claims (68, 69, 70, 71, 72, 73, 74)
synthesizing the synthesized substitute transmit data sequence be averaging values of several samples from a generated transmit sample sequence.
-
-
70. The methof of claim 69, wherein:
the number of samples averaged corresponds to an oversampling factor of the modem transmit channel.
-
71. The method of claim 69, wherein:
the samples averaged are drawn to provide roughly equal representation of all phases of the generated transmit sample sequence.
-
72. The method of claim 67, further comprising the steps of:
-
adapting parameters of an echo cancellation filter of a receive channel of the modem, the adapting being responsive to data transmitted over the modem transmit channel and received on the modem receive channel; and
when the monitor detects the message data starvation condition, synthesizing a receive data sequence in the modem receive channel, the synthesized receive data sequence being based on the adapted parameters of the echo cancellation filter.
-
-
73. The method of claim 67, wherein the synthesized substitute transmit data sequence is designed to allow a timing recovery component of a remote modem to coast.
-
74. The method of claim 67, further comprising the steps of:
when the disruption is detected, synthesizing a receive data sequence on a receive channel of the modem, the synthesized receive data sequence being substantially independent of data received on a receive terminal of the modem.
-
75. A transmit channel of a modem, comprising:
-
circuitry and/or software designed to encode data according to a modem transmission protocol for transmission over a telecommunications channel; and
circuitry and/or software effective when a disruption is detected in the modem transmit channel, to synthesize a substitute transmit data sequence for transmission over the telecommunications channel, the synthesizing substitute transmit data sequence being in a form intentionally violating the modem transmission protocol. - View Dependent Claims (76, 77, 78, 79)
circuitry designed to adapt parameters of an echo cancellation filter of a receive channel of the modem, the adapting being responsive to data transmitted over the modem transmit channel and receive on the receive channel; and
a second synthesizer designed to synthesize a receiver data sequence for delivery on the modem receive channel to a computer when the disruption is detected, synthesis of the receive data sequence being based on the adapted parameters of the echo canecellation filter.
-
-
79. The apparatus of claim 75, wherein the synthesized subsitute transmit data sequence is designed to allow a timing recovery component of a remote modem to coast.
Specification