Forum: Digitale Signalverarbeitung / DSP / Machine Learning TMS320F2812 - Flash Zugriff


von Andreas (Gast)


Lesenswert?

Hallo,

ich steige gerade in ein Projekt ein, welches den TMS320F2812 mit Flash 
benutzt und versuche gerade zu verstehen wie ein Lese- und 
Schreibzugriff auf das Flash erfolgen soll. Zweck - Speicherung von 
Konfigurationsparametern. Bisher kannte ich dies so, dass hierfür ein 
externes EEPROM verwendet wird, welches einen Treiber, meißt I²C, 
benötigt. Das bedeutete dann, dass bei einem Lese- oder Schreibzugriff 
auf die Konfigurationsparameter eine entsprechende Funktion des Treibers 
augerufen wurde.
Nun wird eben das interne Flash des TMS320F2812 verwendet. Bisher konnte 
ich durch die Handbücher herausfinden, dass ich das Flash in 
verschiedene Power-States setzen kann und Programm Code etwa vom Flash 
oder RAM ausführen kann. Jedoch habe ich noch keinen Plan, wie ein 
Zugriff auf das Flash zur Laufzeit funktioniert. Ich weiß nur, dass es 
noch einen Pipeline Mode gibt, welches Lese- und Schreibzugriffe 
schneller macht.
Für Hinweise, Links oder womöglich Beispiel wäre ich sehr dankbar.

von Andreas (Gast)


Lesenswert?

Einen Teil kann ich nun selbst beantworten. Ich habe nochmals in den 
Untiefen des Netzes weitergesucht.
Für Schreibzugriffe, wie Programmieren und löschen, muss die FLASH API 
von Texas Instruments verwendet werden. In diesem Fall von folgender 
Seite herunterladbar 
http://focus.ti.com/docs/toolsw/folders/print/sprc125.html
Jetzt sind noch zwei Fragen und weitere Frage offen.
1.) Wie erfolgen Lesezugriffe? Ist es womöglich ausreichend die Daten 
mit der API Funktion memcpy ins RAM kopieren?
2.) CRC Prüfung - Wenn der Programm Code im Flash liegt und die CRC 
geprüft werden soll, kann ganz normal mit Zeigern auf diesen Bereich 
zugegriffen werden?
3.) Zusatz zu 2.) CRC über Programm Code erstellen?

von Dirk (Gast)


Lesenswert?

Hallo Andreas,

Du hast ganz richtig erkannt, dass Du zum schreiben des Flash die 
Flash-API benutzen musst. Leider ist die Integration derselben in eigene 
Applikationen nicht trivial. Mit einiger Einarbeitung jedoch sicher 
machbar.

Das Auslesen der Daten aus dem Flash ist ganz selbstverständlich über 
die Addresierung des entsprechenden Speicherraumes (der dann eben ins 
Flash zeigt) möglich. Ein Kopieren in das Ram ist nicht nötig.

Allerdings erscheint mir die Ablage von Konfigurationsdaten im Flash 
recht aufwändig, bzw. auch nicht sehr effizient. Es gilt beim 
TMS320F2812 zu beachten, dass der Flash-Speicher in Segmente aufgeteilt 
ist. Diese Segment können immer nur im Ganzen gelöcht und neu 
programmiet werden. Damit gehen beim kleinsten Segment des TMS auf jeden 
Fall 8k-Worte drauf, auch wenn man nur 5 Worte benötigt.

Wie gesagt, die Verwendung der Flash-API ist nicht ganz einfach und 
birgt auch einige Gefahren (versehentliches Beschreiben des 
Code-Security-Passworts). Wenn möglich würde ich also eher ein externes 
EEProm anschließen. Ist einfacher anzusteuern. Das ist dann bei 
kleineren Datenmengen auch deutlich schneller.

Gruß,

Dirk.

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.