5KHz acquisition control

Joel Sherrill joel.sherrill at OARcorp.com
Mon Jun 7 23:43:47 UTC 2010


On 06/07/2010 06:29 PM, Eric Norum wrote:
> Indeed.
> I suspect that many of us expressing concern about kHz and up system 
> clock rates are showing our age -- we used 50 Hz to 100 Hz system 
> clocks back in the days of MVME167 cards (25 MHz 68040).   Machines 
> are a lot faster now -- perhaps a 5 kHz clock is not unreasonable 
> nowadays.
>
As an experiment a few years ago, I wanted to see how low
the clock tick could go on a gen5200 PPC (~400Mhz 603e core
as I recall).  It could set the tick at 5 microseconds and ticker
still ran.  Much below that and the system quit making forward
progress.

Jennifer and I have ran less modest 603e systems at either
250 or 500 microsecond ticks in order to poll ~10 serial
ports on every tick.  We had greater serial throughput polling.
No noticeable impact on the ~40 tasks in the application
using either individual UART interrupts or polling.

Given a sufficiently fast processor, 5Khz shouldn't be a problem.

But whether this works or not is a balancing act.  You could
do too much work per ISR or at the task level and the mix
is unsustainable.  But given a little care, it should work
with no trouble.

And Till.. I have recommended 1 millisecond ticks for at least
10 years.  Each on the ERC32, it isn't that much load.  And it
gets rid of a LOT of tick rounding issues on delays and timeouts. :)

--joel
>
> On Jun 7, 2010, at 3:18 PM, Till Straumann wrote:
>
>> Not sure. Having a higher resolution system clock can be quite useful
>> since it allows you to use finer-grained timeouts (on semaphores, 
>> queues, sockets, ...)
>> or RTEMS timers etc. which can be desirable.
>>
>> I have started to use a 1kHz clock by default on our MVME6100 boards
>> (1GHz powerpc) without noticeable impact on CPU load.
>>
>> -- Till
>>
>>
>> On 06/07/2010 05:00 PM, Daron Chabot wrote:
>>> Matt,
>>>
>>> I've used a 455 MHz Pentium 3 interrupting at over 20 kHz as part of 
>>> a VME-based data acquisition system.
>>>
>>> I agree with Robert: if you can generate interrupts at the frequency 
>>> you need, _without_ using system's "ticks", that's the better 
>>> approach. Hopefully your ADC hardware can generate interrupts upon 
>>> conversion, or upon a "high-water-mark", or something similar...
>>>
>>> If that's not an option, you may be able to use one of the spare 
>>> timers on the i8254 chip (if your system is so equipped).
>>>
>>>
>>> -- dc
>>>
>>> On Mon, Jun 7, 2010 at 4:23 PM, Robert Deschambault 
>>> <robert.deschambault at gmail.com 
>>> <mailto:robert.deschambault at gmail.com>> wrote:
>>>
>>>     Hi,
>>>
>>>     In my opinion, I wouldn't run the RTEMS with a clock tick like
>>>     that, I would find a way to generate an external interrupt based
>>>     on a hardware timer.  I have successfully run RTEMS on a 40 MHz
>>>     LEON2, with no changes to the RTEMS clock ticks, to accept a 16
>>>     KHz interrupt signal for a fuzzy logic control loop to control a
>>>     gimbal.  Worked very well.
>>>
>>>
>>>     On Mon, Jun 7, 2010 at 4:12 PM, Matt Rippa <mrippa at gemini.edu
>>>     <mailto:mrippa at gemini.edu>> wrote:
>>>
>>>         Hi -
>>>
>>>         I would like to know your thoughts regarding common
>>>         practices for an RTEMS system requiring a 5 KHz sample rate.
>>>         The hardware is 600MHz i386/PC-104 based. Reading through
>>>         the RTEMS C users guide the Rate Monotonic Scheduler appears
>>>         to be what I'm interested in. Basically I need to read
>>>         inputs from hardware, filter and process results, then write
>>>         outputs with a period of 200 us.
>>>
>>>         I understand I can set the RTEMS system clock ticks to get
>>>         this resolution. My question is, is this a common and
>>>         recommend practice for this kind of sample rate? Or do
>>>         people favor using on-board programmable interrupt timers
>>>         for this purpose? Is using an external interrupt timer on
>>>         the pci bus a common practice if your SBC doesn't provide
>>>         any timers?
>>>
>>>         Thanks for any input.
>>>
>>>         -Matt Rippa
>>>         _______________________________________________
>>>         rtems-users mailing list
>>>         rtems-users at rtems.org <mailto:rtems-users at rtems.org>
>>>         http://www.rtems.org/mailman/listinfo/rtems-users
>>>
>>>
>>>
>>>
>>>     -- 
>>>     Bob Deschambault
>>>     6614 Astro Court, Mississauga
>>>     Ontario, Canada L5N 7J2
>>>     home: 905 824 7159
>>>     cell: 416 457 7163
>>>
>>>     _______________________________________________
>>>     rtems-users mailing list
>>>     rtems-users at rtems.org <mailto:rtems-users at rtems.org>
>>>     http://www.rtems.org/mailman/listinfo/rtems-users
>>>
>>>
>>>
>>> _______________________________________________
>>> rtems-users mailing list
>>> rtems-users at rtems.org
>>> http://www.rtems.org/mailman/listinfo/rtems-users
>>>    
>>
>> _______________________________________________
>> rtems-users mailing list
>> rtems-users at rtems.org <mailto:rtems-users at rtems.org>
>> http://www.rtems.org/mailman/listinfo/rtems-users
>
> -- 
> Eric Norum
> wenorum at lbl.gov <mailto:wenorum at lbl.gov>
>




More information about the users mailing list