Forum: FPGA, VHDL & Co. AXI DMA Status Stream


von Steff (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Leute,

ich würde gerne den Xilinx Axi DMA im Scatter Gather mode betreiben. Ich 
kümmere mich dabei nur um den FPGA teil. Die Software macht ein Kumpel. 
Jetzt is es so das ich einen Datenstream habe welcher an die S_AXIS_S2MM 
schnittstelle angeschlossen wird. Ich schicke verschiedene Packete und 
schließe jedes mit einem tlast ab. Für den Scatter Gather mode braucht 
jetzt der Softwarekollege Infos über die Daten von mir. Dazu möchte ich 
den
Status Stream (den man aktivieren kann, falls SG aktiviert wurde) 
benutzen. (Bild SG)

Jetzt zu meinem Problem. Die Beschreibung zu diesem Status Stream ist in 
der Doku leider ziemlich dürftig.

https://www.xilinx.com/support/documentation/ip_documentation/axi_dma/v7_1/pg021_axi_dma.pdf

-> Seite 53

Wenn ich das richtig verstanden habe, muss ich diese App0 bis App4 
Register füllen. Hierzu habe ich einige Fragen:

-Wofür steht dieses FLAG(Wavediagram) am anfang?
-Muss das tlast vom Status stream synchron zu meinem tlast vom Daten 
stream sein?
-Muss das tlast immer mit dem App4 abgeschlossen werden oder kann ich 
auch nach App3 ein tlast setzen?
-fängt nach einem tlast transfer das Schreiben direkt wieder bei APP0 
bzw. FLGA an?

Ich hoffe ihr könnt mir bei meinen Fragen helfen.

Vielen Dank im vorraus

MFG

Steff

von Klakx (Gast)


Lesenswert?

Ich versuch mal zu unterstützen. Ich kenne diese SG-DMA aber noch nicht 
genau.

Steff schrieb:
> -Muss das tlast vom Status stream synchron zu meinem tlast vom Daten
> stream sein?

Taktsynchron ist es sicher. Jedoch wird es kommen, wenn die DMA Lust 
dazu hat. Inwiefern soll Input und Output bei dir synchron sein?

Steff schrieb:
> -Muss das tlast immer mit dem App4 abgeschlossen werden oder kann ich
> auch nach App3 ein tlast setzen?

Da Descriptoren auch explizit mit Nullen gefüllt werden, um die 
Blockgröße einzuhalten, ist es wohl anscheinend notwendig App4 mit zu 
setzen.

Leider kann ich dir zu den anderen Fragen nichts sagen, da das nur reine 
Vermutungen wären.

von Steff (Gast)


Lesenswert?

Klakx schrieb:
> Ich versuch mal zu unterstützen. Ich kenne diese SG-DMA aber noch
> nicht
> genau.
>
> Steff schrieb:
>> -Muss das tlast vom Status stream synchron zu meinem tlast vom Daten
>> stream sein?
>
> Taktsynchron ist es sicher. Jedoch wird es kommen, wenn die DMA Lust
> dazu hat. Inwiefern soll Input und Output bei dir synchron sein?

ne ich meinte nicht Input und Output.
Ich habe ja 2 Inputs zum DMA. Der Daten Stream (s_axis_s2mm) und der 
Status Stream(s_axis_sts). Ich würde gerne wissen ob diese beiden 
tlast's synchron sein müssen.

> Steff schrieb:
>> -Muss das tlast immer mit dem App4 abgeschlossen werden oder kann ich
>> auch nach App3 ein tlast setzen?
>
> Da Descriptoren auch explizit mit Nullen gefüllt werden, um die
> Blockgröße einzuhalten, ist es wohl anscheinend notwendig App4 mit zu
> setzen.

dann werde ich das mal sicherheitshalber so machen. Danke dir

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.