DSP Device for Guitar Pedal Effect

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View


I was wondering what DSP chip would be appropriate for a guitar pedal
effect.  I need to sample the incoming signal preferably at 96kHz
perform a simple numeric function upon each sample and output he
result.

Re: DSP Device for Guitar Pedal Effect



Quoted text here. Click to load it

How simple is simple?  A number of devices can do that.  If you care about
audio quality I wouldn't use the build int ADCs and DACs though.




Re: DSP Device for Guitar Pedal Effect


Quoted text here. Click to load it

The function will be floating point and contain trig functions.  Each
sample is run through the function once and outputed.

ADC and DAC convertion will need to either be contained in the chip or
sorted out separately.

I understand there are PICs out there and other similar things that
can do this, I'm just unfamiliar with there devices and trying to wade
though the websites to figure out what would work is kinda rough when
your clueless.  :)

Fred

Re: DSP Device for Guitar Pedal Effect


Quoted text here. Click to load it

Are you going to build one or a million?  If the latter, the cost of
the silicon is important.  If you only build a few, the silicon is free.
The expense is the time to develop the software so you should look
for an software environment you like.

You said 96kHz.  Call that 100 kHz, or 10 microseconds per sample.
You need a CPU that is fast enough to run your algorithim in the
alloted time.  Trig functions can be messy.  I'd suggest getting
a development board and timing things.  (If you might buy a million,
the FEs will be helpful.  If not...)

Why do you think you need floating point?  The input isn't floating.
The output isn't floating.

As a (probably crazy) straw-man, you could consider table lookup.
It doesn't take much time, but it sure eats memory.  It might be
worthwhile to implement the algorithim on a PC and look at it on
a graph.  Can you compress that graph?  Think interpolation,
or curve fitting.  A cheap CPU with external memory might be less
expensive than a CPU fast enough to do the trig functions.

--
These are my opinions, not necessarily my employer's.  I hate spam.


Re: DSP Device for Guitar Pedal Effect


On Oct 25, 9:04A0%pm, hal-use...@ip-64-139-1-69.sjc.megapath.net (Hal
Murray) wrote:
Quoted text here. Click to load it

Coordic.

Re: DSP Device for Guitar Pedal Effect


Quoted text here. Click to load it

I need to look at the different ways possible to do this, and hardware
to implement it.

Cordic looks interesting, I still need to figure out how to get the
ADC and DAC conversion done and the chip to run the function,

I also need to be able to have one user variable parameter a setting
knob that the the micro-controller would track in real time.along with
the input signal.

Re: DSP Device for Guitar Pedal Effect



Quoted text here. Click to load it

A lookup table for sin / cos is much faster and may allow the use of a
cheap micro, rather than a dsp and you can generate the table with a
page of C utility.

You only need to store one quadrant, so a 16k x 16 bit table gives
16bits + sign sin() or cos() function.  32 Kbytes of rom space...

Regards,

Chris

Re: DSP Device for Guitar Pedal Effect



Quoted text here. Click to load it

The other point being avoidance of floating point and do it in fixed
point if at all possible. If you use a cheap micro, fp will be too much
of a performance hog with many C libraries, not to mention the amount of
code space it takes up...

Regards,

Chris

Re: DSP Device for Guitar Pedal Effect



Quoted text here. Click to load it

Maybe you can attach an old 80287 to a microcontroller, there are still
some cheap ones at eBay:

http://tinyurl.com/80287-ebay

Many years ago I had to choose to add more RAM or a FPU chip to an Intel
80386 based computer. I decided to add 2 MB RAM, which was great, because
then Windows 3 worked :-)

--
Frank Buss, fb@frank-buss.de
http://www.frank-buss.de , http://www.it4-systems.de

Re: DSP Device for Guitar Pedal Effect



Quoted text here. Click to load it

Interesting idea, too bad it (80287, 8MHz) cannot compute a trig
function in time (10 microseconds).

Back in the day, the FPU was necessary (over 100:1 speed difference)
to run SPICE.  So was maximum RAM.

Re: DSP Device for Guitar Pedal Effect



Quoted text here. Click to load it

C?!?

This is a job for assembly, unless you want an obnoxiously big,
expensive, and power hungry part in there.

C isn't a good fit for fast DSP algorithms.  Unless you luck out with a
very wise compiler you're best hand-fitting the code to the application.

--
www.wescottdesign.com

Re: DSP Device for Guitar Pedal Effect



Quoted text here. Click to load it

I've written everything in C since the early 90's, even stuff like
interrupt handlers. The only assembler is in the startup and that's kept
as short as possible. It's the only way to get maintainable and portable
code and modern compilers and cpu's are very good. Even keil C for 8051
can keep up with the later 8051 derivatives from Silicon labs and
others. For example, a 400 Hz pwm sine wave inverter where the timers
are reloaded every pwm cycle, 10 or so lines of C and an interrupt
handler time of approx 60 uS.

You write it all in C to start with, then dip down and look at the
compiler entrails and optimise the assembler *only* if it's not fast
enough :-)...

Regards,

Chris

Re: DSP Device for Guitar Pedal Effect



Quoted text here. Click to load it

GCC has always been very nice to me with various DSP algorithms. But
you'll need a CPU that can deal with pointers efficiently (like an ARM
CPU).

--
Failure does not prove something is impossible, failure simply
indicates you are not using the right tools...
We've slightly trimmed the long signature. Click to see the full one.
Re: DSP Device for Guitar Pedal Effect



Quoted text here. Click to load it

Let me rephrase: C isn't a good fit for fast DSP algorithms on a DSP.

(hint: an ARM isn't a DSP chip).

--
www.wescottdesign.com

Re: DSP Device for Guitar Pedal Effect


OK guys,

The floating point math is a moot, now that I have been introduced to
CORDIC.

Futhermore even that is moot now that I just found the FV-1 by
SpinSemi.com  It includes ADC and DAC on the die.  It looks like just
what I want.

I'm  off to investigate further...

Re: DSP Device for Guitar Pedal Effect



Quoted text here. Click to load it

That says more about DSP devices than devices with an ARM core.

IMHO DSPs have become niche devices made obsolete by more powerful low
end microcontrollers, cheap multifunction FPGAs and PCs that have an
endless amount of processing power.

Besides that using assembler is very prone to a massive vendor lock-in
which can seriously injure business on a long term scale.

At a different employer about 5 or 6 years ago we where talking with a
company (say company A) that build DSP based solutions. At one point
company A choose to use Motorola DSPs and write all their software in
assembler. Moving on the the next generation Motorola DSP was already
a big problem. Not to mention moving to another platform. We wanted to
get a license to use their algorithms on a PC platform but soon
realised assembly code had moved company A into a dead end street
where most of their work would be lost.

--
Failure does not prove something is impossible, failure simply
indicates you are not using the right tools...
We've slightly trimmed the long signature. Click to see the full one.
Re: DSP Device for Guitar Pedal Effect


Quoted text here. Click to load it

The rest of the world uses compilers and libraries that call hand-bummed
BLAS (Basic Linear Algebra Subprograms) routines that take care of most
of the machine dependence.  Doesn't that work on embedded DSPs?

Cheers

Phil Hobbs

--
Dr Philip C D Hobbs
Principal
We've slightly trimmed the long signature. Click to see the full one.
Re: DSP Device for Guitar Pedal Effect



Quoted text here. Click to load it

Never used them, but I understand that the Texas dsp C compilers are
pretty good these days and are optimised closely to the target
architecture. Probably the same for ad stuff as well. It's a fairly
competitive market, so the vendors would take advantage of every
hardware wrinkle the device could offer, which itself will be optimised
for the compiler output. If you have control over both, there should be
no need for asm most of the time.

/rant on
If you are designing anything other than trivial software, a high level
language allows abstract system concepts to be translated into code far
more readily than asm. Other benefits include creation of standard
source libraries that often just need a recompile for another
architecture, as just about everything is ansi C now. The whole point of
standard libs is that you don't end up reinventing the wheel for every
project and you avoid the sort of "cut and paste into a new project"
style development, complete with all the old project's bugs, that serves
as a development model in some places that i've seen. Finally, it saves
time and money.
/rant off

Probably teaching granny here etc. Apologies if going on a bit :-)...

Regards,

Chris

Re: DSP Device for Guitar Pedal Effect



Quoted text here. Click to load it

Nothing new here, move along.
The grandfathered old poor code already is an issue in the FPGA world.
As if you didn't already know.

Re: DSP Device for Guitar Pedal Effect



Quoted text here. Click to load it

Didn't know in fact, but can guess that could be a problem, just as it
is with legacy asm and C. Have done very little with fpga's / vhdl as
well. Every time I consider one for a project, a fast micro wins by
getting the job done at lower cost and timescales...

Regards,

Chris





Site Timeline