www.mikrocontroller.net

Forum: Digitale Signalverarbeitung / DSP Ring Buffer Implementierung in C6747


Autor: Johann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo all,

ich bin ein Neuling in Sachen DSP und stehe vor einer, wie mir schein 
fuer Fachleute, einfache aufgabe :). Und zwar muss ich alle Samples (16 
bit) eines AD Wandlers (10 MSPS) in den RAM bzw. Cache des DSPs 
(TMS320C6747) schreiben am besten in ner Schleife, also Ringbuffer.
Bevor ich nun tausende von Buechern oder Dekumenten durchschaue, kann 
mir da jemand was Empfehlen. Ein Guide waere auch super, muss ja net 
unbedingt der gleiche DSP sein, einer aus der gleichen Serie tut es ja 
auch. Ich suche wirklich nach einer guten Beschreibung fuer Dummis. 
Waere Dankbar fuer jede Hilfe.

Gruss
Johann

Autor: Peter Diener (pdiener) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde das eventgesteuert über DMA machen lassen. Der EDMA3 
Controller kann genau das.
http://www.ti.com/litv/pdf/sprufl1c

Grüße,

Peter

Autor: Johann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja tausende Dokumente habe ich schlussendlich doch gelesen, hilft ja 
alles nix :)

OK, also einen GPIO, der mit dem AD-Wandlers verbunden ist, als 
Interrupt benutzen und den DMA triggern.
Mir stellt sich nur noch dir Frage wie genau ich den PaRAM konfigurieren 
soll, damit ich einen Ringbuffer bekomme. Also ich will einen 8 kByte 
Ringbuffer erstellen. Der AD-Wandler liefert mir 16 bit Output. Mit 
jedem Triggering soll ja halt die Die ZielAdresse im Speicher um 16 bzw. 
32 bit erhoeht werden, die Quelladresse bleibt ja gleich. Wie stelle ich 
dass an ohne die CPU zu benutzen?

Gruss
Johann

Autor: Johann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also ich weiss schon, dass der PaRAM automatisch die Zieladresse 
erhoehen kann, aber wann macht er das? Wenn nach jedem Triggern bzw. 
ausloesen des DMA, dann hat sich mein Problem schon geloest.

Autor: Peter Diener (pdiener) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn der DMA den gesamten gewünschten Adressraum mit Daten aufgefüllt 
hat, also ein Parameterset komplett abgearbeitet hat, kann man mit der 
Link-Option ein neues Parameterset laden.
Für Ringpuffer eignet sich die Betriebsart "Link-to-self".
Das steht in Kapitel 2.3.7.

Grüße,

Peter

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.