Truncated match.
PICList
Thread
'FFT width PICs'
1997\01\28@112841
by
Antonio Almeida
Has anyone tried to implement FFT width PIC?
I'm tryng to do some guitar effects and i don't want to use a DSP (to
expensive). At first glance, the worst problem is the memory. Any ideas ?
Thanks,
Antonio Almeida
1997\01\28@114306
by
Wolfram Liebchen
At 16:10 28.01.97 +0000, Antonio wrote:
> Has anyone tried to implement FFT width PIC?
> I'm tryng to do some guitar effects and i don't want to use a DSP (to
>expensive). At first glance, the worst problem is the memory. Any ideas ?
>
I think also computing-power is a problem.
For a reasonable sound quality, you should at least calculate with 16bit
numbers.
Then you need multiplication and addition in 16bit and even the 17C44 would
not be that fast (though it has hardware-multiplication 8bit).
regards
Wolfram
+-----------------------------------------------------+
| Wolfram Liebchen |
| Forschungsinstitut fŸr Optik, TŸbingen, Deutschland |
| spam_OUTliebchenTakeThisOuT
ffo.fgan.de |
+-----------------------------------------------------+
1997\01\28@120717
by
Arnold Galoustov
At 16:10 28.01.97 +0000, you wrote:
> Has anyone tried to implement FFT width PIC?
> I'm tryng to do some guitar effects and i don't want to use a DSP (to
>expensive). At first glance, the worst problem is the memory. Any ideas ?
>
> Thanks,
> Antonio Almeida
>
>
I think it is not so expensive. Analog Devices ADSP2105 have price ~5-15$.
2115 also near that price.
Bye, Arnold S. Galoustov
1997\01\28@130830
by
Walter Banks
Antonio Almeida wrote:
>
> Has anyone tried to implement FFT with PIC?
> I'm tryng to do some guitar effects and i don't want
> to use a DSP (to expensive). At first glance, the
> worst problem is the memory. Any ideas ?
The problem is border line computing power. It is right
on the edge. The 17c42a and 17c44 have hardware multiplies
and that helps. We added a switch in MPC (It may be
undocumented) to generate multiplies in line. That was
enough implement some basic FFT filters. As you have stated
RAM in some of the other parts may be a problem.
Depending on the effect the amount of computing power
may be less of a problem. Some filters can be implented
with very little code.
In general exchanging code size for speed will be a big win
in this type of application.
Walter Banks
1997\01\28@131833
by
Tim Kerby
Hi
Don't know much about this but...
If you have a PC why not let it do the processing and use the PIC as a semi
intelligent interface. Something to think about.
Tim
------------------------------------------------------------------
If you can read this, it is the end of the message!
My web pages are at http://web.ukonline.co.uk/members/tim.kerby/
My PIC site is at web.ukonline.co.uk/members/tim.kerby/pic/
It needs your projects!
------------------------------------------------------------------
1997\01\28@173505
by
BLEGER
You should plan on processing data at about 3 to 4 times the highest
frequency you'll be working with. (Example: For 10KHz signal bandwidth
use 30KHz to 40KHz data sample rate.) Distortion will be significant
with only 8 bits of resolution. Dynamic range (volume range) will
also be very limited with only 8 bits of resolution. I highly suggest
you move to a fast 16-bit architecture for this audio application.
______________________________ Reply Separator _________________________________
Subject: FFT width PICs
Author: pic microcontroller discussion list <.....PICLISTKILLspam
@spam@MITVMA.MIT.EDU> at smtp
Date: 1/28/97 4:10 PM
Has anyone tried to implement FFT width PIC?
I'm tryng to do some guitar effects and i don't want to use a DSP (to
expensive). At first glance, the worst problem is the memory. Any ideas ?
Thanks,
Antonio Almeida
1997\01\28@181247
by
Leon Heller
1997\01\28@225306
by
John Payson
|
> The problem is border line computing power. It is right
> on the edge. The 17c42a and 17c44 have hardware multiplies
> and that helps. We added a switch in MPC (It may be
> undocumented) to generate multiplies in line. That was
> enough implement some basic FFT filters. As you have stated
> RAM in some of the other parts may be a problem.
Another question is what you need the "FFT" for? For some applications
(such as a frequency-range level meter, etc.) where you don't need very
high precision, it's possible to fudge the maths so as to eliminate any
multiplies. In particular, instead of integrating
,
T1= | sin(t)f(t) dt
'
and
,
T2= | cos(t)f(t) dt
'
and then assuming amp=sqrt(T1*T1 + T2*T2) it may be much faster to integrate
three functions: [nb: modstep(x) is defined as 1 whenever sin(x) is positive
and 0 elsewhere]:
,
T1= | modstep(t)f(t) dt
'
and
,
T2= | modstep(t+2pi/3)f(t) dt
'
and
,
T3= | modstep(t-2pi/3)f(t) dt
'
and then assume amp=max(abs(T1-T2),abs(T2-T3),abs(T3-T1)). This will not be
as accurate as a real foorier transform, but it is much faster. Its primary
failing is that it will pick up fifth harmonics at 1/5 of their original
strength and seven harmonics at 1/7 of their original strength. All harmonics
which are multiples of 2 or 3, however, will be filtered out.
Using this approach, it is possible to do continuous simultaneous detection
of all seven DTMF tones on a mid-class (e.g. 16Cxx) PIC with a decent amount
of RAM.
1997\01\29@134652
by
mike
In message <2ee7e700
spam_OUTmailb.harris.com> @spam@PICLISTKILLspam
MITVMA.MIT.EDU writes:
> You should plan on processing data at about 3 to 4 times the highest
> frequency you'll be working with. (Example: For 10KHz signal bandwidth
> use 30KHz to 40KHz data sample rate.) Distortion will be significant
> with only 8 bits of resolution. Dynamic range (volume range) will
> also be very limited with only 8 bits of resolution. I highly suggest
> you move to a fast 16-bit architecture for this audio application.
Fujitsu has just/is bringing out a DSP chip with 16 bit adc and
dac on board. I think it would make a great part for a guitar
FX unit and may have a play around with it when I can get hold of
one.
The part is named the "whisper".
Regards,
Mike Watson
More... (looser matching)
- Last day of these posts
- In 1997
, 1998 only
- Today
- New search...