
ADIS16467 Data Sheet
Rev. C | Page 32 of 34
SERIAL PORT OPERATION
Maximum Throughput
When operating with the maximum output data (DEC_RATE =
0x0000, as described in Table 109), the maximum SCLK rate
(defined in Table 2) and minimum stall time, the SPI port can
support up to 12, 16-bit register reads in between each pulse of
the data ready signal. Attempting to read more than 12 registers
can result in a datapath overrun error in the DIAG_STAT register
(see Table 10). The serial port stall time (tSTALL) to meet these
requirements must be no more than 10% greater than the
minimum specification for tSTALL in Table 2.
The number of allowable registers reads between each pulse on
the data ready line increases proportionally with the decimation
rate (set by the DEC_RATE register, see Table 109). For example,
when the decimation rate equals 3 (DEC_RATE = 0x0002), the
SPI is able to support up to 36 register reads, assuming maximum
SCLK rate and minimum stall times in the protocol. Decreasing
the SCLK rate and increasing the stall time lowers the total
number of register reads supported by the ADIS16467 before a
datapath overrun error occurs.
This limitation of reading 12, 16-bit registers does not impact the
ability of the user to access the full precision of the gyroscopes and
accelerometers if the factory default settings of DEC_RATE =
0x0000 and FILT_CTRL = 0x0000 are used. In this case, the
data width for the gyroscope and accelerometer data is 16 bits,
and application processors can acquire all relevant information
through the X_GYRO_OUT, Y_GYRO_OUT, Z_GYRO_OUT,
X_ACCEL_OUT, Y_ACCEL_OUT, and Z_ACCEL_OUT
registers. Thirty-two bit reads of the sensor data do not provide
additional precision in this case. See the Gyroscope Data Width
(Digital Resolution) section and the Accelerometer Data Width
(Digital Resolution) section for more information.
Serial Port SCLK Underrun/Overrun Conditions
The serial port operates in 16-bit segments and it is critical that
the number of SCLK cycles be equal to an integer multiple of 16
when the CS pin is low. Failure to meet this condition causes
the serial port controller inside of the ADIS16467 to be unable
to correctly receive and respond to new requests.
If too many SCLK cycles are received before the CS pin is
deasserted, the user can recover serial port operation by asserting
CS, providing 17 rising edges on the SCLK line, deasserting CS,
and then attempting to correctly read the PROD_ID (or other
read-only) register on the ADIS16467. The user should repeat
these steps up to a maximum of 15 times until the correct data
is read.
If CS is deasserted before enough SCLK cycles are received, the
user must either power cycle or issue a hard reset (using the
RST pin) to regain SPI port access.
DIGITAL RESOLUTION OF GYROSCOPES AND
ACCELEROMETERS
Gyroscope Data Width (Digital Resolution)
The decimation filter (DEC_RATE register, see Table 109) and
Bartlett window filter (FILT_CTRL register, see Table 101) have
direct influence over the total number of bits in the output data
registers, which contain relevant information. When using the
factory default settings (DEC_RATE = 0x0000, FILT_CTRL =
0x0000) for these filters, the data width for the gyroscope data
width is 16 bits, which means that application processors can
acquire all relevant information through the X_GYRO_OUT,
Y_GYRO_OUT, and Z_GYRO_OUT registers.
The X_GYRO_LOW, Y_GYRO_LOW, and Z_GYRO_
LOW registers capture the bit growth that comes from each
accumulation operation in the decimation and Bartlett window
filters. When using these filters (DEC_RATE ≠ 0x0000 and/or
FILT_CTRL ≠ 0x0000), the bit growth is equal to the square root
of the number of summations in each filter stage. For example,
when DEC_RATE = 0x0007, the decimation filter adds eight (7 +
1 = 8, see Table 109) successful samples together, which causes
the data width to increase by 3 bits (80.5 = 3). When FILT_CTRL =
0x0002, both stages in the Bartlett window filter use four (22 = 4,
see Table 101) summation operations, which increases the data
width by two bits (40.5 = 2). When using both DEC_RATE =
0x0007 and FILT_CTRL = 0x0002, the total bit growth is 7 bits,
which increases the overall data width to 23 bits.
Accelerometer Data Width (Digital Resolution)
The decimation filter (DEC_RATE register, see Table 109) and
Bartlett window filter (FILT_CTRL register, see Table 101) have
direct influence over the total number of bits in the output data
registers, which contain relevant information. When using the
factory default settings (DEC_RATE = 0x0000, FILT_CTRL =
0x0000) for these filters, the data width for the accelerometer
data will be 20 bits. The X_ACCL_OUT, Y_ACCL_OUT, and
Z_ACCL_OUT registers contain the most significant 16 bits of this
data, while the remaining (least significant) bits are in the upper 4
bits of the X_ACCL_LOW, Y_ACCL_LOW, and Z_ACCL_LOW
registers. Because the total noise (0.6 mg rms, see Table 1) in
the accelerometer data (DEC_RATE = 0x0000, FILT_CTRL =
0x0000) is greater than the 16-bit quantization noise (0.25 mg ÷
120.5 = 0.072 mg), application processors can acquire all relevant
information through the X_ACCL_OUT, Y_ACCL_OUT, and
Z_ACCL_OUT registers. This setup enables applications to
preserve optimal performance, while using the burst read (see
Figure 32), which only provides 16-bit data for the accelerometers.
The X_ACCL_LOW, Y_ACCL_LOW, and Z_ACCL_LOW
registers also capture the bit growth that comes from each
accumulation operation in the decimation and Bartlett window
filters. When using these filters (DEC_RATE ≠ 0x0000 and/or
FILT_CTRL ≠ 0x0000), the bit growth is proportional to the
square root of the number of summations in each filter stage.
For example, when DEC_RATE = 0x0001, the decimation filter