P
USRE46142EExpiredUtilityPatentIndex 83

Modem with voice processing capability

Assignee: BROADCOM CORPPriority: Apr 13, 1999Filed: Sep 9, 2014Granted: Sep 6, 2016
Est. expiryApr 13, 2019(expired)· nominal 20-yr term from priority
Inventors:THI JAMES CRABENKO THEODORE FHARTMAN DAVIDLUKAS ROBERT MUNGER KENNETH JBORAZJANI RAMINLANSING SHANE PLEE ROBERT JBROOKS TODD LMILLER KEVIN L
H04M 7/0087H04B 3/23H04M 9/08H04L 12/28H04L 65/1101H04M 7/006H04M 7/125H04L 12/2801H04J 3/0632H04B 3/234H04L 12/66H04J 3/0638H04L 12/5692H04N 21/4382H04N 7/10H04N 21/2383H04L 65/1069H04L 12/2834
83
PatentIndex Score
7
Cited by
94
References
36
Claims

Abstract

A system is configured to facilitate bidirectional voice communication between a number of data and/or telephony devices.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method of processing signals, the method comprising:
 transmitting a first data signal from a first device to a second device, wherein the first data signal is associated with a first voice signal; 
 receiving a second data signal at the first device from the second device, wherein the second data signal is associated with a second voice signal; 
 filtering, using a digital filter, the second voice signal to thereby generate an estimated echo signal; 
 detecting whether speech is present in the first voice signal; 
 when speech is detected to be present in the first voice signal, disabling adaptation of the digital filter; 
 delaying the first voice signal to thereby output a delayed first voice signal; and 
 subtracting, using a difference operator, the estimated echo signal from the delayed first voice signal, wherein a delay for the delayed first voice signal is chosen such that the disabling adaptation occurs prior to the delayed first voice signal reaching the difference operator when speech is detected to be present in the first voice signal. 
 
     
     
       2. The method of  claim 1 , further comprising:
 converting the first voice signal into the first data signal; and 
 converting the second data signal into the second voice signal. 
 
     
     
       3. The method of  claim 1 , wherein:
 the first data signal is transmitted over a local area network; and 
 the second data signal is received from the local area network. 
 
     
     
       4. The method of  claim 1 , wherein:
 the delaying of the first voice signal includes using a look ahead buffer. 
 
     
     
       5. The method of  claim 1 , wherein detecting whether the speech is present in the first voice signal comprises:
 estimating an absolute value of the first voice signal; 
 estimating a maximum parameter of the first voice signal; 
 comparing the estimated absolute value of the first voice signal to the estimated maximum parameter of the first voice signal; and 
 detecting the speech on the first voice signal based on the comparison. 
 
     
     
       6. The method of  claim 1 , further comprising:
 pre-conditioning the first voice signal prior to the detecting whether the speech is present. 
 
     
     
       7. The method of  claim 1 , wherein:
 detecting whether speech is present occurs after subtracting the estimated echo signal from a late point in the first voice signal; and 
 filtering the second voice signal occurs based on speech being detected at an early point in the first voice signal, wherein a time period exists between the early point in the first voice signal and the late point in the first voice signal. 
 
     
     
       8. The method of  claim 1 , further comprising:
 synchronizing the transmitting and the receiving. 
 
     
     
       9. The method of  claim 8 , wherein the synchronizing comprises:
 generating an error signal based on a function of a difference between a first device clock and a second device clock; and 
 fractionally resampling the first voice signal based on a function of the error signal. 
 
     
     
       10. The method of  claim 1 , further comprising:
 determining whether a received signal is associated with a voice call or associated with a machine communication. 
 
     
     
       11. The method of  claim 1 , wherein the first device and the second device are connected to a packet based network. 
     
     
       12. The method of  claim 11 , wherein the packet based network communicates data modulated at a frequency above a frequency of a voiceband signal. 
     
     
       13. The method of  claim 1 , further comprising:
 modulating the first data signal flowing over a local area network from the first device; and 
 demodulating the second data signal flowing from over the local area network to the first device. 
 
     
     
       14. The method of  claim 1 , further comprising:
 adapting the digital filter when speech is not detected to be present. 
 
     
     
       15. The method of  claim 1 , further comprising:
 transmitting a grant receive value to the second device; and 
 receiving packets in the second data signal from the second device in accordance with the grant receive value, wherein the packets arrive prior to a subsequent grant. 
 
     
     
       16. A method of processing signals, the method comprising:
 transmitting a first data signal from a first device to a second device, wherein the first data signal is associated with a first voice signal; 
 receiving a second data signal at the first device from the second device, wherein the second data signal is associated with a second voice signal; 
 detecting whether speech is present in the first voice signal; 
 when speech is detected to be present, subtracting an estimated echo signal from the first voice signal, wherein the estimated echo signal is generated by filtering the second voice signal with a digital filter; 
 transmitting a grant receive value to the second device; 
 receiving packets in the second data signal from the second device in accordance with the grant receive value, wherein the packets arrive prior to a subsequent grant; and 
 generating a packet assembly start time based on an offset value, the grant receive value, a packet assembly overhead, a queuing latency and a transmission time. 
 
     
     
       17. The method of  claim 1 , further comprising:
 receiving a grant receive value from the second device; and 
 transmitting packets in the first data signal to the second device in accordance with the grant receive value, wherein the packets are transmitted prior to a subsequent grant. 
 
     
     
       18. A method of processing signals, the method comprising:
 transmitting a first data signal from a first device to a second device, wherein the first data signal is associated with a first voice signal; 
 receiving a second data signal at the first device from the second device, wherein the second data signal is associated with a second voice signal; 
 detecting whether speech is present in the first voice signal; 
 when speech is detected to be present, subtracting an estimated echo signal from the first voice signal, wherein the estimated echo signal is generated by filtering the second voice signal with a digital filter; 
 receiving a grant receive value from the second device; 
 transmitting packets in the first data signal to the second device in accordance with the grant receive value, wherein the packets are transmitted prior to a subsequent grant; and 
 generating a packet assembly start time based on an offset value, the grant receive value, a packet assembly overhead, a queuing latency and a transmission time. 
 
     
     
       19. A system for processing signals, the system comprising:
 at least one processor for use in a first device, said at least one processor being configured to:
 transmit a first data signal destined for a second device, wherein the first data signal is associated with a first voice signal; 
 receive a second data signal from the second device, wherein the second data signal is associated with a second voice signal; 
 detect whether speech is present in the first voice signal; 
 filter the second voice signal with a digital filter, thereby generating an estimated echo signal; 
 when speech is detected to be present in the first voice signal, disable adaptation of the digital filter; 
 delay the first voice signal to output a delayed first voice signal; and 
 subtract, using a difference operator, the estimated echo signal from the delayed first voice signal, wherein a delay for the delayed first voice signal is chosen such that the adaptation disablement occurs prior to the delayed first voice signal reaching the difference operator when speech is detected to be present in the first voice signal. 
 
 
     
     
       20. The system of  claim 19 , wherein the at least one processor is further configured to:
 convert the first voice signal into the first data signal; and 
 convert the second data signal into the second voice signal. 
 
     
     
       21. The system of  claim 19 , wherein the at least one processor is further configured to:
 transmit the first data signal over a local area network; and 
 receive the second data signal from the local area network. 
 
     
     
       22. The system of  claim 19 , wherein the delay is represented by a predetermined number of samples of the first voice signal. 
     
     
       23. The system of  claim 19 , wherein the at least one processor is further configured to detect whether the speech is present in the first voice signal by:
 estimating an absolute value of the first voice signal; 
 estimating a maximum parameter of the first voice signal; 
 comparing the estimated absolute value of the first voice signal to the estimated maximum parameter of the first voice signal; and 
 detecting the speech on the first voice signal based on the comparison. 
 
     
     
       24. The system of  claim 19 , wherein the at least one processor is further configured to pre-condition the first voice signal prior to the detecting whether the speech is present. 
     
     
       25. The system of  claim 19 , wherein the at least one processor is further configured to:
 detect whether speech is present after subtracting the estimated echo signal from a late point in the first voice signal; and 
 filter the second voice signal based on speech being detected at an early point in the first voice signal, wherein a time period exists between the early point in the first voice signal and the late point in the first voice signal. 
 
     
     
       26. The system of  claim 19 , wherein the at least one processor is further configured to synchronize transmitting and receiving. 
     
     
       27. The system of  claim 26 , wherein the at least one processor is further configured to synchronize by:
 generating an error signal based on a function of a difference between a first device clock and a second device clock; and 
 fractionally resampling the first voice signal based on a function of the error signal. 
 
     
     
       28. The system of  claim 19 , wherein the at least one processor is further configured to determine whether a received signal is associated with a voice call or associated with a machine communication. 
     
     
       29. The system of  claim 19 , wherein the first device and the second device are connected to a packet based network. 
     
     
       30. The system of  claim 29 , wherein the packet based network communicates data modulated at a frequency above a frequency of a voiceband signal. 
     
     
       31. The system of  claim 19 , wherein the at least one processor is further configured to:
 modulate the first data signal flowing over a local area network from the first device; and 
 demodulate the second data signal flowing from over the local area network to the first device. 
 
     
     
       32. The system of  claim 19 , wherein the at least one processor is further configured to adapt the digital filter when speech is not detected to be present. 
     
     
       33. The system of  claim 19 , wherein the at least one processor is further configured to:
 transmit a grant receive value to the second device; and 
 receive packets in the second data signal from the second device in accordance with the grant receive value, wherein the packets arrive prior to a subsequent grant. 
 
     
     
       34. A system for processing signals, the system comprising:
 at least one processor for use in a first device, said at least one processor configured to: 
 transmit a first data signal destined for a second device, wherein the first data signal is associated with a first voice signal; 
 receive a second data signal from the second device, wherein the second data signal is associated with a second voice signal; 
 detect whether speech is present in the first voice signal; 
 filter the second voice signal with a digital filter, thereby generating an estimated echo signal; 
 subtract the estimated echo signal from the first voice signal; 
 transmit a grant receive value to the second device; 
 receive packets in the second data signal from the second device in accordance with the grant receive value, wherein the packets arrive prior to a subsequent grant; and 
 generate a packet assembly start time based on an offset value, the grant receive value, a packet assembly overhead, a queuing latency and a transmission time. 
 
     
     
       35. The system of  claim 19 , wherein the at least one processor is further configured to:
 receive a grant receive value from the second device; and 
 transmit packets in the first data signal to the second device in accordance with the grant receive value, wherein the packets are transmitted prior to a subsequent grant. 
 
     
     
       36. A system for processing signals, the system comprising:
 at least one processor for use in a first device, said at least one processor configured to: 
 transmit a first data signal destined for a second device, wherein the first data signal is associated with a first voice signal; 
 receive a second data signal from the second device, wherein the second data signal is associated with a second voice signal; 
 detect whether speech is present in the first voice signal; filter the second voice signal with a digital filter, thereby generating an estimated echo signal; 
 subtract the estimated echo signal from the first voice signal; 
 receive a grant receive value from the second device; 
 transmit packets in the first data signal to the second device in accordance with the grant receive value, wherein the packets are transmitted prior to a subsequent grant; and 
 generate a packet assembly start time based on an offset value, the grant receive value, a packet assembly overhead, a queuing latency and a transmission time.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.