Strona 1 z 1

Naruszenia czasowe w While loop

: 31 paź 2009 16:21
autor: krakers88
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?

Naruszenia czasowe w While loop

: 01 lis 2009 22:32
autor: bogdani
Może pokaż nam swój kod, abyśmy mogli powiedzieć, co jest przyczyną opóźnień...

bogdani

Re: Naruszenia czasowe w While loop

: 03 lis 2009 13:32
autor: krakers88
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?