FIFO Mode

FIFO mode is used to record signal data continuously to or from the computer memory (RAM) and hence onto the hard disk. It has a cost advantage as DDRx RAM and drives are of relatively low cost. Below is a description of the mode, we will concentrate on signal capture which equally applies to A/D (analogue signal capture) and digital cards. However the operation of a signal waveform generation card is much the same, just working in the opposite direction.

image showing approximate card data transfer rates to PC RAM and hard drive image showing data transfer path to DDRx RAM and hard drive

Method: During data transfer the whole of Spectrum M4i / M4x cards on-board memory is available as a transfer FIFO (first in first out) buffer ensuring reliable data movement, automatically controlled from the driver for best performance. In a continuous operation a section of this transfer ("FIFO") buffer is emptied to the PC whilst another section is filled by the card. This operation can work alongside the processing the data in your software application. Transfer starts with a trigger event, running until the user stop command, or until user defined number sample segments have been collected. Utilising the scatter-gather DMA technique transfer rates are dependent on computer component performance and the type of slot the card is plugged into. *The rates illustrated in the diagram above are for capture into computer DDRx RAM and achievable by many PC's equipped with second or third generation x8 or x16-lane PCI express slots. Some variation on the absolute maximum is to be expected and our PXIe M4x series cards are x4-lane with typically a transfer rate of about 1.7 GBytes per second.

Real-time capture to the hard-disk / solid-state drive has the great advantage of storage space and works well for most applications, but note that it is slower than RAM, a typical rate for a hard-disk drive might be 100MBytes/sec read speed. Most recent developments have seen serial Solid State Drives (SSD). As these drives become more common and cost effective, they offer at least double the transfer rate of a disk drive, hence the fastest solution of all. With signal capture operations, any signal data the hard disk cannot deal with is temporarily stored in RAM, but this can result in data backing-up, filling the RAM then the card's own memory in extreme cases. This will result in a data over-run message, at which point the Spectrum card driver will stop the card. For more information about increasing read/write speed to HDD / SDD drives click here for more information on RAID systems.

FIFO mode may be combined with features such as Multiple Recording / Replay for greater capture control, this way data is only captured (or generated) when an event of interest comes along, thus making best use of the available computer's PCI Express bus bandwidth. FIFO mode works under Linux™ or Windows™. The amount of RAM data storage available under 32 bit Windows is limited to about 3.2 GBytes with 4 GBytes fitted into the PC, as some space is always required for the operating system. These limits do not apply Windows 64 bit and the user can fit as much memory as the motherboard can hold!


DataQuest Solutions Ltd. | Phone: 01526 557171 | Email: info@dqsolutions.co.uk