USRE43489EExpiredUtility

Systems and methods for implementing a sample rate converter using hardware and software to maximize speed and flexibility

44
Assignee: ANDERSEN JACK BPriority: Mar 21, 2003Filed: Jan 23, 2009Granted: Jun 26, 2012
Est. expiryMar 21, 2023(expired)· nominal 20-yr term from priority
H03H 17/0621H03H 2218/06
44
PatentIndex Score
1
Cited by
26
References
22
Claims

Abstract

Systems and methods for converting a digital input data stream from a first sample rate to a second, fixed sample rate using a combination of hardware and software components. In one embodiment, a system includes a rate estimator configured to estimate the sample rate of an input data stream, a phase selection unit configured to select a phase for interpolation of a set of polyphase filter coefficients based on the estimated sample rate, a coefficient interpolator configured to interpolate the filter coefficients based on the selected phase, and a convolution unit configured to convolve the interpolated filter coefficients with samples of the input data stream to produce samples of a re-sampled output data stream. One or more hardware or software components are shared between multiple channels that can process data streams having independently variable sample rates.

Claims

exact text as granted — not AI-modified
1. A sample rate converter comprising:
 a plurality of sample rate converter components, including:
 a rate estimator; 
 a low pass filter, wherein an output of the rate estimator is passed through the low pass filter; 
 a phase selection unit, wherein an output of the low pass filter is provided to the phase selection unit; 
 a polyphase coefficient interpolator, wherein a set of interpolated polyphase filter coefficients is generated by the polyphase coefficient interpolator based upon an output of the phase selection unit; 
 a convolution unit configured to convolve the interpolated polyphase filter coefficients with a corresponding sample samples of an input data stream; 
 an input FIFO configured to receive samples of the input data stream and to provide the samples of the input data stream to the convolution unit; 
 an output FIFO configured to receive samples of an output data stream from the convolution unit; and 
 a FIFO management unit coupled to the input and output FIFOs and configured to provide feedback to the low pass filter; 
 
 wherein a first portion of the components comprise hardware components; and 
 wherein a second portion of the components comprise software components. 
 
     
     
       2. The sample rate converter of  claim 1 , wherein the rate estimator, the low pass filter and the polyphase coefficient interpolator are implemented in hardware. 
     
     
       3. The sample rate converter of  claim 1 , wherein the phase selection unit, the convolution unit and the FIFO management unit are implemented in software. 
     
     
       4. The sample rate converter of  claim 1 , wherein the rate estimator comprises a counter which is configured to count sample periods of the input data stream and wherein an input sample rate is computed by a software component based upon a value of the counter. 
     
     
       5. The sample rate converter of  claim 1 , wherein the sample rate converter comprises two or more channels for processing input data streams, wherein the two or more channels share one or more of the plurality of sample rate converter components. 
     
     
       6. The sample rate converter of  claim 1 , wherein the sample rate converter comprises two or more channels for processing input data streams, wherein each of the two or more channels is configured to process an input data stream having a sample rate that is independent of sample rates of input data streams processed by the other channels. 
     
     
       7. The sample rate converter of  claim 6 , wherein each channel includes an independent rate estimator. 
     
     
       8. The sample rate converter of  claim 7 , wherein each rate estimator includes a separate sample period counter. 
     
     
       9. The sample rate converter of  claim 8 , wherein each sample period counter produces a separate count that is used to estimate a sample rate of eachthe corresponding input data streamis determined by reading each sample period counter with a common software component. 
     
     
       10. The sample rate converter of  claim 8 , wherein one of the channels is a primary channel and the remainder of the channels are secondary channels, wherein a sample rate is estimated for the primary channel, wherein for each secondary channel a ratio of a corresponding sample period counter to the primary channel sample period counter is determined, and wherein a sample rate for each secondary channel is determined to be the sample rate estimated for the primary channel times the ratio. 
     
     
       11. The sample rate converter of  claim 6 , wherein each channel implements a polyphase filter, wherein coefficients for each polyphase filter implementation are interpolated from a common set of filter coefficients. 
     
     
       12. The sample rate converter of  claim 1 , wherein the sample rate converter is coupled to a pulse width modulated audio amplifier. 
     
     
       13. A sample rate converter that converts a digital input data stream to a specified output sample rate (Fout), the sample rate converter comprising:
 a sample rate estimation path configured to receive frame sync signals associated with the input data stream and to estimate an input sample rate (Fin) of the input data stream;   an audio data path including
 an input FIFO configured to receive samples of the input data stream; 
 a convolution unit configured to receive an output of the input FIFO and to convolve the samples of the input data stream with filter coefficients; and 
 an output FIFO configured to receive an output of the convolution unit, wherein samples can be read out of the output FIFO at the output sample rate (Fout); and 
   a FIFO management unit, coupled to the input FIFO and the output FIFO, and configured to provide feedback to at least one component of the rate estimation path.   
     
     
       14. The sample rate converter of claim 13, wherein the feedback is used to prevent overflow and underflow of the input FIFO and the output FIFO. 
     
     
       15. The sample rate converter of claim 13, wherein:
 the rate estimation path includes a low pass filter that filters counts used to estimate the input sample rate (Fin) of the input data stream; and   the feedback is provided to the low pass filter.   
     
     
       16. The sample rate converter of claim 13, wherein the filter coefficients comprise interpolated polyphase filter coefficients. 
     
     
       17. The sample rate converter of claim 13, wherein the rate estimation path includes:
 a rate estimator, a low pass filter and a polyphase coefficient interpolator, which are implemented in hardware; and   a phase selection unit, which is implemented in software.   
     
     
       18. The sample rate converter of claim 17, wherein:
 the convolution unit, of the audio data path, is implemented in software; and   the FIFO management unit is implemented in software.   
     
     
       19. A method for converting a digital input data stream to a specified output sample rate (Fout), the method comprising:
 estimating an input sample rate (Fin) of the input data stream based on frame sync signals associated with the input data stream;   receiving, at an input FIFO, samples of the input data stream;   convolving the samples of the input data stream, that are output from the input FIFO, with filter coefficients; and   receiving, at an output FIFO, samples that have been convolved with the filter coefficients, wherein samples can be read out of the output FIFO at the output sample rate (Fout);   managing a flow of samples through the input FIFO and the output FIFO; and   adjusting the estimated input sample rate (Fin) based on the flow of samples through the input FIFO and output FIFO.   
     
     
       20. The method of claim 19, wherein the estimating includes:
 producing a count based on the frame sync signals associated with the input data stream;   filtering the count; and   estimating the input sample rate (Fin) of the input data stream based on the filtered count.   
     
     
       21. The method of claim 20, wherein the adjusting the estimating comprises adjusting the filtering of the count. 
     
     
       22. A digital audio amplification system, comprising:
 a sample rate converter that converts a digital input data stream from an input sample rate (Fin) to a specified output sample rate (Fout);   an audio effects subsystem that receives the digital data stream having the specified output sample rate (Fout), from the sample rate converter, and performs processing on the digital data stream to produce a processed digital data stream;   a pulse width modulator that converts the processed digital data stream to a pulse width modulated signal; and   an output stage that receives the pulse width modulated signal and outputs a signal that can be used to drive a load;   wherein the sample rate converter comprises
 a sample rate estimation path configured to receive frame sync signals associated with the input data stream and to estimate the input sample rate (Fin) of the input data stream; 
 an audio data path including
 an input FIFO configured to receive samples of the input data stream; 
 a convolution unit configured to receive an output of the input FIFO and to convolve the samples of the input data stream with filter coefficients; and 
 an output FIFO configured to receive an output of the convolution unit, wherein samples can be read out of the output FIFO at the output sample rate (Fout); and 
 
 a FIFO management unit, coupled to the input FIFO and the output FIFO, and configured to provide feedback to at least one component of the rate estimation path.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.