19
Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

  • View
    217

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

Digital Signal Processing

Jill, Jon, Kilo, RogerDesign Presentation

Spring ’06

Page 2: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

Overview

Project Overview Project Approach

Block diagram

Problems Final Status

Sound effects

The future Demo

Page 3: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

Project Overview

Digital Signal Processing (DSP) Synthesize audio signals with DSP chip in real-

time to produce various sound effects -> make a guitar pedal

TI-C6713 DSP chip Features of the kit:

DA & AD converters, C6713 digital signal processor, anti-aliasing input filter, reconstruction output filter already on the board

Comes with an audio headphone and microphone ports built on

Plug the guitar in the mic port and the speaker into the headphone output port

Page 4: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

DSP board

Page 5: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

Project Approach

Figure out how to make distortion sound effect using Matlab; general research on various sound effects

Translate Matlab code to C code for DSP board Code Composer Studio

Test I/O and master the DSP board Use Matlab to design more sound effects Implement codes onto DSP board Jill demonstrates the realized sound effects

Page 6: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

Project Approach

Jihl, Jahn,

Kiloh, Rahjah

Kilo, Roger

Jill, Jon

Simulations

C code

Simulations

Work on Matlab simulations and Code Composer Studio design

implementations simultaneously.

1st Stage

2nd Stage

Page 7: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

Block Diagram

Page 8: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

Problems: Adapt and Overcome!

Additional parts were needed for DSP board interface

Translation of Matlab code to C code

Mastering the DSP board

Mathematical/programming efficiency for real-time processing

input buffer design

Page 9: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

Distortion Module

The Booya factor input power , distortion

Page 10: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

The Arctan Function

Normalizes signal to 1

Need a multiplier to adjust signal back to original power

Average power sub-module

The Booya Factor

Page 11: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

Average power

Multiply distorted signal by p to get original signal

power

Page 12: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

Results: DiStoRtiOn

Symmetrical Hard Limiting

long harddistortion(long input)

{

if ((signed int) input <-4000000000) {input = -4000000000; return input;}

if ((signed int) input > 4000000000) {input = 4000000000; return input;}

if ((signed int) input <-3000000000) {input = -3000000000; return input;}

if ((signed int) input > 3000000000) {input = 3000000000; return input;}

if ((signed int) input <-2000000000) {input = -2000000000; return input;}

if ((signed int) input > 2000000000) {input = 2000000000; return input;}

}

Page 13: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

Delay (Echoooooooooo)

Use a buffer to record input signals. Add

old(delayed) sample to input to get echo.

Page 14: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

Delay (Echoooooooooo)

Simple code for fade effect

if (DSK6713_DIP_get(0) == 1 && DSK6713_DIP_get(1) == 0)

{DSK6713_LED_OFF(0); DSK6713_LED_ON(1); DSK6713_LED_OFF(2); DSK6713_LED_OFF(3);

sample = input + (amplitude*buffer [i]);

buffer [i] = sample; //store input for echo effect or sample for fade effect

i++;

if (i >=BUFFERLENGTH)

{

i = 0;

}

}

Page 15: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

Flange

Series of different delays that can be

selected using a1 through a4.

Each delay falls within the range to

affect the pitch of the sound, but

avoids the echo effect.

Page 16: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

Flange

Simple code for flange effect

if (change_delay>= 10000) //vary delay every 1 second

{switch (select_delay) //select delay

{case 0: //output sample with short delay

{ output = sampleshortdelay; break; }

case 1: //output sample with normal delay

{ output = samplenormaldelay; break; }

case 2: //output sample with long delay

{

{ output = samplelongdelay; break; }

}

Page 17: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

The Future

Additional sound effects

Effects using frequency, power

Invent some

GPS application with DSP board

Page 18: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

Thanks :)Don't forget to add buddy

www.myspace.com/DSP496

Page 19: Digital Signal Processing Jill, Jon, Kilo, Roger Design Presentation Spring ’06

Timeline