Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
17.03.2014, 09:41 (Dieser Beitrag wurde zuletzt bearbeitet: 17.03.2014 10:09 von jg.)
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.
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.
17.03.2014, 10:09 (Dieser Beitrag wurde zuletzt bearbeitet: 17.03.2014 10:10 von GerdW.)
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!
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.