Skip to main content
Skip table of contents

3.2 - Stream Mode [U6 Datasheet]

The fastest data rates on the U6 occur when operating in stream mode.  Much of the command response overhead is eliminated in stream mode because the U6 is responsible for initiating IO operations.  Collected data is stored in the U6's stream buffer it is retrieved by the host application.  The end result is a continuous data stream, sampled at regular intervals, collected with a minimum number of command response data sets [1.]. 

As samples are collected, they are placed in a small FIFO buffer on the U6, until retrieved by the host.  The buffer typically holds 984 samples, but the size ranges from 512 to 984 depending on the number of samples per packet.  Each data packet has various measures to ensure the integrity and completeness of the data received by the host.

The U6 uses a feature called auto-recovery.  If the buffer overflows, the U6 will continue streaming but discard data until the buffer is emptied, and then data will be stored in the buffer again.  The U6 keeps track of how many packets are discarded and reports that value.  Based on the number of packets discarded, the UD driver adds the proper number of dummy samples (-9999.0) such that the correct timing is maintained.

Subsections

Table 3.2.1 and 3.2.2 provide typical stream-related performance results [2.]. The tabulated data is useful for determining what types of signals can be analyzed using a U6.  The U6 is capable of streaming analog data [3.] at regular discrete intervals.  As a result, various discrete time signal analysis tools can be utilized to interpret data.

Table 3.2.1. Stream scan rates for stream mode over various gain, resolution index, channel count combinations.

Maximum Scan Rate

Resolution Index

Gain : Range

1 Channel [Hz]

2 Channels [Hz]

4 Channels[Hz]

8 Channels [Hz]

1

1 : ±10V

50k

25.0k

12.5K

6.3K

10 : ±1V

50k

2.2k

1.1k

540

100 : ±0.1V

50k

444

222

110

1000 : ±0.01V

50k

178

88

44

2

1 : ±10V

30k

14.5k

7.3k

3.6k

10 : ±1V

30k

2.0k

1.0k

500

100 : ±0.1V

30k

220

110

54

1000 : ±0.01V

30k

178

88

44

3

1 : ±10V

16k

7.8k

3.9k

2.0k

10 : ±1V

16k

817

408

204

100 : ±0.1V

16k

175

87

43

1000 : ±0.01V

16k

175

86

43

4

1 : ±10V

8.4k

4.2k

2.0k

990

10 : ±1V

8.4k

742

371

185

100 : ±0.1V

8.4k

165

85

41

1000 : ±0.01V

8.4k

172

84

42

5

1 : ±10V

4.0k

2.0k

1.0k

500

10 : ±1V

4.0k

370

185

92

100 : ±0.1V

4.0k

163

82

40

1000 : ±0.01V

4.0k

165

82

40

6

1 : ±10V

2.0k

1.0k

500

250

10 : ±1V

2.0k

184

92

46

100 : ±0.1V

2.0k

153

77

38

1000 : ±0.01V

2.0k

153

76

38

7

1 : ±10V

1.0k

500

250

130

10 : ±1V

1.0k

156

78

39

100 : ±0.1V

1.0k

133

66

33

1000 : ±0.01V

1.0k

133

66

33

8

1 : ±10V

500

250

130

62

10 : ±1V

500

120

62

33

100 : ±0.1V

500

105

52

26

1000 : ±0.01V

500

106

53

26

A distinction between the terms scan and sample must be drawn to better interpret the data from Table 3.2.1.  A sample and a scan represent two separate parameters which make up a U6 data stream.  The definitions for each parameter are as follows:

Sample - A reading from one channel/address.
Scan -  One reading from a list of channels/addresses (scan list).

The scan rate, by definition, is a fraction of the sample rate where the fraction is the inverse of the number of channels being read in a single scan.  The scan rate is defined as:

ScanRate = SampleRate / NumChannels

The U6 has a maximum sample rate of 50 ksamples/second.  The stated maximum sample rate is achievable when a stream is configured with Range = +/-10V and ResolutionIndex = 0 or 1 [4.].  This is reflected in the first row of data in table 3.2.1 (highlighted).  The reported scan rate is simply the maximum sample rate divided by the number of channels in the scan list (within ~10%).  Note that the sample rate and scan rate for a single-channel stream are equal since the NumAddresses = 1.

The maximum scan rate will decrease at higher resolution index and range settings simply because analog conversions take longer to complete.  Table 3.2.2 illustrates how analog conversion times increase at higher resolution index and range settings.

Table 3.2.2. Stream performance characteristics for single-channel stream over various gain and resolution index combinations.

Resolution Index

Peak-to-Peak Noise

Interchannel Delay

[16-bit counts]

[µs]

Gain/Range: 1/±10V

1

±3.0

15

2

±2.5

30

3

±1.5

40

4

±1.0

110

5

±1.0

220

6

±0.5

440

7

±0.5

875

8

±0.5

1,740

Gain/Range: 10/±1V

1

±4.5

205

2

±3.5

220

3

±2.5

545

4

±1.5

600

5

±1.0

1,210

6

±1.0

2,430

7

±0.5

2,880

8

±0.5

3,740

Gain/Range: 100/±0.1V

1

±16.0

1,010

2

±11.0

2,030

3

±8.0

2,560

4

±5.0

2,630

5

±3.0

2,730

6

±2.5

2,940

7

±1.5

3,380

8

±1.0

4,240

Gain/Range: 1000/±0.01V

1

±67.0

2,500

2

±42.5

2,535

3

±21.5

2,560

4

±16.5

2,630

5

±11.5

2,730

6

±11.0

2,940

7

±6.0

3,380

8

±4.5

4,240

Notes:
1.  The number of command response data sets used to retrieve stream data from the U6 depends on the number of data points allowed to accumulate in the in the U6's stream buffer.

2.  Some systems might require a "USB high-high" configuration to obtain the maximum speeds listed.  A “USB high-high” configuration means the U6 is connected to a high-speed USB2 hub which is then connected to a high-speed USB2 host.  Even though the U6 is not a high-speed USB device, such a configuration does often provide improved performance.

3. Channel 14 is not stream-able. The readings from the internal temperature sensor(channel 14) need extended settling time and this takes too long for stream-mode.

4.  Stream mode only supports resolution index values 0-8 (24-bit ADC not supported).  Therefore, setting the resolution index to 0 is equivalent to resolution index = 1.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.