[comp.realtime] DataAck w Response, Display & Disk

jmm@skivs.UUCP (Joel M. Miller) (10/01/89)

It's too bad that discussions of Mac data acquisition and experimental control
focus on who has the fastest boards or the glitziest interface, or whether
there are more Mac or PC data acq products to choose from.  I am no Mac expert
(this will soon be apparent), but I know that there are basic problems, related
to the Mac's architecture, principally, I think, to the fact that all NuBus
cards share a single hardware interrupt.  Without prioritized hardware
interrupts it is, apparently, not possible for one card to get at the CPU
while another card is using the bus.  Thus, acq cards are subject to being
detached from the CPU for significant and indeterminate times, resulting in
missed samples.

The main instance of this problem is caused by video cards, which grab the
NuBus every 60th of a second to update the display.  This can take a while.
Thus, if you are not to miss samples, you have the choice of accepting a 60Hz
maximum sampling rate (I need 1000Hz), or a "dead" display (I need to see the
data as it comes in).  If you are willing to do various non-standard things,
like turning off interrupts & writing directly to video ram, you can cludge
an "impoverished display"; but, then, why use a Mac?  DMA (eg, National
Instruments NB-DMA-8) does not help at all with the basic problem, and
additionally, makes the incomming data inaccessible to the CPU; closed-loop
control -- realtime response to incoming data -- becomes impossible.

Does anyone know a way around these problems -- a way to get a KHz, closed-
loop data rate with a live display?  The new Mac IIci has on-board video;
does this solve the problem?

I also need to save the raw, incoming data to disk, and I think there is a
problem with the way the Mac does disk writes, that it waits, idly, for
completion.  I could be wrong about this.  Does anyone know?  Perhaps there
other circumstances that would prevent a sample from getting to the CPU and
back into the outside world in a timely manner.  Does anyone know of any
"housekeeping" or other activities that can do this?
-- 
Joel M Miller                      Internet: jmm@skivs.ski.org
Smith-Kettlewell Institute         Usenet:   uunet!skivs!jmm
2232 Webster St                    Bitnet:   jmm%skivs.ski.org@uunet.uu.net
San Francisco, CA 94115            Voice:    415/561-1703     Fax: 415/561-1610