Naruszenia czasowe w While loop

Tematy związane z LabVIEW FPGA oraz programowaniem układów.
krakers88
Posty: 4
Rejestracja: 11 wrz 2009 17:08
Kontakt:

Naruszenia czasowe w While loop

Post autor: krakers88 » 31 paź 2009 16:21

Witam

Mam następujący problem podczas kompilacji VI i wrzucania na kartę fpga (PCI 7831) wyskakuje mi komunikat o naruszeniach czasowych. Miałem co prawda już z tym problem, ale w pętli czasowej gdzie kod po prostu nie był w stanie się wykonywać z założoną częstotliwością.
Teraz mój program mieści się w całości w While Loop i wyskakuje komunikat o naruszeniach czasowych.

W związku z tym moje pytanie co determinuje szybkość wykonywania się tej pętli?
Na początku myślałem, że to wyjście analogowe które mam w pętli wymusza jej wykonywanie się tak, aby mieściło się w okresach jego próbkowania, ale zwątpiłem kiedy w innym programie z mniej złożonym kodem wewnątrz pętli miałem wyjście analogowe i opóźnienie czasowe np. 100 ms i to działało!!
Jak to możliwe?

Awatar użytkownika
bogdani
Administrator
Posty: 1309
Rejestracja: 30 lip 2003 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Ruda Śląska
Has thanked: 1 time
Been thanked: 1 time
Kontakt:

Naruszenia czasowe w While loop

Post autor: bogdani » 01 lis 2009 22:32

Może pokaż nam swój kod, abyśmy mogli powiedzieć, co jest przyczyną opóźnień...

bogdani
LabVIEW Champion, Certified LabVIEW Developer, Certified Professional Instructor
Tworzymy dedykowane rozwiązania do testów i pomiarów - www.veritech.pl

Ktoś ci pomógł na forum? Podziękuj dając pochwałę.

krakers88
Posty: 4
Rejestracja: 11 wrz 2009 17:08
Kontakt:

Re: Naruszenia czasowe w While loop

Post autor: krakers88 » 03 lis 2009 13:32

Witam dzięki za zainteresowanie.

Załączam screena programiku. W takiej postaci jak na obrazku działa, w starej formie w której występowały zbyt duże opóźnienia zamiast operacji zoptymalizowanych dla typu fixed-point były zwykłe mnożenia i dodawania które to były winne naruszeniom czasowym.
Problem jest niby rozwiązany, ale nadal nurtuje mnie jedno pytanie, mianowicie:
Co określa w jakim czasie ma się wykonywać pętla while-loop?
Jak widzicie w programiku jest opóźnienie czasowe nastawione na bodajże kilkaset us, ale w starym programie też było, a kompilator nie wiem czemu wywalał, że wymaga wykonania się operacji w pętli z opóźnieniem nie większym od 24.75ns.
Jaka jest tego przyczyna?
Załączniki
screen_1.JPG

ODPOWIEDZ