Specifications
Comedi
148 / 148
Differential IO
. . .
Direct Memory Access (DMA)
DMA is a method of transferring data between a device and the main memory of a computer. DMA operates differently on
ISA and PCI cards. ISA DMA is handled by a controller on the motherboard and is limited to transfers to/from the lowest
16 MB of physical RAM and can only handle a single segment of memory at a time. These limitations make it almost
useless. PCI (‘bus mastering’) DMA is handled by a controller on the device, and can typically address 4 GB of RAM and
handle many segments of memory simultaneously. DMA is usually not the only means to data transfer, and may or may
not be the optimal transfer mechanism for a particular situation.
First In, First Out (FIFO)
Most devices have a limited amount of on-board space to store samples before they are transferred to the Comedi buffer.
This allows the CPU or DMA controller to do other things, and then efficiently process a large number of samples simul-
taneously. It also increases the maximum interrupt latency that the system can handle without interruptions in data.
Comedi command
Comedi commands are the mechanism that applications configure subdevices for streaming input and output.
command
See "Comedi command ".
configuration option
instruction
Comedi instructions are the mechanism used by applications to do immediate input from channels, output to channels, and
configuration of subdevices and channels.
instruction list
Instruction lists allow the application to perform multiple Comedi instructions in the same system call.
option
See Also "option list ".
option list
Option lists are used with the comedi_config utility to perform driver configuration.
See Also "configuration option ", "option ".
overrun
This is an error message that indicates that there was device-level problem, typically with trigger pulses occurring faster
than the board can handle.
poll
The term poll (and polling) is used for several different related concepts in Comedi. Comedi implements the poll()
system call for Comedi devices, which is similar to select(), and returns information about file descriptors that can be
read or written. Comedilib also has a function called comedi_poll(), which causes the driver to copy all available data
from the device to the Comedi buffer. In addition, some drivers may use a polling technique in place of interrupts.