[En-Nut-Discussion] high speed serial

Bengt Florin bengt at florin.se
Tue Jan 11 15:40:15 CET 2005


Some things to try a rainy day.

When I started to play with Nut/OS, I also found some unexpected long
interrupt latency.
By tracking down all long critical sections I found that NutTimerStart() in
timer.c
made a long division.
See the line...

"tn->tn_ticks_left = (ms / 125) * 2 + ((ms % 125) > 62);"

I don't know whether this is still there in current version, but defining
NUT_CPU_FREQ
made a significant improvement.

I guess I'll have to get up-to-date with latest version some day, but I'm
still kind of fond of 3.3.2.

Bengt

-----Original Message-----
From: en-nut-discussion-bounces at egnite.de
[mailto:en-nut-discussion-bounces at egnite.de]On Behalf Of Matthias
Ringwald
Sent: den 11 januari 2005 15:17
To: Ethernut User Chat (English)
Subject: Re: [En-Nut-Discussion] high speed serial


hi

I'm throwing in at least a multiply by 2 for the receive interrupts
as the avr has a byte deep fifo buffer for incoming bytes (which
is currently not used in nut/os drivers's but possible)

so you could calculate on one IRQ per 2 bytes.
yet, even with this, we're having problems
with nut/os other stuff, which is blocking any IRQ for a very long
time (as we're loosing a byte at 115200 at 7.238, even calculation for
3 byte FIFO would result in no interrupts during 300 us if I didn't make
a mistake )

so, my opinion is that, using current nut/os you will not need to reach
the limits of the avr. yet, I cannot tell you what has to be done,
altough
we are very much interested in hunting that problem down.

matthias


On 10.01.2005, at 13:57, Harald Kipp wrote:

>
>>
>> What's Haralds opinion?
>
> Almost the same. It could be done, but I doubt it
> will work when processing one interrupt per character.
>
> Harald
>
> _______________________________________________
> En-Nut-Discussion mailing list
> En-Nut-Discussion at egnite.de
> http://www.egnite.de/mailman/listinfo.cgi/en-nut-discussion

_______________________________________________
En-Nut-Discussion mailing list
En-Nut-Discussion at egnite.de
http://www.egnite.de/mailman/listinfo.cgi/en-nut-discussion




More information about the En-Nut-Discussion mailing list