Forum: Digitale Signalverarbeitung / DSP / Machine Learning DSP 320F Variablen in Flash speichern


von michi02 (Gast)


Lesenswert?

Ich nutzen einen TI DSP320F
Hallo ,
zur Berechnung von komplexen FIR Filter benötige ich viele grosse 
Arrays. Deren Werte ich zur Laufzeit berechne. Kann ich diese mangels 
RAM speicher auch im Flash speicher speichern?

Zusammengefasst ist es möglich Variablen im Flash speicher zu speichern?

Hierfür müsste ich ja während des laufenden Programms den flash speicher 
oder einen teil des flash speichers neu beschreiben. Geht das?

wäre klasse wenn jemand hierzu mehr sagen kann.

von Peter D. (pdiener) Benutzerseite


Lesenswert?

Ja, das Flash kann während dem Betrieb beschrieben werden. Wichtig ist 
dabei, dass das Flash während dieser Zeit nicht verfügbar ist, das 
Programm, das das Flash beschreibt muss daher aus dem Ram laufen. Das 
wiederum bedeutet, dass der entsprechende Programmteil speziell auf den 
Rambereich gelinkt worden sein muss (zur Compilezeit).

Außerdem solltest du bedenken, dass man Flashspeicher nicht beliebig oft 
beschreiben kann, nach etwa 10000 Schreibzyklen funktioniert er nicht 
mehr. Wenn das Beschreiben nur alle paar Tage mal passiert, ist das kein 
Problem, wenn sich die Koeffizienten aber oft zyklisch ändern, würde ich 
empfehlen, dass du einen Prozessor mit mehr oder externem Ram 
verwendest.

Grüße,

Peter

von michi02 (Gast)


Lesenswert?

Danke Peter,
das hört sich doch gut an. Kannst du mir noch sagen in welcher Doku das 
beschrieben steht kann das irgendwie nicht finden.


Danke

von Peter D. (pdiener) Benutzerseite


Lesenswert?

Für den F2812 kannst du hier nachschauen:
http://focus.ti.com/lit/an/spraal3/spraal3.pdf

Kapitel 4 behandelt das Schreiben des Flash mit einem eigenen Programm, 
das am DSP läuft.

Das kann dir auch weiterhelfen:

http://focus.ti.com/lit/an/spraau8/spraau8.pdf

Das behandelt die entsprechend notwendigen Schritte im Compiler, damit 
dieser Code erzeugt, der später vom Flash ins Ram kopiert werden kann 
und dort ausgeführt wird. Das muss dann praktisch alles von deinem 
Programm sein, das die Koeffizienten letztendlich ins Flash schreibt, 
denn wie ich schon gesagt habe, darf dieser Programmteil nicht aus dem 
Flash laufen.

Ich hoffe, das hilft weiter.

Grüße,

Peter

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.