Kwonsk allways forgets to broadcast his improvements widely ...
Hi, all. Improving RTsupport for uClinux (EZ328) was done. internal timer handling code was changed. Instead of using restarting mode, new code is using free run mode. this change removed timer overrun (occur when TCMP is smaller than interrupt latency). It's timing result is very impressive to me. Toggling example (same code as previous release) shows almost no drift. It might be bellow 50 usec. I could not say exact timing because of my poor analog oscilloscope. I'm preparing diff for you, and you could get it soon. Some measurement : 1) from h/w interrupt to rt_oneshot_timer_irq = ~50 usec 2) time for rtl_schduler (priority resolver) = ~80 usec therefore time from actual h/w interrupt signal to corresponding rt_task is about 130 usec. and this time is almost constant (tested with memory logging free-running TCN value and scope). This latency could be reduced with asm code but it sacrifies portability and easy maintenance. Do not request too much for this little lovely EZ328 please. :-) Q) why need about 130 usec? A) RTIME calc needs more instructions. Ping flood test (network load) did not change this value significantly. Thanks. kwonsk. This message resent by the [EMAIL PROTECTED] list server http://www.uClinux.com/
