Friday, October 29, 2010

Class: 10/29/2010

  • Discussed stereo decoding (Lab 3)
  • Sampling rate conversion by integer factor
  • Filter design for sampling rate conversion by an integer factor

Monday, October 25, 2010

Class: 10/25/2010

  • Sampling and reconstruction
  • Anti-alias filter design
  • Reconstruction filter design
  • Discussion of Midterm 1

Friday, October 22, 2010

Class: 10/22/2010

  • Began discussion of sampling of continuous-time signals.
  • Aliasing.
  • Filtering prior to sampling to avoid aliasing.

Wednesday, October 20, 2010

Class: 10/20/2010

  • Goertzel algorithm
  • Chirp transform algorithm

Lab 3 Question

Dr. Gunther,
I am working on Lab3.  I have some questions, I think I have confused myself.
1.    In regards to the equations given in class to develop the AGC.
a.      In “mt” and “qt”: is “t” value the sample number and “xt” is the value coming out of the second band pass filter?

Yes.  xt is x(t) which is the sample value at time t of the signal that you want to compute statistics on.
b.    Both mt and qt depend on the previous value of mt and qt, so we can assume mt and qt start at out with values of zero?

Yes. That will be fine.

c.     For every point coming out of the 2nd band pass filter should be multiplied by (1/sqrt(2))*(1/sqrt(qt-mt^2))*xt for qt and mt at t? 

Yes. This is the scaling that you want to apply to the signal that you want to normalize.  Note that you apply the scaling after you have used x(t) in the computation of the statistics m(t) and q(t).  If you apply the scale factor before you insert x(t) into the updates, it will goof everything up.
2.    After the gain control (question one) I need to sum this row with the filter and delayed L-R path.  Why does it need to be put through another Filter?

a. Remember that there is delay associated with all filtering operations.
b. In this application, signals need to stay "time aligned".  Because a filter in one branch of the processing introduces delay, we have to insert an equivalent amount of delay into the other branch of processing to keep signals time aligned.
c. A filter can be used to implement a pure delay.  For example, if filter A introduces d samples of delay, then a filter with impulse response [0 0 ... 0 1] is a pure delay all-pass filter, where the number of zeros inserted is equal to d, the delay.  No zeros gives no delay, one zero gives a delay of one sample, and so on.  The filter [0 0 ... 0 1] is delay matched to the other filter so that if you put filter A in one branch of processing, then you need to put the pure delay filter in the other branch of processing so that the signals stay time aligned at the filter outputs.


3.    If I am using n=500 for my filters, the delay filter should have 499 zero and then a 1? Or should be only have 498 zeros and then the one?

Use odd length FIR filters that are symmetric about the center tap.  Then the delay is easy to calculate.  If the length of the filter is N (where the filter has a symmetric impulse response and N is odd), then the delay is (N-1)/2.  So a filter with matching delay will have impulse response of:

[0 0 <--- (N-1)/2 zeros ---> 0 0 1].


4.    On the request to turn in the frequency response plot of the filter, does plot in the attachment met this requirement?

Yes, it looks fine, but I'd prefer that you use the fft function in Matlab and produce your own plot instead of using the freqz function.  The frequency axis should go from 0 to 0.5 or from -0.5 to 0.5 [cycles/sample].

Thursday, October 14, 2010

Class: 10/14/2010

  • Radix-2 FFT
  • Decimation in time and decimation in frequency
  • Bit reversed indexing
  • In place computation
  • Computational complexity: O( [N/2] log_2(N) )
  • Split radix algorithms mentioned

Wednesday, October 13, 2010

Class: 10/11/2010

  • Short-time Fourier transform
  • Spectrograms
  • Initial discussion of fast Fourier transform (FFT)

Class: 10/13/2010

  • FFT discussion - understanding divide and conquer.
  • 2-way and 4-way butterfly circuits.

Tuesday, October 12, 2010

Lab 3

Lab 3 about filtering techniques to separate left and right audio channels is due this Friday Oct. 15, 2010. Are we going to talk about in class how to do this? We were going to do it last week, but we never did.

Friday, October 8, 2010

Class: 10/08/2010

  • Computing the DFT in Matlab via the FFT function.
  • Window functions in Matlab
  • Discussion of Midterm Exam 1 (due Monday, 11 October 2010)
  • Overlap-add and overlap-save convolution

Wednesday, October 6, 2010

Class: 10/06/2010

  • Linear and circular convolution.
  • Linear convolution via the DFT.
  • Matrix-vector representations of linear and circular convolution.

Monday, October 4, 2010

Class: 10/04/2010

  • Windows (shape and length)
  • Spectral leakage
  • Spectral resolution
  • Zero padding