64 Punkte FFT auf guenstigem Mikrocontroller

Gast #4348296
Lesenswert?

Ich möchte eine 64 Punkte FFT auf einem möglichst günstigen 
Mikrocontroller realisieren. Dabei soll mindenstens alle 5 ms eine neue 
Berechnung möglich sein.
Hier wurde öfters das Projekt von chan erwähnt: 
http://elm-chan.org/works/akilcd/report_e.html
der auf einem Atmega8 eine 64 Punkte FFT in 3,4 ms schafft.

Kann mir jemand einen Mikrocontroller dafür empfehlen? Ginge das auch 
mit einem Attiny85?

(Ich hab schon lange nichts mehr damit gemacht, früher mal mit 80C59)
Gast #4348321
Lesenswert?

Nein, darauf kommt es dann nicht an. Ich würde gerne mit noch etwas 
kleinerem als dem Atmega8 anfangen und der Attiny hat ja ähnliche 
Features. "On-chip 2-cycle Multiplier" fehlt. Ich weiß nicht ob das ein 
Problem ist...
#4348703
Lesenswert?

Fede schrieb:
> Nein, darauf kommt es dann nicht an.

Gut. Dann kannst Du auch einen PIC32MX110F016B-I/SP verwenden. 50MHz 32 
Bit MIPS Kern, damit sollte das schon flutschen. Bei Bedarf gibts auch 
Versionen mit mehr Speicher...

> Ich würde gerne mit noch etwas
> kleinerem als dem Atmega8 anfangen und der Attiny hat ja ähnliche
> Features. "On-chip 2-cycle Multiplier" fehlt. Ich weiß nicht ob das ein
> Problem ist...

Warum dieser Umstand? Tut doch nicht mehr not.


fchk
#4348726
Lesenswert?

http://www.watterott.com/de/STM32F030F4P6-Minimum-Systerm-Board-Cortex-M0

Als Einzelchip irgendwo um die 1€.

Oder den hier:
http://www.watterott.com/de/STM32F103TB-ARM-Cortex-M3-Development-Board

Es wäre sinnvoll, wenn Du etwas mehr Daten zu Deiner FFT angibst. Welche 
Wortbreite sollen Deine Daten haben? float, int?

Zu den Cortex CPUs gibt es eine DSP-Library von ARM, die neben sehr 
vielen anderen Sachen auch FFT-Routinen beinhaltet.

Gruß, Stefan
#4348745
Lesenswert?

Fede schrieb:
> Ich würde gerne mit noch etwas
> kleinerem als dem Atmega8 anfangen und der Attiny hat ja ähnliche
> Features

Öhm, was "kleinerem"? Also im Prinzip ist der Aufwand sich in den Atmega 
oder einen Attiny einzuarbeiten ähnlich umfangreich. Kleiner ist bei 
Attiny eigentlich nur das Gehäuse aber deshalb zu entscheiden, mit 
welchem Mikrocontroller man beginnt…ich weiß ja nicht. Und dann willst 
du gleich mit einer FFT beginnen? Da liegt ein wenig Arbeit vor dir ;)
Bei Attiny wird dir wahrscheinlich der Speicher einen Strich durch die 
Rechnung machen. Eine 64er FFT braucht ja schon nur für die 
Eingangsfolge 128 Byte (Realteil und Imaginärteil).
Gast #4349170
Lesenswert?

Wortbreite..das hatte ich noch gar nicht bedacht. Es müsste aber schon 
float sein.

Danke für die Vorschläge! Der M0 hört sich auch interessant an...Den 
attiny schlag ich mir für dieses Vorhaben dann lieber aus dem Kopf..
Gast #4349260
Lesenswert?

Fede schrieb:
> Es müsste aber schon
> float sein.
>
> Danke für die Vorschläge! Der M0 hört sich auch interessant an...
Wenn schon Cortex-M + float, dann kannst du auch gleich Cortex-M4 
nehmen, denn der hat eine FPU! Somit sind die meisten float-Operationen 
in 1 Takt abgehandelt.

Schau z.B. mal hier:
http://www.st.com/web/en/web/en/catalog/tools/FM116/SC959/SS1532/LN1847/PF262544
Handliches Arduino-Nano Format, FPU, integrierter Programmer/Debugger. 
Gibt aber natürlich noch viele weitere Möglichkeiten.
#4374124
Lesenswert?

>Wortbreite..das hatte ich noch gar nicht bedacht. Es müsste aber schon
float sein.

Float... aha. Da gibt es vieleicht eine Multiplikation in diesen 5ms.

Was soll Float denn bringen? Um die verrauschten 8 bit des ADC voll auf 
die 43dB des dynamischen Bereich abzubilden ? Steckbrettaufbau ?

Ich wuerde die Anforderungen hochschrauben, und die FFT von einem 
einzigen Transistor erwarten ... da alles andere eh viel zu teuer ist.

pfffffft....

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren