Fast periodic tasks in RT Linux

What is the shortest interval at which RT Linux can perform a periodic task (in real time)?

I study hardware and software solutions for a scientific data collection application. These requirements include real-time feedback monitoring of physiological processes at a frequency of about 40 kHz. There are hardware solutions (using programmable DSP chips), but I'm curious if the Linux task can handle the whole problem in real time. The task is simple: read the sample from the A / D board, perform simple arithmetic, and write the sample to the A / D board. Can RT Linux schedule this task 40k times / second or is it an unreasonable speed?

If we can perform a periodic task on the CPU, we can write an application without hardware dependency. If not, we will have to use a hybrid CPU / DSP system. Obviously, I hope for the first.

+5
source share
1 answer

According to http://www.ibm.com/developerworks/linux/library/l-real-time-linux/ , even non-RT linux on a decent processor can deliver an average timer interval of 20 μs, which corresponds to 50 kHz. The same article mentions that high-resolution timers in the 2.6 kernel with some RT modes can transmit intervals of 1 μs or 1000 kHz. Therefore, I do not think it is unreasonable to expect that the RT core will be able to reliably deliver 40 kHz.

+2
source

All Articles