Hidden Hidden Hidden Hidden
 

Working with Multiple i2x0 Controllers
REFERENCE > ADVANCED TECHNIQUES >

One can attach up to four i240 controllers to a computer to increase total system throughput. For example, four i240 controllers (where each is attached to a separate i4xx Card Cage or i100 box) can digitize 16 total channels at 41Ks/sec/channel; or 32 channels at 20.5K each. In this example, each controller runs at 166Ks/sec/controller and the entire system runs at 664Ks/sec/system.

When working with multiple controllers, the meaning of the "network number" becomes more important, since it selects a particular network in the Data Tree from which to operate. To digitize simultaneously from multiple controllers, one must select channels for digitizing in the Network page (any channel combination across all controllers), and then press the Start button in the Record page.

Multiple i240 USB Controllers attach to 1 USB Hub

One can attach up to four i240 USB controllers to a USB ≥ 2.0 High Speed hub, and then attach that hub directly to a computer. In this case, it is recommended that no other USB device attach to that hub. If working with multiple i240 controllers, please make sure you are working with instruNet software ≥ v3.0.37.

Multiple Controllers Do Not Digitize At Exact Same Sample Rate

Each i2x0 controller has it's own crystal oscillator that paces the collection of samples from that controller. One can expect these to be different by as much as 50 uSec per 1 second of digitizing (i.e. 50ppm). This means that if you digitize the same signal for 1 second from multiple controllers; and you synchronize the 1st point of the digitization via trigger (to make it accurate to +-10uSec); then the last point of the digitization from each controller will vary in time by as much as +-50uSec between the first controller and the other controllers. Put differently, if the 1st controller sample rate is X, then the sample rate of the other controllers will be at most (X * 1.00005), even though the sample rate field in the software is commanding all controllers to digitize at the same rate (due to inaccuracy of i2x0 crystal oscillator ic).

Digitizing without Trigger

When you start digitizing from multiple controllers with Trigger turned OFF, the Windows computer commands each controller to begin digitizing with approximately 1.0 mSec of time between each command. This means that the waves digitized from each controller will offset in time approximately 1.0 mSec between the 1st controller and 2nd controller, 1.0 mSec between the 2nd and 3rd, and so forth and so on.

Digitizing with Trigger

To reduce the start time between multiple controllers from approximatley 1mSec to less than 10uSec, one can set up all controllers to trigger from the same external trigger signal. This might or might not be convenient since it involves setting up an additional external signal.

Notice that each controller has its own Trigger settings (as opposed to one Trigger dialog box for entire computer). This is because each controller operates independently (i.e. each has its own processor that manages its own data acquisition task). To access a Trigger dialog for a specific network, press the Trigger button in the Setup Dialog, and then select a specific network in the Network popup menu. Setting the Trigger with multiple controllers is a little tricky since one controller cannot physically see the trigger signal attached to other controllers, and each controller has no way of sending messages to its colleagues in a short period of time. To make the digitizing from all networks trigger off the same signal, one must attach the trigger signal to one channel from each network, and set up the Trigger dialogs for each network to trigger off that one channel in each of their respective networks.

Trigger Example

For example, to trigger from the i4xx Ch29 Uio25_28 Din channel (4 bits interpreted as 0 to 15 value), one must specify this channel as the trigger source, set the Threhold to 7.5, and attach the trigger signal to UIO28. When UIO28 is high (i.e. 2V to 5V) Ch29 is read as a 4bit value between 8 and 15, and when UIO28 is held low (i.e. 0V to 0.8V) Ch29 is read as a 4bit value between 0 and 7.

More Information