www.mikrocontroller.net

Forum: Digitale Signalverarbeitung / DSP Division in Float (TMS320F28335)


Autor: Tim R. (mugen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich arbeite schon seit ein paar Monaten mit dem TI DSC TMS320F28335. 
Erst seit kurzem mit den TMS Typen und nicht mit den TMX Typen. Leider 
verhält sich der DSC leicht anders, bzw. eher der Compiler oder die 
Entwicklungsumgebung. Der DSC dividiert nicht mehr laut Watchwindow. 
Multiplikation in float macht er ohne Probleme. Meine Vermutung ist nun, 
dass der Compiler den Sourcecode nicht richtig interpretiert und den 
Quotienten für die anschließende Multiplikation nicht bildet. Wenn 
jemand ein ähnliches Verhalten hat oder hatte, dann würde ich mich über 
Tipps etc. sehr freuen.

Autor: Jan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im CCS lässt sich unter

"Project" => "Build Options.." => "Compiler" => "Advanced"

der "Floating Point Support" einstellen. Vielleicht ist das bei Dir ja 
deaktiviert.

(Nur Schuss ins Blaue, da ich bisher mit den Floating-Point-DSCs noch 
nicht gearbeitet habe)

Gruss, Jan

Autor: Jan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab' grad mal im "Getting Started With TMS320C28x" (spraam0a.pdf) 
geschaut. Dort steht drin, dass man für die 2833x-Generation "CCS 3.3+" 
mit "Code Generation Tools 5.0+" benötigt.

Weitere Hinweise hierzu findet man auch in "TMS320x280x to TMS320x2833x 
or 2823x Migration Overview" (spraaq8a.pdf) unter Punkt 3 (Development 
Tools).

Links:
http://focus.ti.com/general/docs/techdocsabstract....
http://focus.ti.com/general/docs/techdocsabstract....

Vielleicht hilft Dir das ja noch weiter.

Gruss, Jan

Autor: Tim R. (mugen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke Jan für deine Mühe.

Soweit von Dir beschrieben habe ich es vor ein paar Wochen bereits 
getan. Allerdings bin ich durch deinen Hinweis auf einen anderen Fehler 
gestoßen. Der Compiler von TI wird von der Installationsroutine an einem 
falschen Ort gespeichert, daher habe ich immer einen veralteten Compiler 
benutzt. Toller Wurst! Nun funktioniert alles und des DSC dividiert 
fleißig.

Richtiger Installationszielort wäre übrigens 
C:\CCStudio_v3.3\C2000\cgtools
Kommt natürlich auf das System an.

Also nochmals Danke - Ein Problem weniger ;)

Gruß

Autor: Tim R. (mugen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aus unerklärlichen Gründen braucht bei mir eine Division ca. 1,78µs.
Eine Multiplikation braucht übrigens 0,0855µs und Cosinus-Funktion 
1,33µs.

Dies bedeutet: eine Division benötigt 267 Zyklen bei 150Mhz(6,66ns)
Angegeben ist laut TI mindestens 24 Zyklen.

Hat jemand die gleiche Beobachtung gemacht?
Eine Division von 1,78µs ist meiner Meinung nach viel zu lang!

Bei integer16 braucht einer Division nur noch 0,381µs.

Ich benutze die neues CC Version, CodeGenerationTools und habe die 
neuste RTS eingebunden.

Autor: Tim R. (mugen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tim R. schrieb:
> Aus unerklärlichen Gründen braucht bei mir eine Division ca. 1,78µs.
> Eine Multiplikation braucht übrigens 0,0855µs und Cosinus-Funktion
> 1,33µs.
>
> Dies bedeutet: eine Division benötigt 267 Zyklen bei 150Mhz(6,66ns)
> Angegeben ist laut TI mindestens 24 Zyklen.
>
> Hat jemand die gleiche Beobachtung gemacht?
> Eine Division von 1,78µs ist meiner Meinung nach viel zu lang!
>
> Bei integer16 braucht einer Division nur noch 0,381µs.
>
> Ich benutze die neues CC Version, CodeGenerationTools und habe die
> neuste RTS eingebunden.

Hat sich erledigt, ich hätte auch mal die Assembler-Files zufügen 
sollen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.