Forum: Mikrocontroller und Digitale Elektronik Welche Boards haben eine CPU mit FPU


von Martin O. (ossi-2)


Lesenswert?

Ich programmiere zur Zeit das Teensy36 Board. Es hat eine ARM-M4 CPU mit 
Floating Point Unit (FPU). Damit kann ich meine Berechnungen in Floating 
Point ausführen, was wesentlich bequemer ist als immer Integer mit 
passenden Skalierungen zu nehmen.

Mich würde nun interessieren welche Boards mit CPU mit FPU ihr so 
verwendet.
(Ich erinnere mich noch an den IBM PC-AT mit 286 CPU und extra zu 
kaufender FPU 287)

von Stefan F. (Gast)


Lesenswert?

Nucleo-F303RE  <-- Mit diesem habe ich experimentiert
Nucleo-F401RE
Nucleo-F746ZG

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Nunja, eine single precision FPU haben die meist, da kannste auch das 
Ergebnis direkt würfeln.

zB STM32H7 haben dann eine double precision FPU.

von Karl (Gast)


Lesenswert?

Mw E. schrieb:
> Nunja, eine single precision FPU haben die meist, da kannste auch das
> Ergebnis direkt würfeln.

Was ein Quatsch. Latürnich kann man mit Single precision sehr gute 
Sachen anstellen. Eher wird nur selten ein Double gebraucht.

von Stefan F. (Gast)


Lesenswert?

Karl schrieb:
> Mw E. schrieb:
>> Nunja, eine single precision FPU haben die meist, da kannste auch das
>> Ergebnis direkt würfeln.
>
> Was ein Quatsch. Latürnich kann man mit Single precision sehr gute
> Sachen anstellen. Eher wird nur selten ein Double gebraucht.

Wenn man jedoch double Operationen verwendet, bringt die single 
precision FPU dabei einen wesentlichen Vorteil (gegenüber keine FPU)?

von Karl (Gast)


Lesenswert?

Stefanus F. schrieb:
> Wenn man jedoch double Operationen verwendet, bringt die single
> precision FPU dabei einen wesentlichen Vorteil (gegenüber keine FPU)?

Nein, das bringt dann nichts. Die größeren Cortex m haben aber auch 
einige Integer Befehle die Recht performantes Software Double 
ermöglichen. Clz wäre so ein Befehl. Die Aussage dass man mit Singles 
nur würfeln könne ist halt... unausgegoren.

Wenn man richtig schnelles Double braucht, dann halt einen m7. Die sind 
oft noch ein Stück komplexer als die m4, aber auch deutlich schneller.

von Stefan F. (Gast)


Lesenswert?

Interessant, ich habe heute zum ersten mal von dieser Einschränkung 
gelesen.  Ich habe FPU auf µC bisher noch nie benutzt.

von Martin O. (ossi-2)


Lesenswert?

Kann mir jemand sagen ob die CPU des Raspberry-Pi über eine FPU verfügt?

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Martin O. schrieb:
> Kann mir jemand sagen ob die CPU des Raspberry-Pi über eine FPU verfügt?

Ja, hat er.

von Peter D. (peda)


Lesenswert?

Martin O. schrieb:
> Damit kann ich meine Berechnungen in Floating
> Point ausführen, was wesentlich bequemer ist als immer Integer mit
> passenden Skalierungen zu nehmen.

Wie kommst Du denn bloß darauf, daß man ohne FPU kein float verwenden 
darf?
Selbstverständlich mache ich z.B. PID-Regelungen auf nem 8Bit-AVR in 
float.

von Martin O. (ossi-2)


Lesenswert?

@peda
Aber digitale Audio Signalverarbeitung (44100 kSamples(Stereo)/sec) 
bekommst Du auf nem 8-Bit AVR in Float nicht hin...

von Route_66 H. (route_66)


Lesenswert?

Martin O. schrieb:
> Aber digitale Audio Signalverarbeitung (44100 kSamples(Stereo)/sec)
> bekommst Du auf nem 8-Bit AVR in Float nicht hin...

Salamitaktik hoch 10?
Alle 10 Beiträge eine neue Scheibe!

von Irgendwer (Gast)


Lesenswert?


von Gerhard Z. (germel)


Lesenswert?

Mw E. schrieb:
> Nunja, eine single precision FPU haben die meist, da kannste auch das
> Ergebnis direkt würfeln.

Habe einen Noise Cancelation Algorithmus am Fahrzeug in single precision 
auf dem Tiva Launchpad (s.u.) entwickelt, läuft problemlos seit Jahren - 
nix würfeln!

Gerhard

http://processors.wiki.ti.com/index.php/Tiva_C_Series_TM4C123G_LaunchPad

von Johnny B. (johnnyb)


Lesenswert?

Mw E. schrieb:
> da kannste auch das Ergebnis direkt würfeln

Gut gewürfelt ist schon halb gerechnet. ?

von Pandur S. (jetztnicht)


Lesenswert?

> Wie kommst Du denn bloß darauf, daß man ohne FPU kein float verwenden
darf?
>Selbstverständlich mache ich z.B. PID-Regelungen auf nem 8Bit-AVR in
float.


Selbstverstaendlich mache ich meine PID Regelungen auf dem 8 bit AVR in 
32 bit integer. Der dynamische Bereich ist um einen Faktor 100 groesser. 
Ich habe 9 Digits anstelle von 6. Etwas dazu denken muss man allerdings 
schon.

von Sebastian R. (sebastian_r569)


Lesenswert?

Texas TMS320F28335 DSC/MCU mit FPU

Schmeiß ich jetzt einfach mal so in den Raum.

von Arc N. (arc)


Lesenswert?

Die Frage hier ist doch eigentlich nur: Was soll hier berechnet werden, 
sodass Softfloats nicht reichen und eine Hardware-FPU nötig ist?

Mikrocontroller mit Double-Precision Floats neben den oben genannten 
z.B. PIC32MZEF oder PIC32MKGP
Wenn 32-Bit-Floats reichen, dann z.B. noch div. Renesas RX oder Synergy 
S7, S5

von Zweig (Gast)


Lesenswert?

Zitronen F. schrieb:
> Selbstverstaendlich mache ich meine PID Regelungen auf dem 8 bit AVR in
> 32 bit integer. Der dynamische Bereich ist um einen Faktor 100 groesser.
> Ich habe 9 Digits anstelle von 6. Etwas dazu denken muss man allerdings
> schon.

Mit Kanonen auf Spatzen. Weder die Ist/Soll Wert Erfassung noch die 
Ausgabe der Stellgröße braucht diese Auflösung.

von Peter D. (peda)


Lesenswert?

Zitronen F. schrieb:
> Etwas dazu denken muss man allerdings
> schon.

Denken reicht aber nicht. Man muß den Regelkreis schon sehr genau 
einschränken und das kostet Zeit oder verursacht Fehler (Überlauf bzw. 
Rundungsfehler). Ich hab mich früher auch mit Integer abgeplagt und 
damit nur wertvolle Zeit verplempert. Ist schon blöd, wenn sich 
hinterher zeigt, daß die Wertebereiche der PID-Parameter zu grob oder zu 
klein sind.
Da es ja nichts kostet, nehme ich float und bin damit sehr variabel 
bezüglich Regelbereich und Regeleigenschaften.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.