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.
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.