This is the mail archive of the
mailing list for the eCos project.
Interrupt latency Jitter in A&M's AdderII (PPC MPC852) board
- From: "Tzahi" <tzahi at terasync dot net>
- To: "Posting to" <ecos-discuss at sources dot redhat dot com>
- Date: Tue, 1 Jun 2004 21:24:59 +0200
- Subject: [ECOS] Interrupt latency Jitter in A&M's AdderII (PPC MPC852) board
Hello eCos users
We're trying to generate a timer's interrupt exactly every 100 milliseconds
(the desired frequency is 10Hz)
But we're facing a big variation in the timing of the actual interrupt
1. The HW timer's resolution is 2.1e-8 (20 Nanosecond)
2. Events every 120 sec - there is a peaks of amplitude up to 3.8e-5 Sec (38
milliseconds), sometimes the peak is small but still present
3. Periodic behavior (square wave) of about 5e-7 Sec (500 nanosecond) peak
to peak every 15sec
4. After ~2800sec sudden change of jitter mean by 1e-7s (100 nanosecond).
Some data on our system:
1. We had replaced the local 10MHz oscillator with an accurate freq
synthesizer (sync on a an atomic clock).
2. Board (and the timer's) speed is 48MHz.
3. The timer IRQ is generated by the CPM's GPTimer (1+2) every 100msec or
4. The timing is measured by setting the led ports (from the IRQ handler)
that are connected to a time interval counter (sync on a an atomic clock)
5. My ISR had been installed by using the cyg_drv_interrupt_create API
6. All other IRQs are masked.(for debug)
7. The Cashe is disabled
8. Kernel is AdderII +net
9. The application gets loaded (TFTP) and executed by the redboot.
I am suspecting that there are there are other "background" threads (GDB?
Networking?) That caused the Jitter
Do you know how can I disable those threads?
Can you think of anything else that can explain this Jitter?
TeraSync LTD. http://www.terasync.net/
Tel: +972(3)5360202 ext:1222
9 Altalef St., Industrial Zone - Yehud
P.O.Box. 160, Yehud, 56000
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss