Hallo! Lese mich gerade ein bisschen in der der CMSIS-DSP Library ein und konnte zu einigen Fragen keine eindeutige Antwort finden. Vielleicht könnt ihr mir helfen. 1. Werden die DSP Funktionen von einer "DSP Einheit" Einheit berechnet oder mit der ganz normalen CPU Softwaremäßig umgesetzt? 2. Muss die FPU für die DSP Funktionen an sein? Möchte gerne die PID-Funktion in der CMSIS-DSP Library auf einem STM32F407VG unter CooCox nutzen. Viele Grüße Deepdiver99
Die DSP Funktionen sind Erweiterungen im Befehlssatz und werden vom Core verarbeitet. http://www.elektroniknet.de/uploads/media_uploads/images/1285600785-39-bea8a6d70365c0a00b6908a4dfe9f542568x528.jpg
Werden dann auch die Festkomma- und Gleitkommaberechnungen im Core und nicht in der FPU berechnet? Wäre die FPU da nicht schneller und Leistungsstärker? Habe hier http://www.elektroniknet.de/halbleiter/sonstiges/artikel/78331/ noch einen Beitrag dazu gefunden. Konnte aber auch dort nicht genau rauslesen ob beim Cortex-M4 die DSP-Algorithmen die FPU mit benutzen.
hmmm, da steht es doch:
1 | Die meisten Algorithmen sind in verschiedenen Festkomma-Formaten und im Gleitkomma-Format verfügbar und sowohl für den Cortex-M3 als auch den Cortex-M4 optimiert. |
Für M3 Festkomma, für M4 zusätzlich Gleitkomma. Der M4 kann M3 Code ausführen.
deepdiver99 schrieb: > Werden dann auch die Festkomma- und Gleitkommaberechnungen im Core und > nicht in der FPU berechnet? Festkomma wie q31 und q16 werden im Core berechnet, da man dafür nur Integer-Rechenwerke braucht. Gleitkomma wird in der FPU berechnet, wenn es float ist. Die Cortex M4 FPU kennt kein double, das muss in Software berechnet werden. Voraussetzung ist natürlich, das der Compiler korrekt parametriesiert wurde.
Muss ich dann für Gleitkomma die FPU im Compiler anschalten oder macht der M4 das intern? Wo kann man das alles nachlesen?
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.