LabVIEWForum.de
Ausführungstiming und ADC sampling Rate - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Module (/Forum-LabVIEW-Module)
+---- Forum: LabVIEW FPGA (/Forum-LabVIEW-FPGA)
+---- Thema: Ausführungstiming und ADC sampling Rate (/Thread-Ausfuehrungstiming-und-ADC-sampling-Rate)



Ausführungstiming und ADC sampling Rate - Stefan_r - 17.03.2014 09:41

Guten Morgen,

Ich habe drei Fragen zum detaillierteren Verhalten vom LabView FPGA (genauer dem CRio 7852R, als PciE-Karte)

1. Ich habe im VI nur zwei While-Loops, die keine Abhängigkeiten untereinander und keine Start Abhängigkeiten haben. Beide fangen also direkt beim Starten des FPGA's an zu laufen. Ich frage mich, wie synchron das passiert? Werden sie im gleichen Takt gestartet? Für mich ist absolute Synchronität wichtig.

2. Der ADC sollte mit 750kHz sampeln können. Nehme ich eine while Schleife und lasse den Wert des ADC nur "schnell" in einem Register speichern, komme ich auf eine Ausführungsrate von 808kHz. Was genau bedeutet das für den ADC? Verliere ich dort Genauigkeit wenn ich es über 750kHz laufen lasse?

3. Ich möchte in der schnellstmöglichen Zeit Daten sampeln und weiterverarbeiten. Dazu möchte ich erst die Daten vom ADC einlesen und in einem Register speichern (Loop 1) und dann Berechnungen anstellen (Loop 2). Die Frage ist nun, zu welchem Zeitpunkt der ADC den Wert in das Register schreibt. Sprich das FPGA fährt hoch die Loop startet, der ADC liest den Wert. Braucht er nun 1,3us (die 750kHz) um den Wert zu schreiben oder kann er sofort einen Wert schreiben und muss dann jedoch erst 1,3us warten bis der nächste kommt?
Die Frage dabei ist halt, wie kann ich in Loop2 möglichst dicht die aktuellen Werte aus Loop 1 nutzen? Wenn Der ADC den Wert bei Schleifenstart sofort schreibt und dann wartet, könnte ich Loop 2 um ein paar clock cycles verschieben und müsste nicht eine ganze Loop Runde warten, bis der Wert im Register aktuell ist. Wenn jedoch erst nach 1,3us der ADC seinen Wert schreibt, brauche ich die Loop nicht verzögern weil dann ja sofort der nächste Loop durchgang ansetzt und den Wert nimmt. Dabei spielt natürlich auch Frage 1 eine Rolle.


Im Anhang ist mal das betreffende VI zu sehen. Ich hoffe ich habe mich halbwegs verständlich ausgedrückt.


RE: Ausführrungstiming und ADC sampling Rate - GerdW - 17.03.2014 09:55

Hallo Stefan Rasch,

CrossPosts bitte immer auch als solche markieren!


RE: Ausführrungstiming und ADC sampling Rate - Stefan_r - 17.03.2014 10:07

Ah, danke für den Hinweis. Werde ich das nächste mal berücksichtigen.

Mir ist aufgefallen das mit im englischen Forum um 3 Uhr morgens wohl keiner Antworten wird. Und dass ich hier eine schnelle Antwort bekomme weiß ich bereits.


RE: Ausführrungstiming und ADC sampling Rate - GerdW - 17.03.2014 10:09

Hallo Stefan,

Zitat:Mir ist aufgefallen das mit im englischen Forum um 3 Uhr morgens wohl keiner Antworten wird.
Nun ja: im NI-Forum hast du die Chance, rund um die Uhr Antworten zu erhalten. Schließlich schreiben dort LV-User weltweit…

Aber deine Frage ist schon sehr speziell! Hast du schon mal den NI-Support angerufen und dort gefragt?


RE: Ausführungstiming und ADC sampling Rate - Stefan_r - 17.03.2014 10:12

Ich dachte der Support und dieses Forum wären in gewisser weise das gleiche. Ist das nicht der Fall kann ich gerne beim Support anrufen.


RE: Ausführungstiming und ADC sampling Rate - GerdW - 17.03.2014 10:13

Hallo Stefan,

sowohl das LVF als auch das NI-Forum werden hauptsächlich von freiwilliger Arbeit von LV-Usern getragen. Ab und zu wird auch ein NI-Mitarbeiter (beim NI-Forum meist am blauen Username zu erkennen) Beiträge verfassen.

Der NI-Support (089-7413130) ist dagegen was komplett anderes!


RE: Ausführungstiming und ADC sampling Rate - Stefan_r - 17.03.2014 10:46

So zur Vollständigkeit gebe ich mal die Antworten des Supports wieder:

1. Ja die Schleifen starten Synchron

2. Wenn 808kHz gehen, wird die Genauigkeit nicht gesenkt. An der Stelle könnte die Spezifikation des ADC's vielleicht einen Sicherheitsmargin beinhalten

3. Nach dem LabView Datenflussprinzip wird das Ergebnis des ADC Knotens erst bei Beendigung aktiviert. Sprich sobald der Wert in das Register geschrieben wird ist die Schleife auch zu Ende.