1 / 14

Pre-Processing Filter for Audio Applications

Pre-Processing Filter for Audio Applications. By Nathan Shaw, Lerzan Celikkanat, and Xiangfeng Wang. ELEC 422 VLSI Design 1 Fall 2005. Overview. Implementing a low pass FIR filter 4 taps 8-bit I/O, Two’s Complement Major Components: FIFO 8-bit multiplier 16-bit adder

ike
Download Presentation

Pre-Processing Filter for Audio Applications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Pre-Processing Filter for Audio Applications By Nathan Shaw, Lerzan Celikkanat, and Xiangfeng Wang ELEC 422 VLSI Design 1 Fall 2005

  2. Overview • Implementing a low pass FIR filter • 4 taps • 8-bit I/O, Two’s Complement • Major Components: • FIFO • 8-bit multiplier • 16-bit adder • PLA: control unit/ROM

  3. Filter Block Diagram

  4. ROM • 6 words x 8-bits • Coefficient determined by Control Unit by way ofdecoder

  5. Control Unit • INPUTS: Restart FailSafe NewInput; • OUTPUTS: S1 S2 S3 C0 C1 C2 Shift LoadI LoadC LoadMul LoadX LoadSum LoadFinal Clr1 Clr2

  6. State Machine IDLE Clear registers Load RAM with zeros GOTSIGNAL Load signal S2=0 SHIFT 3 times (d,1) (0,d) WAIT Select coeff α3 (1,d) MUL LoadI=1 LoadC=1 BYPASS S3=1 LoadI=1 Shift Select next coeff FINAL LoadFinal=1 ADD LoadMul=1 LoadX=1 STORE LoadX=1 Clr1=1 X 4 SUM LoadSum=1

  7. 16-bit Carry Ripple Adder • Composed of four 4-bit carry ripple adders • Two 16-bit inputs and one 16-bit output

  8. Multiplier • 8 bit x 8 bit • 16 bit output

  9. Multiplier

  10. FIFO • 8 elements deep • 8 bits wide

  11. Output => α3*x0 + α2*x1 + α1*x2 + α0*x3 + x4 shift1 shift2 shift3 shift4 shift5 shift6 shift7 * α3 * α2 * α1 * α0 * 1

  12. Outputs • T0 => x0 • T1 => α0*x0+ x1 • T2 => α1*x0+ α0*x1+ x2 • T3 => α2*x0+ α1*x1+ α0*x2 + x3 • T3 => α3*x0+ α2*x1+ α1*x2 + α0*x3 + x4 • Tn => α3*xn-3+ α2*xn-2+ α1*xn-1 + xn

More Related