The above stated application is hereby incorporated herein by reference in its entirety.
Certain embodiments of the invention relate to the processing of audio signals. More specifically, certain embodiments of the invention relate to a method and system for an improved CODEC with a polyringer.
In audio applications, many audio interface and processing systems may be required to provide duplex operations, which comprise the capability to collect audio information through a sensor or microphone while at the same time being able to drive a speaker or earpiece with processed audio data. In order to carry out these operations, audio interface and processing systems may utilize audio COding and DECoding (CODEC) devices that provide appropriate gain, filtering, and/or analog-to-digital conversion (ADC) in the uplink direction to an audio data processing system and may also provide appropriate gain, filtering, and/or digital-to-analog conversion (DAC) in the downlink direction from the audio data processing system.
The audio interface and processing system 100 in
The added functionality and advanced applications that may be available in novel audio communication systems may require that audio interface and processing systems in wireless devices allow the user to receive additional audio data in order to interact with the added functionality of the applications. However, audio interface and processing systems, and more specifically, CODEC devices, may not provide the user with an interface that may combine audio data with additional information, and may therefore limit the user's ability to utilize interactive functions and applications that may be available in newer audio-based communication systems.
Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with some aspects of the present invention as set forth in the remainder of the present application with reference to the drawings.
Certain embodiments of the invention may be found in a method and system for a CODEC with a polyringer. Aspects of the method may comprise processing digital polyphonic ringer data and digital audio data and modifying a first data rate of the digital polyphonic ringer data and a second data rate of the digital audio data so that they have a common data rate. At least a portion of the processed and modified digital polyphonic ringer data may be added or combined with the processed and modified digital audio data. The method may also comprise converting to analog format, the added portion of the processed and modified digital polyphonic ringer data and the processed and modified digital audio data. The analog conversion may comprise delta-sigma demodulation, current-based digital-to-analog conversion, and switched-capacitor filtering.
The processing of the digital audio data may comprise high-pass filtering, low-pass filtering, and interpolation, where an integer or fractional interpolation factor may be programmed for the interpolation. The high-pass filtering may be performed by an IIR filter, the low-pass filtering may be performed by an IIR filter, and the interpolation may be performed by an audio sinc filter. The processing of the digital polyphonic ringer data may comprise up-sampling, low-pass filtering, compensation filtering, interpolation, and decimation, where an integer or fractional interpolation factor may be programmed for the interpolation and/or the decimation.
Aspects of the system may comprise an audio DAC that processes a plurality of digital polyphonic ringer data and a plurality of digital audio data. The audio DAC may modify a first data rate of the digital polyphonic ringer data and a second data rate of the digital audio data to arrive at a common data rate and may add at least a portion of the processed and modified digital polyphonic ringer data and the processed and modified digital audio data. The audio DAC may convert to analog format, the added portion of the processed and modified digital polyphonic ringer data and the processed and modified digital audio data.
The audio DAC may comprise an IIR HPF filter, an IIR LPF filter, an audio sinc filter, an up-sampler, an FIR COMP, a polyringer sinc filter, a DAC decimator, an adder, a delta-sigma modulator, a current DAC and SC filter, and an RC filter and speaker driver. The IIR HPF filter may high-pass filter the digital audio data and the IIR LPF filter may low-pass filter the digital audio data. The audio sinc filter may modify the data rate in the digital audio data. At least one processor may be utilized to program an integer or fractional interpolation factor for the audio sinc filter.
The up-sampler may modify the data rate in the digital polyphonic ringer data. The FIR COMP filter may low-pass filter and compensate the digital polyphonic ringer data. The polyringer sinc filter and the DAC decimator may also modify the data rate in the digital polyphonic ringer data. At least one processor may be utilized to program an integer or fractional interpolation factor for the polyringer sinc filter and/or the DAC decimator.
These and other advantages, aspects and novel features of the present invention, as well as details of an illustrated embodiment thereof, will be more fully understood from the following description and drawings.
Certain aspects of the invention may be found in a method and system for an improved CODEC with a polyringer. A polyringer is an audio signal with a plurality of audio tones that may be ordered into a plurality of sequences. An audio CODEC may comprise an audio ADC, an audio DAC, and a sidetone generator. The audio DAC may receive from a processor, digital audio data and digital polyphonic ringer data and may process the digital audio and polyphonic ringer data through separate digital filters and digital interpolators. The audio DAC may add the processed digital voice and polyphonic ringer data before analog conversion takes place. This approach may provide the user of an audio interface and processing system with audio and polyphonic ringer data in order to interact with audio-based functions and/or applications that may be available in newer communication systems.
The PGA/MUX 202 may comprise suitable logic, circuitry, and/or code and may be adapted to amplify the analog audio signal from the microphone 102. The PGA/MUX 202 may be adapted to select from a plurality of audio sources and the amplification provided by the PGA/MUX 202 may be programmable. The PGA/MUX 202 may transfer at least a portion of the analog audio signal to the sidetone generator 112. The ΔΣ modulator 204 may comprise suitable logic, circuitry, and/or code and may be adapted to convert the analog audio signal from the PGA/MUX 202 to a digital audio data. For example, the ΔΣ modulator 204 may provide an oversampled pulse code modulated (PCM) audio data where the digital data may be a 13-bit PCM signal at 8 KHz. The sampling rate provided by the ΔΣ modulator 204 may be much greater than the audio signal bandwidth so that aliasing may not become a factor.
The ADC decimator 206 may comprise suitable logic, circuitry, and/or code and may be adapted to reduce the sampling rate of the audio data output from the ΔΣ modulator 204 by an integer or fractional decimation factor. The ADC decimator 206 may be implemented as a sinc filter and the sampling rate reduction provided by the ADC decimator 206 may be programmable. The IIR LPF 208 may comprise suitable logic, circuitry, and/or code and may be adapted to digitally low-pass filter the audio data output from the ADC decimator 206. The IIR HPF 210 may comprise suitable logic, circuitry, and/or code and may be adapted to digitally high-pass filter the audio data output from the IIR LPF 208. The combined bandpass function provided by the IIR LPF 208 and the IIR HPF 210 may be provided by a digital band pass filter. The IIR HPF 210 may transfer the digitally filtered audio data to the processor 108 and/or to other audio data processing devices, such as a digital signal processor (DSP), for further processing.
The IIR HPF 212 may comprise suitable logic, circuitry, and/or code and may be adapted to digitally high-pass filter the audio data received from the output of an audio data processing device. The audio data processing device may comprise the processor 108. The IIR LPF 214 may comprise suitable logic, circuitry, and/or code and may be adapted to digitally low-pass filter the audio data output from the IIR LPF 212. The combined bandpass function provided by the IIR HPF 212 and the IIR LPF 214 may be provided by a digital band pass filter. The voice sinc filter 216 may comprise suitable logic, circuitry, and/or code and may be adapted to increase the sampling rate of the audio data output from the IIR LPF 214 by an integer or fractional interpolation factor.
The up-sampler 226 may comprise suitable logic, circuitry, and/or code and may be adapted to increase the sampling rate of the polyphonic ringer data from the output of an audio data processing device. The audio data processing device may comprise the processor 108. The FIR COMP filter 228 may comprise suitable logic, circuitry, and/or code and may be adapted to low-pass filter and to provide group delay compensation to the polyphonic ringer data. The polyphonic sinc filter 230 may comprise suitable logic, circuitry, and/or code and may be adapted to increase the sampling rate of the polyphonic ringer data output from the FIR COMP filter 228 by an integer or fractional interpolation factor. The DAC decimator 232 may comprise suitable logic, circuitry, and/or code and may be adapted to reduce the sampling rate of the polyphonic ringer data output from the polyphonic sinc filter 230 by an integer or fractional decimation factor.
The adder 218 may comprise suitable logic, circuitry, and/or code and may be adapted to add the output of the audio data from the output of the voice sinc filter and the polyphonic ringer data from the output of the DAC decimator 232 after a common data rate is achieved for the audio data and the polyphonic ringer data. The ΔΣ demodulator 220 may comprise suitable logic, circuitry, and/or code and may be adapted to demodulate audio and polyphonic ringer data from the adder 218. The current DAC and SC filter 222 may comprise suitable logic, circuitry, and/or code and may be adapted convert the digital output of the ΔΣ demodulator 220 to an analog value and to smooth out the analog value by a filtering operation. The RC filter and speaker driver 224 may comprise suitable logic, circuitry, and/or code and may be adapted to filter and provide amplification to the analog audio data from the output of the current DAC and SC filter 222 and from the sidetone generator 112 in order to drive the speaker 104. The amplification or gain provided by the RC filter and speaker driver 224 may be programmable. The RC filter and speaker driver 224 may be used to drive a plurality of speakers and/or earpieces and may be programmed to select at least one of the plurality of speakers and/or earpieces.
where Bi0, Bi1, and Bi2 correspond to the numerator coefficients in the ith biquad filter, Ai0, Ai1, and Ai2 correspond to the denominator coefficients in the ith biquad filter, and Z−1 and Z−2 correspond to one and two unit delays respectively. The coefficients of the transfer function may be chosen so that the biquad filter may perform a plurality of filtering operations and may be stored in, for example, 15-bit two's complement format. More complex transfer functions may be achieved by placing multiple biquad filters in series and achieving a total transfer function that corresponds to multiplying the transfer functions of the individual biquad filters.
For example, the filter structure 300 shown in
In another embodiment of the filter structure 300, the first five biquad filters may be utilized to implement the IIR LPF 208 and the last two biquad filters, corresponding to the blocks R5, R12, R6, and R13, may be utilized to implement the IIR HPF 210. In this example, the fifth biquad in IIR LPF 208, corresponding to the blocks R4 and R11, may be utilized to decimate a 40 KHz digital audio data from the ADC decimator 206 to an 8 KHz digital audio data, by, for example, selecting 1 out of every five digital samples. In another embodiment of the filter structure 300, the FIR COMP filter 228 may be implemented by utilizing five biquad filters, where the first four biquad filters may be utilized to implement an IIR low-pass filter and the last or fifth biquad filter may be utilized to implement an FIR compensation filter. Biquad filter coefficients may be determined based on fixed bit arithmetic considerations for IIR filter design, the order of the biquad filters, and the gains at each stage in order to limit overflows and quantization effects. Moreover, biquad filter coefficients may be determined to avoid high-Q poles that may result in ringing and instability, and to accommodate for echo suppression requirements in the audio system.
In an exemplary operation and embodiment of the audio ADC 110, the microphone 102 may receive audio information from the local user and/or surrounding environment in the form of an analog signal or analog data and may transfer that analog data to the audio ADC 110. When the PGA/MUX 202 in the audio ADC 110 receives the analog data from the microphone 102, it may amplify the analog data and may then send at least a portion of the analog data to the sidetone generator 112 and to the ΔΣ modulator 204. When the loop between the microphone 102 and the speaker 104 is enabled through by the sidetone generator 112, the portion of the analog data received by the PGA/MUX 202 may be sent to the RC filter and speaker driver 224 so that the local user may hear his or her own voice. The ΔΣ modulator 204 may sample the analog data at a rate of, for example, 13 MHz, and may produce a digital audio output of 4 bits per coded audio sample. The ADC decimator 206 may receive the digital audio data from the ΔΣ modulator 204 and may decimate or reduce the sampling rate from 13 MHz to 40 KHz, for example, corresponding to a decimation factor of 325. The output of the ADC decimator 206 may be a 17-bit digital audio data.
In this exemplary operation and embodiment of the audio ADC 110, the IIR LPF 208 may provide a low-pass frequency of 3.3 KHz and may down-sample the audio data to 8 KHz, corresponding to a decimation factor of 5. The output of the IIR LPF 208 may be a 24-bit digital audio data. The IIR HPF 210 may provide a high-pass frequency of, for example, 200 Hz and may maintain the 8 KHz sampling rate provided by the IIR LPF 208. The output of the IIR HPF 210 may be a 24-bit digital audio data. In another embodiment of the invention, the rate matching necessary between the output of the ADC decimator 206 and the input to the processor 108 may be distributed between the IIR LPF 208 and the IIR HPF 210. The signal-to-noise ratio may be greater than 62 dB at maximum input for this exemplary implementation of the ADC 110.
In an exemplary operation and embodiment of the audio DAC 114, the processor 108 and/or other audio data processing devices may send audio data to the IIR HPF 212 and polyphonic ringer data to the up-sampler 226. The digital audio data may be 13-bits wide and may be sent at a sampling rate of 8 KHz, while the digital polyphonic ringer data may be 16-bits wide and may be sent at a sampling rate of 22.0588 KHz. The IIR HPF 212 may provide a high-pass frequency of 200 Hz and may interpolate the 8 KHz digital audio data to a sampling rate of 40 KHz. The up-sampler 226 may provide an interpolation factor of 4 in order to up-sample the digital polyphonic ringer data to 88 KHz. The output of the IIR HPF 212 and the up-sampler 226 may be 16-bit digital audio data and 16-bit polyphonic ringer data respectively.
In this exemplary operation and embodiment of the audio DAC 114, the IIR LPF 214 may maintain the sampling rate of 40 KHz provided by the IIR HPF 212 and may provide a 20-bit digital audio data output. The FIR COMP filter 228 may maintain the sampling rate of 40 KHz provided by the up-sampler 226 and may provide a 20-bit digital polyphonic ringer data output. The voice sinc filter 216 may interpolate the digital audio data from the IIR LPF 214 to a sampling rate of 2 MHz, corresponding to an interpolation factor of 50, and may provide a 21-bit digital audio data output. The polyringer sinc filter 230 may interpolate the digital polyphonic ringer data from the FIR COMP filter 228 to a sampling rate of 6 MHz, corresponding to an interpolation factor of 150. The DAC decimator 232 may reduce the sampling rate of the digital polyphonic ringer data to 2 MHz, corresponding to a decimation factor of 3, and may provide a 21-bit digital polyphonic ringer data output.
The adder 218 may, for example, add the 2 MHz, 21-bit outputs from the voice sinc filter 216 and the DAC decimator 232, and may interpolate the result to provide a 26 MHz, 21-bit digital output, corresponding to an interpolation factor of 13. The output of the ΔΣ demodulator 220 may be down-sampled to 13 MHz, corresponding to a decimation factor of 2. The output of the ΔΣ demodulator 220 may be, for example, a 9-level representation of the audio and polyphonic ringer data. The current DAC and SC filter 222 may utilize, for example, 32 current elements to convert the 9 level representation of the audio and polyphonic ringer data to an analog value. The RC filter and speaker driver 224 may amplify and filter the analog value provided by the current DAC and SC filter 222 to drive the speaker 104 and/or to drive a plurality of other audio devices. The signal-to-noise ratio may be greater than 62 dB at maximum input for this exemplary implementation of the DAC 114.
The method and system provided may allow a user of an audio interface and processing system to receive audio and polyphonic ringer data in order to interact with audio-based functions and/or applications that may be available in newer communication systems.
Accordingly, the present invention may be realized in hardware, software, or a combination of hardware and software. The present invention may be realized in a centralized fashion in at least one computer system, or in a distributed fashion where different elements are spread across several interconnected computer systems. Any kind of computer system or other apparatus adapted for carrying out the methods described herein is suited. A typical combination of hardware and software may be a general-purpose computer system with a computer program that, when being loaded and executed, controls the computer system such that it carries out the methods described herein.
The present invention may also be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods. Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form.
While the present invention has been described with reference to certain embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the scope of the present invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the present invention without departing from its scope. Therefore, it is intended that the present invention not be limited to the particular embodiment disclosed, but that the present invention will include all embodiments falling within the scope of the appended claims.
This application makes reference to, claims priority to, and claims the benefit of U.S. Provisional Application Ser. No. 60/579,272 (Attorney Docket No. 15608US01), entitled “Method and System for Improved CODEC with Polyringer,” filed on Jun. 14, 2004.
Number | Date | Country | |
---|---|---|---|
60579272 | Jun 2004 | US |