DMA : grundlagenfrage

Gast #667074
Lesenswert?
• ▲
▼
Hallo,

Also habe dereits gegooglet und überall ist zu lesen:
DMA : entlastet die CPU!
meine Frage ist:
1. wann genau lohnt es sich ein DMA zu emplementieren?
2. kann man Überhaupt die CPU über seine Grenze ziehen?

weil irgenwo in einem Forum war dies zu lesen:

"Je nach Projektumfang können relativ einfache
USB-Devicecontroller verwendet werden, welche lediglich eine SIE und 
eine Schnittstelle zur Kommunikation mit dem Gerät bieten. Alternativ 
kann ein komplexeres Modell benutzt werden, welches mit einem 
Mikrocontroller gekoppelt in einem Gehäuse angeboten wird. Diese 
Variante ist insbesondere dann zu favorisieren, wenn die Schaltung keine 
weitere CPU zur Datenflusssteuerung besitzt.
Für die Nutzung von DMA führt jedoch kein Weg an den komplexeren
USB-Devicecontrollern mit integriertem Mikrocontroller vorbei, da 
dieser, wenn er als DMA-Master arbeiten soll, die Adressierung der 
Datentransfers vornimmt. Da der F2812 im Vergleich zu den Modellen der 
6000er DSP-Serie (DSP von TI) nicht sehr leistungsfähig ist, und mit 
einer Taktung von 150 MHz eine High-Speed USB-Datenverbindung nicht voll 
ausnutzen kann, kann aus Gründen der begrenzten Bearbeitungszeit bewusst 
auf die Implementierung eines USB-DMAMasters verzichtet."


MfG
#667099
Lesenswert?
• ▲
▼
@ Le_Roi (Gast)

>Also habe dereits gegooglet und überall ist zu lesen:
>DMA : entlastet die CPU!

Stimmt.

>1. wann genau lohnt es sich ein DMA zu emplementieren?

Wenn die CPU andere wichtige Sachen machen will/muss.

>2. kann man Überhaupt die CPU über seine Grenze ziehen?

Überlasten? Nein, mehr als mit Volldampf arbeiten kann sie nicht.

>weil irgenwo in einem Forum war dies zu lesen:

>Datentransfers vornimmt. Da der F2812 im Vergleich zu den Modellen der
>6000er DSP-Serie (DSP von TI) nicht sehr leistungsfähig ist, und mit
>einer Taktung von 150 MHz eine High-Speed USB-Datenverbindung nicht voll
>ausnutzen kann, kann aus Gründen der begrenzten Bearbeitungszeit bewusst
>auf die Implementierung eines USB-DMAMasters verzichtet."

Naja, es lohnt sich für diese DSP scheinbar nicht, DMA zu nutzen, weil 
die Daten zwar schnell kopiert werden können (von der DMA) aber danach 
der DSP zu langsam ist, sie zu verarbeiten. Also kann der DSP gleich 
selber die Daten kopieren und verarbeiten.

MFG
Falk
Gast #667106
Lesenswert?
• ▲
▼
Hallo Falk

du schreibst : "Naja, es lohnt sich für diese DSP scheinbar nicht, DMA 
zu nutzen, weil
die Daten zwar schnell kopiert werden können (von der DMA) aber danach
der DSP zu langsam ist, sie zu verarbeiten."

genau Hier würde es sich doch lohnen ein DMA zu benutzen oder?
#667121
Lesenswert?
• ▲
▼
DMA ist dann sinnvoll, wenn Daten wirklich nur kopiert werden sollen, 
ohne verarbeitet werden zu müssen.
Beim PC sind das z.B. Grafikdaten von einem Hardware Videodekoder in den 
Grafikspeicher, oder bei einem USB Slave die Daten von USB an eine 
serielle Schnittstelle o.ä. Der µC in den USB Slaves dient nur zur 
Konfigurierung welche Wege die Daten nehmen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren