Interrupts occurrence
Angelo Fraietta
angelo_f at bigpond.com
Mon Mar 25 23:29:09 UTC 2002
After some exhaustive testing I have come up with some figures that
represent data exchange rates between the Pic microcontroller and the
386 using a PLA as an interface on an ISA bus using an interrupt driven
I/O read/write paradigm.
What I have done is make the Pic and the 386 communicate with each
other, each triggering an interrupt with the other, causing it to write
to the other device.
With the RTEMS event being triggered every interrupt I have a constant
exchange rate of 1 message each way every 5 us.
Triggering the event only if the receive queue is empty gives me an
exchange rate of 1 Message every 4 us. I am saving 1 us by not sending
the unnecessary event.
The big factor in this test, however, is this method that I used to
check the exchange rates completely blows the 1 message every 650 us
measurement I previously made away, thus proving that the interrupt rate
will more than adequately sustain an input Midi stream running at
maximum transfer rate (31.25kbs, which is about 3 bytes per ms)
Angelo Fraietta wrote:
> You are right. Sending the event if the queue was not originally empty
> when the ISR came is not necessary. I was already looping the task
> until the queue was empty; I was, however, sending the event
> regardless -- which is actually wasting CPU cycles. Thanks for the
> tip? I'll see what I can get the interval down to by not sending an
> unnecessary event.
>
> Chris Johns wrote:
>
>>Angelo Fraietta wrote:
>>
>>>Within the ISR I am doing the following:
>>>
>>>Reading a 16 bit word from an I/O address
>>>Decoding and adding that word onto a queue that is emptied out by a
>>>running task
>>>Checking a second queue for data that needs to be transmitted
>>>Transmitting a word to the I/O card.
>>>Setting an event that causes the running task to empty the queue.
>>>
>>
>>I would only send the event if the queue is empty and have the task loop
>>until the queue is empty.
>>
>>
>
>--
>Angelo Fraietta
>
>PO Box 859
>Hamilton NSW 2303
>
>Home Page
>
>
>http://www.users.bigpond.com/angelo_f/
>
>There are those who seek knowledge for the sake of knowledge - that is CURIOSITY
>There are those who seek knowledge to be known by others - that is VANITY
>There are those who seek knowledge in order to serve - that is LOVE
> Bernard of Clairvaux (1090 - 1153)
>
>
--
Angelo Fraietta
PO Box 859
Hamilton NSW 2303
Home Page
http://www.users.bigpond.com/angelo_f/
There are those who seek knowledge for the sake of knowledge - that is CURIOSITY
There are those who seek knowledge to be known by others - that is VANITY
There are those who seek knowledge in order to serve - that is LOVE
Bernard of Clairvaux (1090 - 1153)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/users/attachments/20020326/79e3f150/attachment.html>
More information about the users
mailing list