Garth Gaddy wrote:
> 
> I am doing 4 axis servo control w/ an ISA servo interface board and RTLinux. This 
>will eventually find it way into a machine that needs maximum uptime possible.  
>Therefore I would like to use a SCSI Raid controller with Hot-swap drives.
> I have been warned that the Raid controller, a pci bus master card, will take 
>priority over any ISA device and therefore I might not be able to maintain 
>determinism of 1khz ISR on the interface card.
> Does anyone know if this is true?
> 
> Secondly I have looked into a similar card in PCI form from Acromag.  I can 
>configure what interrupt I want it to generate, typically IRQ 5.
> Does anyone know how the interrupt controller resolves the SCSI Raid card and the 
>PCI Servo card's respective interrupts?
> Is there a way to set up interrupt prioritization so that the Servo card has 
>preemptive priority?

For a thing like yours I would get rid of RTL and RTAI services but rely
just only on the fact that they deplete Linux from hardware control.

Assuming that your board has the timing whithin it, I will just install
my handler and do all the stuff from within it. If you need to
communicate you can use shared memory and/or fifos. In RTAI I will go
directly to installing the handler at idt_table level "a la DOS".
Remember also that it is easy and you should use fp in interrupt
handlers if it is needed.

Naturally I will care of hardware interrupt priorities. On a UP you can
rotate priorities as you like in the 8259 PIC, on a machine with local
APIC enabled use the highest possible vector. Why should you refuse free
performances given by hard priorities?

Note that both RTL and RTAI implicitly prioritize intercepted Linux
interrupts because of the order they scan them in software dispatchers,
while for real time interrupts what said above remains valid.

In such a way you get minimum latency and avoid the overhead of RTL-RTAI
task switching, with a further cache entangling added to interrupt
switching.

If you can force your handler to stay cached, I do not know how but I've
been told it is possible, you'll get the best. Take into account that on
a modern UP PC even a very complex control algorithm for 4 axes is
likely to be runnable in the 10 Khz range. So you can get better
tracking and noise free performances. With Linux as lively as you like.

It is our preferred way of doing true hard real time control, i.e. go as
DSP as possible.

Ciao, Paolo.
--- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
----
For more information on Real-Time Linux see:
http://www.rtlinux.org/~rtlinux/

Reply via email to