www.mikrocontroller.net

Forum: Digitale Signalverarbeitung / DSP C6747 EDMA zu langsam?


Autor: YouJin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi alle,

ich habe ein bloedes Problem feststellen muessen. Ich habe ein System 
bestehend aus dem TI C6747 und den AD-Wandler ADS1610, auch von TI. Die 
Hardware ist aufgebaut und Software auch, nun muss ich leider 
feststellen, dass etwas mit der Samplerate zwischen ADC und der DSP 
nicht stimmt. Folgendes is konfiguriert.
Ein GPIO Pin fungiert als Interupt signal um den EDMA zu steuern. An 
diesem Interupt-Eingang ist der Data Ready Ausgang des ADC verbunden. 
Und dieser Taktet halt mit 10 MHz vor sich hin (da der ADC ja 10 MSPS 
hat). Scopetechnisch ist alles ueberprueft.
Bei jedem Interupt schreibt der EDMA halt immer 2 byte von der GPIO 
Bank, an dem der ADC angeschlossen ist, an eine definnierte Adresse. Die 
Parameter sind self-linked. Also ein Ringbuffer.
Die DSP lauft auf maximalen Frequenzen (CPU = 300 MHz, EDMA = 150 MHz, 
GPIO = 75 MHz). Nun sieht es so aus, als ob der EDMA zu langsam ist, 
also den 10 MHz des ADC nicht hinterherkommt. Beim Uebertakten der DSP 
reicht es annaehernd. Kann es wirklich sein, dass der EDMA zu langsam 
ist???

Irgendwie blicke ich da erlichgesagt in Datasheet von TI nicht durch. 
Die DSP hat lauf Daten eine Max. Frequenz (SYSCLK1) von 375/456 MHZ, 
weiter im Datasheed steht dann aber, dass SYSCLK1 nicht mehr wie 300 MHZ 
haben darf. Irgendwie koennen die sich nicht entscheiden :).

http://www.ti.com/lit/gpn/tms320c6747
In Punkt 5.2 stehen die Empfohlenen Parameter, da steht SYSCLK1 bei 375 
MHz. Spaeter steht da aber, das alle SYSCLKs nur bis 300 MHz 
unterstuetzen. Wie soll man das verstehen?

Autor: TI-Unbegeisterter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tach. Ich hab mich hier in letzter Zeit mit dem 6416T abgekämpft. 
Wirklich durchgeblickt habe ich immer noch nicht, hab aber zumindest so 
viel rausbekommen, dass Schreibzugriffe über den GPIO übelst viel Zeit 
brauchen. Guck vielleicht mal, ob du deinen Interrupt woanders 
herbekommst.

Viel Erfolg!

Autor: You Jin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tach! Ach wenn ich den EDMA ohne Interrups steuer, sondern einfach 
einmal anschmeisse und laufen lasse aendert sich an den Aufgenommenen 
Samples nichts. Ich habe den AD-Wandler heute mal auf 5 MPSP Mode 
estellt, und dann funktioniert alles Perfekt. Sobald ich aber wieder auf 
10 MSPS stelle verliert der EDMA beim übertragen leider an Samples. 
Sitze schon seit mehreren Tagen vor diesem Problem, ohne Erfolg.

Autor: Peter Diener (pdiener) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn die Ansteuerung des EDMA über eine Interrupt-Serviceroutine läuft, 
kann ich mir duchaus vorstellen, dass das zu langsam ist. Damit das 
richtig schnell funktioniert, muss man den Transfer über das 
Eventmanagement-System auslösen.

Siehe:
http://www.ti.com/lit/gpn/tms320c6747
Kapitel 6.9

Ein GPIO kann Interrupts oder EDMA-Events auslösen. Eventgesteuert 
sollten 10 MSPS überhaupt kein Problem sein.

Grüße,

Peter

Autor: You Jin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So mache ich es auch. Ich benutze die GPIO Bank 2, angeschlossen an Data 
Ready vom ADC, um den EDMA Event 7 auszulösen. Ich habe bislang immer 
von Interrupt gesprochen, weil man für die Eventauslösung die GPIO Bank 
auch als Interrupt definieren muss. Erst dann funktioniert die 
Eventauslösung des EDMA Channels.

Autor: You Jin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry kleiner Fehler: Die GPIO Bank 1 lösst natürlich den EDMA Event 7 
aus.

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.