Moin!!!
> Ja, das kann ich verstehen, ich finde die logischen Verschaltungen in der Form da aber eher ungewöhnlich für. Du liest teilweise in der gleichen Schleife aus zwei Controls. Wenn du die beide von extern setzt, kann es passieren, dass das eine Control schon gesetzt ist, das andere noch nicht, der FPGA aber schon los läuft und damit schonmal die erste Iteration durch die Schleife unsinnig durchläuft. Hatte das auch mal, hab ich dann durch eine dritte Control gelöst, die vom Host als letztes gesetzt wurde, eine Case-Struktur auslöst, in der dann die beiden relevanten Steuerdaten enthalten sind - die sind dann definitiv schon geschrieben.
Naja, ich frage hier Nutzereingaben und Regelbefehle ab, die kommen ungetimed und "wirr", da kann ich kein "gültig!"-Flag setzen. Ich denke, ich habe sie durch die Logik entsprechend "entkoppelt".
> Naja, Race Conditions sind m.E. vor allem deswegen schlecht, weil sie geteilte Ressourcen überproportional auslasten. Auf dem FPGA gibt es aber zur Laufzeit keine geteilten Ressourcen, daher sehe ich das da nicht so kritisch und packe zumindest bei meinen Sachen nur dann Timing auf den FPGA, wenn ich's brauche.
Brauche ich! Ohne die Waits habe ich _keine_ Kommunikation mit dem RT-VI!
> Die Inkrementalgeber waren mir bis zu diesem Post neu, ansonsten find ich die Idee (oder die Ausführung als Integer wie oben vorgeschlagen) immer noch gut. Das schreiben der Ports halt erst nach der Verarbeitung in der Schleife, alle parallel...
Wie gesagt, das gibt es noch viel anderes, das würde den Thread hier unnötig aufblähen. Wenn ich das auch noch in Schleifen "komprimiere", wird's echt unübersichtlich. Ich kann da leider auch nicht die Indizes linear erhöhen, dann bräuchte ich Lookups, und... nee, laß mal. Außerdem läuft es ja schon!
> schnelle Suche:
ftp://ftp.ni.com/pub/branches/germany/vi..._fpga.pdf, Folie 34. Hab ich aber auch schon an anderer Stelle gelesen.
Klappt nicht - aber Google hilft! Naja, wenn es um die Frontpanelelemente geht, Memories haben auch keine, und die sind hier genauso lahm. Ich erzeuge jetzt mal minimales FPGA-Test-VI, und dann wird getestet, was das Zeug hält...
Vielen Dank bis hierhin,
Grüße,
Roland.