EE 451
Lab 9: Reverberation on the 56000

``Echo'' and ``reverb'' are interesting sound effects which can be generated easily with the 56001. An echo is generated by adding a delayed output signal to the input signal:

y(n) = x(n) + a y(n-D) (1)

where a is a constant (say, 0.5), and n is large enough to produce delays of, say, 50 ms to 500 ms. Reverb uses the same algorithm, but allows you to vary the value of a, i.e., the intensity of the echo.

A reverberation generated using Equation 1 has a disadvantage in that the frequency response is not flat -- i.e., some frequencies will be enhanced over others. This can be fixed using an equation of the form

y(n) = a y(n-D) - a x(n) + x(n-D) (2)

This gives |H(w)| = 1 for all w.

  1. You should know enough about the 56000 to implement an echo generator. The 56000 boards in the DSP lab are set up to have 16 kB of memory in the X data bank. At a 48,000 Hz sampling frequency, this will allow delays of 340 ms. To allow for longer delays, you can set up the 56000 to sample at 16 kHz. This will allow delays of up to one second, which will make a nice echo, and have a Nyquist frequency of 8 kHz. Use the 56000 to implement the above difference Equation 1, and try out your echo generator on an audio signal, using several different values for a and D.

  2. Implement a reverb using Equation 2.

Wed Dec 4 1996
Copyright © 1996, New Mexico Tech