ICHAUS TW8

iC-TW8 16-BIT SIN/COS INTERPOLATOR liminar y
pre
WITH AUTO-CALIBRATION
Rev A2, Page 1/12
FEATURES
APPLICATIONS
♦
♦
♦
♦
♦ Sine/cosine interpolation
♦ Signal conditioning with auto
calibration
♦ Linear and rotary encoders
♦ Flexible incremental encoder
systems
♦
♦
♦
♦
♦
♦
♦
♦
♦
♦
♦
Input frequency of up to 125 kHz
Binary/decimal interpolation factors from x0.25 to x16384
Post-AB divider [1/1 to 1/32] allows fractional resolution
Differential sine/cosine input signal range of
20 mV to 1.4 V peak-peak
Automatic offset, gain match and phase correction
Simple automatic one-pin calibration
Easy configuration: by static pins (for generic ABZ output)
Advanced configuration: 1-wire interface, 3 and 4-wire SPI
(32 MHz), serial I2 C EEPROM
PWM or ABZ quadrature encoder output signals
Incremental ABZ output to 8 MHz (32 MHz edge separation)
Position and velocity read-out (32 bit SPI)
Sophisticated error handling and signal monitoring
Static 64 position LUT to compensate for arbitrary sensor
distortions
Supply voltage range of 3.1 V to 5.5 V
Extended temperature range of -40 to +125 °C
PACKAGES
QFN48 7x7
BLOCK DIAGRAM
AVDD
DVDD
SIN+
SIN-
OUTA
+
_
ADC
COS+
COS-
+
_
ADC
QUADRATURE
PWM
GENERATOR
DIGITAL
SIGNAL
PROCESSING
OUTZ
SDA
ZERO+
ZERO-
OUTB
+
_
EEPROM
MASTER
SCL
WP
XIN
XOUT
CRYSTAL
DRIVER
VC
VREF
EESEL
iC-TW8
BANDGAP
1-WIRE
INTERFACE
IR
MEMORY
SPI_SO
xRST
SPI_SI
RESET
SPI
SPI_SCLK
SPI_xSS
FAULT
C3
STATUS
PIN
CONFIG.
INTERFACE
FRAME
CLOCK
CONTROL
CALIB
C2
C1
C0
FAB
PINSEL
AVSS
Copyright © 2013 iC-Haus
DVSS
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR liminar y
pre
WITH AUTO-CALIBRATION
Rev A2, Page 2/12
DESCRIPTION
The iC-TW8 is a 16-bit application-specific DSP interpolator for sine/cosine signals with automatic calibration and adaption of signal path parameters during
operation to maintain minimum angular error and jitter. Angular position is calculated at a programmable
resolution of up to 65,536 increments per input cycle. Automatic calibration and adaption (correction
during operation) of sensor offset, Sin/Cos amplitude
match, and phase quadrature is provided. Additionally, a 64-byte lookup table (LUT) is available to correct for residual harmonic distortion in the sensor signals.
The iC-TW8 accepts 10 mV to 700 mV differential
Sin/Cos input signals directly from magnetic or optical sensors – no external signal conditioning is required in most applications. The differential zero (reference) input accepts a wide range of digital and analog index gating sources such as Hall or MR sensor bridges. The Z output width, position relative to
the Sin/Cos inputs, and synchronization to the AB
quadrature outputs is fully programmable.
In addition to industry-standard incremental ABZ
quadrature output, the iC-TW8 provides optional
PWM (potentiometer) and serial-only (SPI or 1-wire)
output modes for special or imbedded applications.
The incremental ABZ quadrature output can be generated at a frequency of up to 8 MHz (31 ns edge
spacing); the maximum output frequency can also be
limited so as not to overwhelm connected counters.
In PWM output mode, the iC-TW8 provides a differential pulse-width modulated signal proportional to
the calculated angle (position) of the Sin/Cos inputs.
An RC filter may be used to provide an analog voltage output for potentiometer applications, or to drive
an external ADC for simple single-turn absolute applications. Synchronous digital filters may be implemented using an external microcontroller or FPGA
for more sophisticated or imbedded applications.
In serial-only output mode, the iC-TW8’s internal 32bit position counter and instantaneous angular velocity register can be read via the built-in SPI or 1-wire
serial ports at clock rates of up to 32 MHz. Higher input signal frequencies are allowed in serial-only output mode since the ABZ output frequency limitation
is not applicable.
The iC-TW8 offers two configuration modes. Pin
configuration mode provides simple, static configuration that does not require any programming or complicated calibration. Pin configuration mode uses a
subset of the iC-TW8’s complete capabilities including ABZ quadrature output, a limited choice of the
most commonly used interpolation (resolution) and
hysteresis values, and one-button calibration. Eight
resistors set voltage levels at four configuration input
pins to select all operating parameters, simplifying
product assembly. One-button auto calibration sets
input gain and compensates sensor offset and Sin/Cos channel gain match and phase with just a few
input cycles and then stores the compensation values to EEPROM.
In more sophisticated applications, serial configuration mode allows access to all iC-TW8 features. Complete device configuration using the bidirectional SPI or 1-wire serial ports provides access to all resolutions (including fractional interpolation), the sensor distortion LUT, fully programmable
hysteresis, and advanced noise/jitter filtering, quality
monitoring, and fault detection capabilities.
The iC-TW8 requires only two external components
for operation, a serial EEPROM for storage of configuration and calibration data, and a clock oscillator
or crystal. An internal RC oscillator is provided for
cost-sensitive applications. Split analog and digital
power supply inputs allow optimal filtering for noisy
industrial environments. An integrated power-on reset circuit can be overridden by an external hardware
reset signal if necessary.
iC-TW8 16-BIT SIN/COS INTERPOLATOR liminar y
pre
WITH AUTO-CALIBRATION
Rev A2, Page 3/12
CONTENTS
PACKAGING INFORMATION
4
PIN CONFIGURATION QFN48-7x7
(topview) . . . . . . . . . . . . . . . . .
4
PIN FUNCTIONS
4
. . . . . . . . . . . . . . .
ABSOLUTE MAXIMUM RATINGS
7
THERMAL DATA
7
ELECTRICAL CHARACTERISTICS
8
OPERATING REQUIREMENTS: SPI/1-wire Interface
10
ADDITIONAL INFORMATION
11
DESIGN REVIEW: Function Notes
REVISION HISTORY . . . . . . . . . . . . .
11
11
ATTACHMENTS
PC: Description of Pin Configuration Mode .
SC: Description of Serial Configuration Mode
13
13
28
iC-TW8 16-BIT SIN/COS INTERPOLATOR liminar y
pre
WITH AUTO-CALIBRATION
Rev A2, Page 4/12
PACKAGING INFORMATION
PIN CONFIGURATION QFN48-7x7
(topview)
PIN FUNCTIONS
No. Name Function
38 AVDD +3.1 V to 5.5 V Analog Supply Voltage
AVDD and DVDD can be powered either
mutually or separately but must be the
same voltage.
46 AVSS Analog Ground
AVSS must be connected to DVSS externally.
21 DVDD +3.1 V to 5.5 V Digital Supply Voltage
15 DVSS Digital Ground
TP
... other
Connect the backside paddle to a
ground plane which must have AVSS
potential.
Refer to the following table for a detailed
description.
PIN FUNCTIONS
No. Name
I/O
Function
Description
1
nc
Pin has no connection to die. Connect to DVSS on PCB.
2
xRST
Digital in,
low active,
40 kΩ pull-up
Reset Input
The device is held in reset as long as xRST is low.
For operation at 5 V, connect 68 kΩ to DVSS (changes the power-onreset threshold to approx. 4 V). Refer to section Power-on-Reset and
Startup for more information on reset.
3
FAB
Digital in,
5 kΩ pull-down
Test Enable Input
Fabrication test is enabled when pin is high during reset. This pin must
be connected to DVSS for normal operation.
4
EESEL
Digital in,
Selection Input
150 kΩ pull-down
Pin must be tied low.
5
CALIB
Digital in,
10 kΩ pull-up,
hysteresis
Device enters calibration mode on falling edge of CALIB. Adaptation
parameters are written to the external eeprom on rising edge of CALIB.
This pin should be left floating or connected to DVDD if not used.
6
CLOCK
Digital in/out,
Clock Output
150 kΩ pull-down
The pin is a programmable clock output that can be used for PWM
synchronization.
A connection to DVSS is advisable when not in use.
7
IR
Digital in/out,
150 kΩ pull-up
Pin is bi-directional. Refer to Programmer’s Reference for more details.
8
FRAME
Digital in/out,
Sync Output
150 kΩ pull-down
This pin outputs the internal ADC sampling clock, which can be used to
synchronize downstream circuits.
A connection to DVSS is advisable when not in use.
9
SPI_SO
Digital out
SPI Slave Output
Pin directly connects to an SPI master MI pin.
10
SPI_SI
Digital in
SPI Slave Input
Pin directly connects to SPI master MO pin.
This pin should be tied to DVSS if the SPI is not used.
Calibration Control
1-Wire Interface I/O
iC-TW8 16-BIT SIN/COS INTERPOLATOR liminar y
pre
WITH AUTO-CALIBRATION
Rev A2, Page 5/12
PIN FUNCTIONS
No. Name
I/O
Function
Description
11
SPI_SCLK
Digital in,
with hysteresis
SPI Slave Clock Input
Pin connects to SPI master clock output. The input implements hysteresis to avoid double triggering.
This pin must be tied to DVSS if the SPI is not used.
12
13
nc
nc
14
SPI_xSS
15
DVSS
16
OUTZ
17
OUTB
18
These pins have no connection to die. Connect to DVSS on PCB.
Digital in,
low active
SPI Slave Select Input
In 4-pin SPI mode this pin directly connects to the SPI master slave
select output. In case the SPI is operated in 3-pin mode, SPI_xSS
must be tied low to DVSS.
Ground
Digital Ground
Pin must tie to high quality ground, usually a solid PCB plane.
Digital out
Z Output
Quadrature interface reference output.
Digital out
B Output
PWM- Output
Z Window
In quadrature mode this is output B.
In PWM mode this is PWM-, the inverted output of OUTA.
In Z calibration mode (bit RB_TEST1.z_test = 1) this is the Z window
seen just after the input comparator.
OUTA
Digital out
A Output
PWM+ Output
Z Window
In quadrature mode this is output A.
In PWM mode this is PWM+.
In Z calibration mode (bit RB_TEST1.z_test = 1) this is the Z window
used to gate the Z output.
19
STATUS
Digital out
PWM Status Output
This pin provides proportional status information. Pin can drive a
10 mA LED and is widely configurable. Refer to section Monitoring
Interpolation Quality for details.
20
FAULT
Digital out
Error Status Output
Pin is low on error and is capable of driving a 10 mA LED. The error
response can be configured as detailed in section Fault Handling for
details.
21
DVDD
Supply
Digital Power Supply
+3.1 V to +5.5 V supply voltage terminal.
DVDD and AVDD must be the same voltage level (5 V or 3.3 V).
22
PINSEL
Digital in,
Configuration Mode
150 kΩ pull-down Selection
23
24
25
nc
nc
nc
26
reserved
27
SCL
Digital in/out,
10 kΩ pull-up
EEPROM Clock Line
This pin connects to the EEPROM SCL pin. No external I2C pull-up
resistor is required as 10 kΩ is integrated.
28
SDA
Digital in/out,
10 kΩ pull-up
EEPROM Data Line
This pin connects to the EEPROM SDA pin. No external I2C pull-up
resistor is required as 10 kΩ is integrated.
29
WP
Digital out
EEPROM Write Protection
This pin acts as the write protect signal and connects to the EEPROM
WP pin. No external pull-up is required as this pin is a push-pull output
actively driving low and high.
30
C0
31
32
33
C1
C2
C3
Analog in
Configuration
Inputs
34
XOUT
Analog in/out
Crystal Terminal
Pin can be left floating if no crystal is used.
An external oscillator or other square wave clock source can be used
to drive this pin. Refer to Providing a Clock.
35
XIN
Analog in
Crystal Terminal
Pin must be tied to AVSS if no crystal is used.
36
37
nc
nc
38
AVDD
Supply
Analog Power Supply
+3.1 V to +5.5 V supply voltage terminal. Keep it clean!
DVDD and AVDD must be the same voltage level (5 V or 3.3 V).
39
40
SIN+
SIN-
Analog in
Analog in
Sine Input +
Sine Input -
Differential sine signal input. For single ended sensors SIN- must be
biased to an appropriate DC level.
41
42
COS+
COS-
Analog in
Analog in
Cosine Input +
Cosine Input -
Differential cosine signal input. For single ended sensors COS- must
be biased to an appropriate DC level.
43
nc
44
VC
Analog out
Bias Output
Tie pin to DVSS to enable serial configuration mode.
Tie pin to DVDD to select pin configuration mode.
These pins have no connection to die. Connect to DVSS on PCB.
Connect this pin to DVSS on PCB.
If the pin configuration mode is used (pin PINSEL tied high), each pin
functions as 12-level configuration input.
If serial configuration mode is used (pin PINSEL tied low), connect
these pins to DVSS on PCB.
These pins have no connection to die. Connect to DVSS on PCB.
Pin has no connection to die. Connect to DVSS on PCB.
Decouple with 1 µF capacitor to AVSS. Do not inject noise into this pins
as it directly impacts ADC conversion noise.
iC-TW8 16-BIT SIN/COS INTERPOLATOR liminar y
pre
WITH AUTO-CALIBRATION
Rev A2, Page 6/12
PIN FUNCTIONS
No. Name
I/O
Function
Description
45
VREF
Analog out
Bias Output
Decouple with 1 µF capacitor to AVSS. Do not inject noise into this pin
as it directly impacts ADC conversion noise.
46
AVSS
Ground
Analog Ground
Pin must be tied to high quality ground, usually a solid PCB plane.
47
48
ZERO+
ZERO-
Analog in
Analog in
Zero Input +
Zero Input -
Differential Zero Gating Input.
If single ended signal sources are used, the unused terminal (either
ZERO+ or ZERO-) must be tied to an appropriate DC bias.
iC-TW8 16-BIT SIN/COS INTERPOLATOR liminar y
pre
WITH AUTO-CALIBRATION
Rev A2, Page 7/12
ABSOLUTE MAXIMUM RATINGS
These ratings do not imply operating conditions; functional operation is not guaranteed. Beyond these values damage may occur.
Item
No.
Symbol
Parameter
Conditions
referenced to AVSS
Unit
Min.
Max.
-0.3
6
V
G001 DVDD,
AVDD
Voltage at DVDD, AVDD
G002 dVDD
Difference Voltage between DVDD and
AVDD
-0.3
+0.3
V
G003 dVSS
Difference Voltage between DVSS and
AVSS
-0.3
+0.3
V
G004 Vpin
Pin Voltage at any pin versus AVSS
-0.3
AVDD +
0.5
V
G005 Ipin
Input Current at any pin, except AVDD,
AVSS, DVDD, DVSS
-10
10
mA
G006 Vesd1
ESD Susceptibility Of Signal Input Pins HBM, 100 pF discharged through 1.5k Ω;
pins SIN+, SIN-, COS+, COS-, ZERO+,
ZERO-
G007 Vesd2
ESD Susceptibility Of Remaining Pins HBM, 100 pF discharged through 1.5k Ω
G008 Tj
Junction Temperature
-40
150
°C
G009 Ts
Storage Temperature
-40
150
°C
referenced to AVSS
THERMAL DATA
Item
No.
Symbol
Parameter
Conditions
Unit
Min.
T01
Ta
Operating Ambient Temperature Range
T02
Rthja
Thermal Resistance Chip to Ambient
Typ.
-40
QFN48 surface mounted to PCB according to
JEDEC 51
All voltages are referenced to pin AVSS unless otherwise stated.
All currents flowing into the device pins are positive; all currents flowing out of the device pins are negative.
Max.
125
30
°C
K/W
iC-TW8 16-BIT SIN/COS INTERPOLATOR liminar y
pre
WITH AUTO-CALIBRATION
Rev A2, Page 8/12
ELECTRICAL CHARACTERISTICS
Operating conditions: AVDD = DVDD = 3.1...5.5 V, Tj = -40...+125 °C, reference point AVSS unless otherwise stated
Item
No.
Symbol
Parameter
Conditions
Unit
Min.
Typ.
Max.
Total Device
001
AVDD,
DVDD
Permissable Supply Voltage
AVDD, DVDD
002
IDD
Total Supply Current in AVDD
and DVDD
3.1
fin = 1 kHz, Increments 4096, Post-AB Divider
1, error-free boot-up from EEPROM;
VDD = 5 V, 32 MHz crystal
VDD = 3.3 V, 20 MHz crystal
5.5
25
12
V
mA
mA
Signal Inputs and Amplifiers: SIN+, SIN-, COS+, COS101
Vin()
Permissible Input Voltage
1.4
AVDD 1.0
V
102
Vos()
103
105
Iin()
Amplifier Input Offset Voltage
±12
mV
Input Leakage Current
±50
OFFcorr
Correctable Input Offset Voltage
nA
106
Acorr
Correctable SIN/COS Amplitude max(Asin, Acos) / min(Asin, Acos), whereas
Mismatch
Asin and Acos are the SIN/COS input amplitudes respectively.
107
PHIcorr
Correctable SIN/COS Phase
Error
(step size 0.052 degree)
108
Rpu()
Pull-Up Resistor at SIN+, COS+
109
Rpd()
as percentage of input signal amplitude; input
offset voltage is the sum of sensor offset plus
amplifier offset (item 102);
±100
%
1.24
±53
deg
MAIN_CFG.pull = 1
2
MΩ
Pull-Down Resistor at SIN-, COS- MAIN_CFG.pull = 1
2
MΩ
Index Signal Inputs and Amplifier: ZERO+, ZERO201
Vin()
Permissible Input Voltage
202
Vos()
203
Iin()
0
AVDD
V
Input Referred Offset Voltage
±12
mV
Input Leakage Current
±50
nA
Converter Performance
301
INL
Integral Nonlinearity
refer to Figure 2, 1 Vpp-diff SIN/COS input with
compensated offset, gain and phase
0.08
deg
302
DNL
Differential Nonlinearity
refer to Figure 2, 1 Vpp-diff SIN/COS input with
compensated offset, gain and phase
0.02
deg
303
N
Output Angle Noise
1 Vpp-diff SIN/COS input, fin = 0 Hz
0.08
deg
32
24
MHz
MHz
Clock: XIN, XOUT
401 fxtl
Permissible External Frequency
driven into XOUT
402 fosc
Internal Oscillator Frequency
Reset and Start-Up: xRST
601 DVDDon
DVDD Reset Threshold
AVDD, DVDD = 5 V
AVDD, DVDD = 3.3 V
6
6
Tj = 27 °C, MAIN_CLOCK.freq = 0;
AVDD, DVDD = 3.3 V
AVDD, DVDD = 5 V
16
20
MHz
MHz
increasing voltage at DVDD;
xRST tied to DVDD
xRST connected through 68 kΩ to DVSS
2.7
4.0
V
V
602
Vt()hi
Input Logic Threshold High
603
Vt()lo
Input Logic Threshold Low
2.2
604
605
Rpu()
Pull-Up Resistor
V() = 0 ... DVDD - 1 V
40
kΩ
tstart
Startup Time
AVDD, DVDD = 5 V, fxtl = 24 MHz by crystal;
pin configuration (EEPROM connected)
ready for serial config. (EEPROM connected)
ready for serial config. (no EEPROM)
100
100
tbd.
ms
ms
ms
0.8
V
V
iC-TW8 16-BIT SIN/COS INTERPOLATOR liminar y
pre
WITH AUTO-CALIBRATION
Rev A2, Page 9/12
ELECTRICAL CHARACTERISTICS
Operating conditions: AVDD = DVDD = 3.1...5.5 V, Tj = -40...+125 °C, reference point AVSS unless otherwise stated
Item
No.
Symbol
Parameter
Conditions
Unit
Min.
Typ.
Digital Input Pins:
EESEL, CALIB, CLOCK, IR, FRAME, SPI_SI, SPI_SCLK, SPI_xSS, PINSEL, SCL, SDA, C0, C1, C2, C3, FAB
701 Vt()hi
Input Logic Threshold High
DVDD = 5 V
DVDD = 3.3 V
702 Vt()lo
Input Logic Threshold Low
DVDD = 5 V
0.8
DVDD = 3.3 V
0.8
Max.
2.2
2.2
V
V
V
V
703
Vhys()
Input Hysteresis at
CALIB, SPI_SCLK
0.15
704
Ilk()
Input Leakage Current at
SPI_SI, SPI_SCLK, SPI_xSS
705
Rpu()
Pull-Up Resistor at IR
150
kΩ
706
Rpu()
Pull-Up Resistor at
CALIB, SCL, SDA
10
kΩ
707
Rpd()
Pull-Down Resistor at EESEL,
CLOCK, FRAME, PINSEL
150
kΩ
708
Rpd()
Pull-Down Resistor at FAB
5
kΩ
Digital Output Pins:
CLOCK, FRAME, SPI_SO, OUTA, OUTB, OUTZ, STATUS, FAULT, SDA, WP
801 Vs()hi
Output Voltage High
DVDD = 5 V, IOUT = 4 mA
DVDD = 3.3 V, IOUT = 4 mA
802 Vs()lo
Output Voltage Low
DVDD = 5 V, IOUT = -4 mA
DVDD = 3.3 V, IOUT = -4 mA
0.75
%DVDD
±50
nA
4.5
2.8
V
V
0.3
0.3
mV
mV
803
Idc()max
Permissible Output DC Load
per pin
±10
mA
804
Idcmax
Permissible Total Output DC
Load
for all output pins in aggregate
±60
mA
805
tr()
Rise Time
DVDD = 5 V, CL = 50 pF
DVDD = 3.3 V, CL = 50 pF
50
30
ns
ns
806
tf()
Fall Time
DVDD = 5 V, CL = 50 pF
DVDD = 3.3 V, CL = 50 pF
50
30
ns
ns
Bias Outputs: VC, VREF
901
VC
Bias Voltage at VC
902
dVREF
Bias Voltage at VREF versus VC dVREF = V(VREF) - V(VC); VC I(VREF) = 0
tAB
I(VREF) = 0
tMTD
converter
error
actual
converter
50
%VDD
-1
V
INL: The maximum absolute error.
DNL: the maximum step
between two consecutive
samples.
B
A
twhi
AArel
AArel
T
Figure 1: Description of AB output signals.
0
ideal converter
180
360
angular position
Figure 2: Definition of integral and differential nonlinearity.
iC-TW8 16-BIT SIN/COS INTERPOLATOR liminar y
pre
WITH AUTO-CALIBRATION
Rev A2, Page 10/12
OPERATING REQUIREMENTS: SPI/1-wire Interface
Operating Conditions: AVDD = DVDD = +3.1 ... +5.5 V, AVSS = DVSS = 0 V, Tj = -40...125 °C
Item
No.
Symbol
Parameter
Conditions
Unit
Min.
Max.
SPI Interface Timing
I001 txSS_set
Setup Time: SPI_xSS hi → lo before
SPI_SCLK lo → hi
15
ns
I002 txSS_hold Hold Time: SPI_xSS lo after
SPI_SCLK lo → hi
25
ns
I003 txSS_hi
SPI_xSS Signal Duration hi
15
ns
I004 tSI_set
Setup Time: SPI_SI stable before
SPI_SCLK lo → hi
5
ns
I005 tSI_hold
Hold Time: SPI_SI stable after
SPI_SCLK lo → hi
10
ns
I006 f(SCLK)
SPI_SCLK Clock Frequency
I007 tC_hi
SPI_SCLK Signal Duration hi
10
I008 tC_lo
SPI_SCLK Signal Duration lo
10
I009 tSO_p
Propagation Delay:
SPI_SO stable after SPI_SCK hi → lo
15
ns
I010 tSO_p2
Propagation Delay:
SPI_SO high impedance after
SPI_xSS lo → hi
15
ns
24
txSS_hi
SPI_xSS
input
SPI_xSS
input
SPI_SCLK
input
SPI_SCLK
input
SPI_SI
input
SPI_SI
input
SPI_SO
output
SPI_SO
output
txSS_hi
txSS_set
tC_hi
tC_lo
txSS_hold
txSS_set
tC_hi
tC_lo
txSS_hold
MSB in
tSI_set
tSI_hold
tSI_set
tSI_hold
LSB in
MSB in
tristate
LSB in
tristate
txSS_hi
Figure 3: SPI Write Timing.
txSS_hi
SPI_xSS
input
SPI_xSS
input
SPI_SCLK
tC_hi
tC_lo txSS_hold
tC_hi
tC_lo txSS_hold
input
SPI_SCLK
input
SPI_SI
input
SPI_SI
input
SPI_SO
output
SPI_SO
output
don’t care
tSO_p
don’t care
tSO_p
tSO_p2
tSO_p MSB out tSO_p
LSB out
MSB out
LSB out
Figure 4: SPI Read Timing.
tSO_p2
MHz
ns
ns
iC-TW8 16-BIT SIN/COS INTERPOLATOR liminar y
pre
WITH AUTO-CALIBRATION
Rev A2, Page 11/12
ADDITIONAL INFORMATION
Documentation
•
•
•
•
iC-TW8 SCM: Serial Configuration Manual
iC-TW8 PCM: Pin Configuration Manual
iC-TW8 PR: Programmer’s Reference
iC-TW8 EVAL TW8_1D: Evaluation Board Description
Design Tools
• iC-TW8 REDT: Rotary Encoder Design Tool (Excel spreadsheet)
Application Notes
• Under preparation; please contact iC-Haus.
DESIGN REVIEW: Function Notes
iC-TW8 C1
No.
Function, Parameter/Code
Description and Application Notes
1
ADPT_CFG.lut
The distortion look-up table is not featured by chip release C1;
mandatory programming: ADPT_CFG.lut = 0
Table 6: Notes on chip functions regarding iC-TW8 chip release C1.
iC-TW8 D1, D2, D3
No.
Function, Parameter/Code
Description and Application Notes
None at time of printing.
Table 7: Notes on chip functions regarding iC-TW8 chip releases D1, D2, D3
REVISION HISTORY
Rel
Rel.Date
Chapter
Modification
Page
A1
tbd
All chapters and attachments
Initial release
all
iC-Haus expressly reserves the right to change its products and/or specifications. An info letter gives details as to any amendments and additions made to the
relevant current specifications on our internet website www.ichaus.de/infoletter; this letter is generated automatically and shall be sent to registered users by
email.
Copying – even as an excerpt – is only permitted with iC-Haus’ approval in writing and precise reference to source.
iC-Haus does not warrant the accuracy, completeness or timeliness of the specification and does not assume liability for any errors or omissions in these
materials.
The data specified is intended solely for the purpose of product description. No representations or warranties, either express or implied, of merchantability, fitness
for a particular purpose or of any other nature are made hereunder with respect to information/specification or the products to which information refers and no
guarantee with respect to compliance to the intended use is given. In particular, this also applies to the stated possible applications or areas of applications of
the product.
iC-Haus conveys no patent, copyright, mask work right or other trade mark right to this product. iC-Haus assumes no liability for any patent and/or other trade
mark rights of a third party resulting from processing or handling of the product and/or any other use of the product.
iC-TW8 16-BIT SIN/COS INTERPOLATOR liminar y
pre
WITH AUTO-CALIBRATION
Rev A2, Page 12/12
ORDERING INFORMATION
Type
Package
iC-TW8
QFN48, 7 mm x 7 mm
iC-TW8 QFN48
Evaluation Board
PCB, 100 mm x 80 mm
iC-TW8 EVAL TW8_1D
PC-USB Adapter
iC-TW8 GUI
Options
Order Designation
(required to connect the
iC-MB3 iCSY MB3U-I2C
evaluation board to the
PC)
User software for Windows Download at
PC (entry of IC parameters, file www.ichaus.com/tw8
storage, and transfer to DUT)
Encoder Design Tool
Excel-based rotary
encoder design tool for
parameter definition.
Download at
www.ichaus.com/tw8
For technical support, information about prices and terms of delivery please contact:
iC-Haus GmbH
Am Kuemmerling 18
D-55294 Bodenheim
GERMANY
Tel.: +49 (61 35) 92 92-0
Fax: +49 (61 35) 92 92-192
Web: http://www.ichaus.com
E-Mail: [email protected]
Appointed local distributors: http://www.ichaus.com/sales_partners
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Pin Configuration Mode
y
Jan 9, 2013 Page PC1/15
Table of Contents
About This Document ..................................................................................................................................... 2
Functional Overview ....................................................................................................................................... 2
Electrical Connections .................................................................................................................................... 3
Connecting the Incremental Sensor .............................................................................................................. 4
Connecting an Index Sensor (If Used) .......................................................................................................... 5
Connecting the EEPROM ............................................................................................................................. 5
Power-on-Reset ............................................................................................................................................. 6
Providing a Clock.......................................................................................................................................... 6
Connecting the ABZ Outputs ........................................................................................................................ 7
Power-Up Sequence ......................................................................................................................................... 7
Pin Configuration ............................................................................................................................................ 8
Setting the Interpolation Factor ..................................................................................................................... 9
Setting the Auto-Adaption Mode .................................................................................................................. 9
Setting the Filter Mode and Hysteresis ....................................................................................................... 10
Setting the Maximum AB Frequency and Lag Recovery ........................................................................... 11
Serial Interfaces ............................................................................................................................................. 11
Auto Calibration ............................................................................................................................................ 12
iC-TW8 Rotary Encoder Design Tool ......................................................................................................... 12
Pin Configuration Reference ........................................................................................................................ 14
Revision History ............................................................................................................................................ 15
Copyright © 2011–2013 iC-Haus
www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Pin Configuration Mode
y
Jan 9, 2013 Page PC2/15
About This Document
This document describes the pin configuration mode
of the iC-TW8 Interpolator. Pin-configuration mode
provides simple, static configuration of the device
without any programming or complicated calibration.
Pin configuration allows selection of only the most
commonly used features of the device. Access to all
features of the iC-TW8 is available in serial configuration mode, described in a separate document.
Design tools for both rotary and linear encoders using the iC-TW8 are available. These tools are in the
form of Excel spreadsheets that allow entering application parameters in engineering units and then
provide performance limits and graphs, configuration resistor values, and jumper settings for use with
the iC-TW8 TW8_1D demonstration board. This
greatly simplifies and speeds up the design process
of encoders using the iC-TW8.
Functional Overview
The iC-TW8 is a general-purpose 16-bit Sin/Cos
interpolator with sophisticated auto-calibration
functions. It accepts 20mV to 1.4V peak-to-peak
differential analog input signals from magnetic or
optical sensors and calculates (interpolates) the angular position. Output is industry-standard incremental AB quadrature at programmable resolution.
Simple pin configuration and one-step automatic
calibration requires no complicated signal analysis
or calibration procedure during product design or
production.
In addition to the chosen sensor, the iC-TW8 requires an external EEPROM to store its configuration and calibration data. An external crystal can be
used instead of the internal oscillator of the iC-TW8
for superior frequency stability. A differential line
driver can be connected directly to the iC-TW8
quadrature outputs to make a complete encoder.
COS
SIN
OUTA
OUTB
Interpolation factor of x5 shown
ZERO
OUTZ
Index pulse is suppressed
as ZERO is low.
Figure 1: iC-TW8 Functional Overview
Copyright © 2011–2013 iC-Haus
www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Pin Configuration Mode
y
Jan 9, 2013 Page PC3/15
Electrical Connections
Analog power (AVDD = pin 38) and digital power
(DVDD = pin 21) inputs must be connected to a low
impedance 5V or 3.3V power source, preferably an
on-board voltage regulator. In addition, AVDD and
DVDD should each have a dedicated 1µF decoupling capacitor placed as close to the power pins on
the device as possible.
The basic electrical connections for an encoder using the iC-TW8 are shown in Figure 2. Other than
the analog sensor, only an EEPROM for parameter
storage, eight configuration resistors, and a few bypass capacitors are required for operation. PINSEL
(pin 22) must be connected to DVDD to select pin
configuration mode. A voltage regulator to supply
clean power to the device and a line driver are recommended. An crystal or oscillator (clock driver) is
also recommended.
If the iC-TW8 is used with a line driver (such as the
iC-HD7 or iC-HX) or a high frequency FPGA, it is
especially important to isolate the iC-TW8 power
inputs (AVDD and DVDD) against external noise.
In such applications, a dual voltage regulator such
as the iC-DC is highly recommended. Note that both
AVDD and DVDD must be the same voltage level
(5V or 3.3V).
The iC-TW8 requires a high quality ground and
clean power supplies. Analog ground (AVSS = pin
46) and digital ground (DVSS = pin 15) must both
be connected on the PCB to a solid ground plane.
Regulator
VDD_MAIN
VDD_TW8
10µF
VDD_TW8
AVDD
1µF
DVDD
EESEL tied to DVSS.
PINSEL
AVSS
MR Sensor
PINSEL tied to DVDD for
Pin Configuration mode
VDD_TW8
EESEL
1µF
Line Driver
DVSS
SIN+
OUTA
SIN–
COS+
OUTB
OUTZ
COS–
C0
C1
CALIB
Calibration Button
C2
C3
VREF
8 Configuration
Resistors
VDD_TW8
VC
1µF
1µF
iC-TW8
SCL
SDA
SCL
SDA
EEPROM
24AA02
Figure 2: iC-TW8 Electrical Connections (Pin Configuration Mode)
Both pin VC (pin 44) and VREF (pin 45) must be
decoupled to ground with 1µF each as shown. The
EEPROM and the line driver (if used) must be decoupled according to their respective requirements.
The calibration button provides an easy means to
activate the auto-calibration feature of the iC-TW8
Copyright © 2011–2013 iC-Haus
to set the data path parameters (offset, gain, and
phase) to their optimal values. All pins not explicitly
shown in Figure 2 should be connected to appropriate levels as indicated under Pin Functions in the iCTW8 data sheet.
www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Pin Configuration Mode
y
Jan 9, 2013 Page PC4/15
Connecting the Incremental Sensor
The iC-TW8 connects directly to magnetic (such
as the iC-SM2L or iC-SM5L) or optical sensors
providing differential Sin/Cos outputs as shown in
Figure 3. Signal amplitude (A) from all four sensor channels must be in the range of 5 – 350mV as
shown in Figure 4 for proper operation with the
iC-TW8.
VDD
Single-ended Sin/Cos inputs can also be connected to
the iC-TW8 by connecting the SIN– and COS– pins to
the proper bias voltage as shown in Figure 5. Since the
iC-TW8 provides high-impedance signal inputs, a
simple resistive voltage divider can be used to generate the required bias voltage. For AMR sensors, it is
recommended that the resistors of the bias generator
match the AMR sensor bridge resistance to improve
power supply noise rejection. No decoupling capacitor
should be used.
SIN+
AVDD
Sensor Bridge 0
SIN+
SIN-
Sensor Bridge 0
COS+
COS+
Sensor Bridge 1
Sensor Bridge 1
COS-
iC-TW8
SINCOS-
Figure 3: Differential Sensor Connection
Resistive Bias
Generator
SIN+
A
iC-TW8
Figure 5: Single-ended Sensor Connection
Differential inputs should be used whenever possible
to reject common mode distortions and provide increased signal amplitude and improved signal to noise
ratio (SNR).
5mV ≤ A ≤ 350mV
0 (VDD/2)
–A
SIN0°
180°
360°
Figure 4: Differential Sensor Signal Inputs
Copyright © 2011–2013 iC-Haus
Regardless of input configuration, the auto-calibration
feature of the iC-TW8 is sufficient in most cases to
compensate for any signal offset, gain, and phase distortions without requiring any additional external
components.
www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Pin Configuration Mode
y
Jan 9, 2013 Page PC5/15
Connecting an Index Sensor (If Used)
Connecting the EEPROM
The iC-TW8 can interface to a wide range of index sensors or gating sources to provide an index
or Z output which is synchronized with the AB
outputs. Digital Hall sensors are often used for
this purpose, as shown in Figure 6.
The iC-TW8 requires a 24xx02 through 24xx16 family I2C EEPROM for storage of sensor calibration data
(offset, gain, etc.). The EEPROM connects directly to
the iC-TW8 via a dedicated I2C communication channel using SCL (pin 27) and SDA (pin 28) as shown in
Figure 7. No external pull-up resistors are required.
EESEL (pin 4) of the TW8 must also be connected to
DVSS as shown.
VDD
iC-TW8
VDD
ZERO+
VDD
EESEL tied to DVSS.
DVDD
EESEL
1µF
ZERODVSS
Digital Hall
active low
Figure 6: Index Sensor Connection
Digital sensors (Hall, MR, and others) typically
provide an active-low signal via an open-drain
output that pulls low in the presence of a magnetic
field. Connect an active-low (open drain) digital
index sensor to the iC-TW8 ZERO– input (pin 48)
and connect the ZERO+ input (pin 47) to a resistive voltage divider set to the midpoint of the index sensor output voltage swing to provide good
noise rejection. For active-high (open source) digital index sensors, reverse the ZERO+ and
ZERO– connections.
To guarantee one and only one Z output from the
iC-TW8 over multiple Sin/Cos input cycles, the
ZERO input signal must be roughly centered on
(in phase with) the Cos+ incremental sensor signal and no larger than 1.5 Sin/Cos input cycles
under all conditions.
VDD
SCL
SCL
SDA
SDA
WP
iC-TW8
VCC
1µF
VSS
WP
EEPROM
24xx
Figure 7: EEPROM Connection
In pin configuration mode, the Write Protect (WP)
input of the EEPROM is not controlled by the iCTW8. WP must be grounded (disabled) during configuration to allow the iC-TW8 to write the auto-adapted
parameters to the EEPROM. In operation, WP can be
left grounded (write protection disabled) as shown in
Figure 7, or connected to DVDD by additional circuitry (such as a jumper) for parameter protection.
If no index (Z) output is required, connect
ZERO+ (pin 47) to ground and ZERO– (pin 48)
to AVDD.
Analog-output index sensors can also be used
with the iC-TW8, but only in SPI/1-wire configuration mode.
Copyright © 2011–2013 iC-Haus
www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Pin Configuration Mode
y
Jan 9, 2013 Page PC6/15
Power-on-Reset
reset threshold of 2.7V. Connect xRST to ground
through a 68kΩ resistor to select a threshold of 4V.
An external reset source (such as an RC circuit) can
also be connected to xRST (pin 2) to directly control
the POR behavior.
The iC-TW8 contains a built-in power-on-reset
(POR) circuit that controls the safe start-up of the
device. The internal POR can be configured for
two thresholds, 2.7V for use with 3.3V supplies or
4V, which is recommended when operating the
iC-TW8 at 5V. Connect xRST (pin 2) DVDD or
leave it unconnected (xRST has an internal 40kΩ
pullup resistor to DVDD) to select a power-on-
Connect xRST to DVSS via 68kΩ
resistor for 4V POR threshold.
DVDD
xRST
xRST
68kΩ
iC-TW8
Connect xRST to DVDD (or leave
floating) for 2.7V POR threshold.
iC-TW8
DVSS
Figure 8: Setting the Power-On-Reset Threshold
Providing a Clock
other clock source is recommended for all but the
most cost-sensitive applications.
The iC-TW8 supports three clocking modes as
indicated in Figure 9. While the iC-TW8 provides
an internal oscillator, it cannot be tuned in pin
configuration mode. Thus, an external crystal or
XOUT
XOUT
XOUT
XIN
XIN
XIN
iC-TW8
Crystal
iC-TW8
Clock Inject
iC-TW8
Internal Oscillator
Figure 9: Clocking
An external crystal or oscillator provides the most
stable clock signal over time and temperature variations, resulting in the most consistent long-term iCTW8 performance. Connect an external crystal to
XIN (pin 35) and XOUT (pin 34) as shown in Figure 9. Depending on the crystal characteristics, two
capacitors to ground might be necessary for stable
oscillation. To use an oscillator or ceramic resonator, connect XIN (pin 35) to ground and the oscillator output to XOUT (pin 34) as shown in Figure 9.
Maximum crystal frequency (fclock) is 32 MHz with
Copyright © 2011–2013 iC-Haus
5V supplies and 24 MHz with 3.3V supplies. Minimum frequency is 6 MHz regardless of supply voltage.
To use the internal oscillator, connect both XIN (pin
35) and XOUT (pin 34) to ground as shown in Figure 9. The iC-TW8’s internal oscillator has a nominal frequency of 20 MHz with 5V supplies and 16
MHz with 3.3V supplies. However, manufacturing
tolerances and changes in temperature can cause
large variations in the frequency of the internal oscillator.
www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Pin Configuration Mode
y
Jan 9, 2013 Page PC7/15
Connecting the ABZ Outputs
Power-Up Sequence
In pin configuration mode, the iC-TW8 provides
industry-standard quadrature incremental outputs
at OUTA (pin 18) and OUTB (pin 17). If an index
sensor is connected to the ZERO inputs of the iCTW8, a Z output synchronous with the AB outputs is also available on OUTZ (pin 16). These
outputs can be directly connected to an encoder
counter such as the iC-TW9.
After power-up, the iC-TW8’s POR circuit monitors
the supply voltage and waits until it has reached the
appropriate threshold (as determined by the xRST
connections). The iC-TW8 then starts up using the
internal oscillator (even if a crystal or external clock
source is connected) and executes its start-up cycle as
outlined below.
Alternatively, the ABZ outputs can be connected
to a differential line driver (such as the iC-HD7 or
iC-HX) as shown in Figure 10. When using a line
driver it is especially important to isolate the iCTW8 from external switching noise using a regulator, as shown.
24V
regulator
regulator
3.3V
5V
line driver
AVDD
DVDD
VCC
OUTA
OUTB
E1
E3
OUTZ
E5
AVSS/DVSS
GNDx
VB1
VB2
VB3
A1
A2
A3
A4
A5
A6
iC-TW8
iC-HX
Figure 10: Line Driver Connection
Copyright © 2011–2013 iC-Haus
1. Read parameter values from EEPROM.
2. Set proper clock source and frequency.
3. Read configuration inputs and enable signal
path.
4. Wait for all analog circuitry to settle.
5. Clear all faults.
6. Start ABZ output generation.
If any faults are detected during the start-up cycle, the
iC-TW8 does not enable the AB outputs but goes into
an idle state with the FAULT output (pin 20) asserted
(low).
The amount of time the iC-TW8 waits for the analog
circuitry to settle (twait) depends on the clock frequency as shown by the formula below.
twait[ms] 
1048
fclock[MHz]
For example, using a 32 MHz crystal, the iC-TW8
waits 33 ms for the analog circuitry to settle.
www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Pin Configuration Mode
y
Jan 9, 2013 Page PC8/15
Pin Configuration
In pin configuration mode, the iC-TW8 is configured by applying different voltages to configuration inputs C0, C1, C2, and C3 (pins 30, 31, 32,
and 33 respectively). Each configuration input recognizes 12 different voltage levels which together
select one of 124 = 20,736 separate operational
configurations for the device.
The desired voltage levels are typically set using a
resistive voltage divider on each of the configuration inputs as shown in Figure 11. Thus, only 8
resistors are required to completely configure the
iC-TW8.
VDD
AVDD
R01
C0
R02
VDD
iC-TW8
R11
C1
R12
Do not use
decoupling caps!
VDD
Table 1 shows the recommended resistor values for
setting the configuration levels. The resistors must
be 1% (or better) tolerance to guarantee reliable
operation under all conditions.
Configuration
Level
11
10
9
8
7
6
5
4
3
2
1
0
Divider
Ratio
0.87
0.80
0.73
0.67
0.60
0.54
0.46
0.40
0.33
0.27
0.20
0.13
Rx1
[k]
0.00
3.01
4.02
4.99
6.04
6.98
8.06
9.09
10.0
11.0
12.1
∞
Rx2
[k]
∞
12.1
11.0
10.0
9.09
8.06
6.98
6.04
4.99
4.02
3.01
0.00
Table 1: Pin Configuration Resistor Values
An open circuit is shown as infinite (∞) resistance
and a short circuit is shown as zero resistance in
Table 1.
R21
C2
R22
VDD
R31
C3
R32
1% resistors as close to iC-TW8
configuration pins as possible.
Figure 11: Pin Configuration Resistors
The resistors should be located as close to the configuration input pins as possible and no decoupling
capacitors should be used.
Copyright © 2011–2013 iC Haus
www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Pin Configuration Mode
y
Jan 9, 2013 Page PC9/15
Setting the Interpolation Factor
Setting the Auto-Adaption Mode
Configuration inputs C0 and C1 are used to select
the interpolation factor. Input C1 selects the desired
interpolation group I0, I1, or I2 and input C0 selects
the desired interpolation factor from within the selected group. Choose the desired interpolation factor
from Table 2 and connect the appropriate resistors
to configuration input C0 (pin 30) according to Table 1 to set the corresponding configuration level.
Configuration input C1 is used to select the desired
auto-adaption mode and the interpolation group corresponding to the interpolation factor selected via
configuration input C0. Choose the desired autoadaption mode and interpolation group from Table 3
and connect the appropriate resistors to configuration input C1 (pin 31) according to Table 1 to set the
corresponding configuration level.
C0
Level
11
10
9
8
7
6
5
4
3
2
1
0
Interp.
Group I0
x81921
x40962
x2048
x1024
x512
x256
x128
x64
x32
x16
x8
x4
Interp.
Group I1
x1600
x800
x400
x200
x160
x100
x80
x50
x40
x20
x10
x5
Interp.
Group I2
x100001
x50002
x2500
x1250
x1000
x500
x250
x125
x62.53
x25
x12.53
x6.253
Table 2: Configuration Input C0
The interpolation factors shown in Table 2 are the
number or AB output cycles per Sin/Cos input cycle. There are four times as many AB output edges
per Sin/Cos input cycle than as shown in the table.
Note that while the iC-TW8 is a true 16-bit interpolator, x10000 is the maximum interpolation factor
available in pin configuration mode. Full 16-bit
(x16384) interpolation is available in serial configuration mode.
1 This interpolation factor can only be used with heavy
filtering (C2 configuration levels 8–11) and lag
recovery enabled (C3 configuration levels 6–11).
2 This interpolation factor can only be used with normal
or heavy filtering (C2 configuration levels 4–11) and
lag recovery enabled (C3 configuration levels 6–11).
3
Z output is not synchronous with AB outputs when
using fractional interpolation factors.
Copyright © 2011–2013 iC Haus
C1
Level
11
10
9
8
7
6
5
4
3
2
1
0
Auto-Adaption
Mode
A3: Full analog
and digital autoadaption.
A2: Full digital
auto-adaption.
A1: Digital offset
and gain autoadaption.
A0: No autoadaption.
Interpolation
Group
I2
I1
I0
I2
I1
I0
I2
I1
I0
I2
I1
I0
Table 3: Configuration Input C1
Three auto-adaption modes are available in pin configuration mode. Mode A3 provides full analog and
digital auto-adaption. In this mode, the iC-TW8
continuously adjusts analog gain, analog offset,
digital offset, digital gain, and digital phase during
operation to maintain optimum performance and
lowest error and jitter.
Auto-adaption mode A2 provides full digital autoadaption and is the recommended mode for most
applications. In this mode, analog gain and offset
are fixed at the values established during device calibration (see Auto Calibration on page 12) and the
iC-TW8 continuously adjusts only the digital offset,
digital gain match, and digital phase during operation to maintain optimum performance and lowest
error and jitter.
Auto-adaption mode A1 is similar to mode A2 except that digital phase is fixed at the value established during device calibration and not adjusted
during operation.
In mode A0, auto-adaption is disabled and parameter values are not adjusted from their initial calibration values during operation.
www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Pin Configuration Mode
y
Jan 9, 2013 Page PC10/15
For example, to configure an interpolation factor of
x80 and no auto-adaption, set C0 to configuration
level 5 (R01 = 8.06k, R02 = 6.98k) and C1 to configuration level 1 (R11 = 12.1k, R12 = 3.01k). To
configure an interpolation factor of x250 and full
auto-adaption, set C0 to configuration level 5 (R01
= 8.06k, R02 = 6.98k) and C1 to configuration level
11 (R11 = 0).
Setting the Filter Mode and Hysteresis
Configuration input C2 selects the amount of filtering (smoothing) and the hysteresis of the AB outputs of the iC-TW8. Choose the desired filter mode
and hysteresis from Table 4 and connect the appropriate resistors to configuration input C2 (pin 32)
according to Table 1 to set the corresponding configuration level.
C2
Level
11
10
9
8
7
6
5
4
3
2
1
0
AB Filter Mode
Heavy filtering.
Smooth output at the
expense of fast
response time.
Normal filtering.
A good balance
between smoothness
and response time.
Minimal filtering.
Outputs respond
quickly to sensor
inputs (and noise).
Hysteresis
(AB edges)
1
2
4
8
1
2
4
8
1
2
4
8
Table 4: Configuration Input C2
The choice of filter mode is a compromise between
fast response, smoothness of the AB outputs, and
position lag at constant speed. It is recommended to
start with minimal filtering since this gives the fastest response of the AB outputs to changes in the
Sin/Cos inputs. Normal or heavy filtering may be
selected if the outputs are noisy or jittery. Experimentation may be necessary to determine the optimal value.
Note that configuration level C2 also sets the AB
output hysteresis in edges. The corresponding hysteresis in degrees of a Sin/Cos input can be calculated
using the following formula.
Hysteresis [] 
90
 Hysteresis [Edges]
Interpolation
Where Interpolation is the interpolation factor set
using configuration inputs C0 and C1. For example,
if Interpolation is set to x100 and hysteresis is set to
2 AB edges, the hysteresis in degrees of a Sin/Cos
input cycle is
Hyteresis [] 
Copyright © 2011–2013 iC Haus
90
 2  1.8
100
www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Pin Configuration Mode
y
Jan 9, 2013 Page PC11/15
Setting the Maximum AB Frequency
and Lag Recovery
Configuration input C3 sets the maximum AB output frequency and determines whether lag recovery
is used or not. Choose the desired maximum AB
frequency and lag recovery setting from Table 5 and
connect the appropriate resistors to configuration
input C3 (pin 33) according to Table 1 to set the
corresponding configuration level.
C3
Level
11
10
9
8
7
6
5
4
3
2
1
0
Maximum AB
Frequency
fclock/8
fclock /16
fclock /32
fclock /64
fclock /128
fclock /256
fclock /8
fclock /16
fclock /32
fclock /64
fclock /128
fclock /256
Lag
Recovery
Lag recovery
enabled.
Lag recovery
disabled.
Table 5: Configuration Input C3
In pin configuration mode, the highest maximum
output frequency of the AB outputs is fclock/8,
where fclock is the clocking frequency of the iCTW8 (see Providing a Clock on page 6). Lower
maximum output frequencies can be selected as
shown in Table 5 if devices connected to the iCTW8 (counters, PLCs, motion controllers, drives,
etc.) cannot handle its full output frequency.
The incremental sensor input frequency (finput)
which corresponds to a given AB output frequency
can be calculated using the following formula:
finput 
AB Frequency
Interpolation
Where Interpolation is the interpolation factor set
using configuration inputs C0 and C1.
32
finput  64  0.0002MHz  200Hz
2500
If the incremental sensor input exceeds this frequency, the AB output position can no longer keep up
with the sensor position. In this case, the iC-TW8
keeps generating output pulses at the maximum AB
frequency until the AB output position either catches up to the sensor position or falls behind the sensor position by half a Sin/Cos input cycle, at which
point the FAULT output (pin 20) is activated
(latched low). This fault must be cleared by cycling
power to the iC-TW8.
Lag recovery can be used to eliminate most of the
position lag at constant speed caused by the AB
output filter, at the expense of possible position
overshoot on stopping. With lag recovery enabled,
the AB output position “catches up” to the sensor
position during constant speed motion. However,
enabling lag recovery also causes the AB output filter response to become under-damped which can
result in position over- and undershoot with fast
sensor input position changes. This effect is worse
with more AB output filtering (configuration input
C2). At standstill, the AB output position is always
equal to the sensor position regardless of the AB
output filter and lag recovery settings.
Unless specifically required otherwise, it is recommended to use the highest maximum AB frequency
and to disable lag recovery by setting C3 to configuration level 5.
Serial Interfaces
The SPI and 1-wire serial interfaces of the iC-TW8
are fully active while in pin configuration mode. It
is possible to read and write to memory and observe
the current configuration. However, any changes
made to the configuration are only temporary. After
cycling power, the configuration reverts to that set
by the configuration inputs C0–C3.
For example, if fclock = 32 MHz, an interpolation
factor of 2500 is selected using C0 and C1, and C3
is at configuration level 8 (fclock/64), the maximum
AB frequency will be reached at a sensor input frequency of
Copyright © 2011–2013 iC Haus
www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Pin Configuration Mode
y
Jan 9, 2013 Page PC12/15
Auto Calibration
iC-TW8 Rotary Encoder Design Tool
Once the iC-TW8 has been configured using the
configuration inputs, the signal path must be calibrated to determine proper values for gain, offset
correction, gain match, and phase correction. This is
most easily done using the Auto Calibration feature
of the iC-TW8 to automatically determine optimum
values for these parameters.
A design tool in the form of an Excel spreadsheet is
available to simplify configuration of the iC-TW8 in
rotary encoder applications. Only 10 values (in engineering units) are required to completely specify
the desired iC-TW8 configuration. The required
configuration resistors values and performance limits and graphs are then available for implementation
and characterization of the encoder.
Auto Calibration is initiated by pulling CALIB (pin
5) low. A pushbutton switch connected to CALIB
(as shown in Figure 2 on page 3) is an easy way to
achieve this in series production. With CALIB held
low, provide sensor input of a few hundred Sin/Cos
cycles and the iC-TW8 “tunes” the analog gain, analog offset correction, digital offset correction, digital
gain match, and digital phase correction parameters
to provide lowest error and jitter in the interpolated
AB outputs.
The sensor input used for auto calibration does not
need to be at a constant frequency nor must it be
unidirectional. A rotary encoder can be calibrated by
moving the disc or wheel back and forth a few revolutions; a linear encoder by moving the sensor back
and forth on the scale by a few centimeters.
After providing sufficient input signals, release the
CALIB input (it is pulled high by an internal pull-up
resistor) and the iC-TW8 immediately stores all calibration parameters in the external EEPROM. These
auto-calibrated values are then used whenever the
iC-TW8 is powered up.
In the design tool spreadsheet, cells with a blue
background are used for user entry. Start by entering
the operating voltage (Vdd) as 5.0 or 3.3 and the
frequency of the crystal you wish to use. The operating voltage and crystal frequency affect the current
drawn by the iC-TW8, which is calculated and
shown for reference. The crystal frequency also affects the maximum speed and the filter response. In
general, use the highest possible frequency unless
there is a need to minimize current.
Continue by entering the resolution of the magnetic
wheel or optical disc. This value is the number of
Sin/Cos cycles per revolution of the wheel or disc
produced by the sensor connected to the iC-TW8.
Next enter the desired output resolution of the encoder as the number of AB cycles per revolution
(CPR). This is also sometimes called PPR (pulses
per revolution) and is equivalent to the number of
“lines” in a non-interpolated optical encoder.
With these values entered, the design tool calculates
and displays the required interpolation factor. Interpolation factors not available with the iC-TW8 (or
not selectable in pin-configuration mode) are
flagged by a warning in red “Output resolution not
possible with given input resolution!” In general, the
output resolution in AB edges per revolution divided by the input resolution must be an integer.
Next, enter the desired maximum speed (speed limit) for the encoder in RPM. The spreadsheet calculates and displays the closest speed limit that can be
implemented using the iC-TW8 in pin-configuration
mode. The calculated actual speed limit is shown in
RPM, AB channel frequency, AB edge frequency,
and as minimum time between edges. Exceeding the
actual speed limit activates the iC-TW8’s FAULT
output (pin 20).
For an enclosed encoder the maximum speed is usually dictated by the bearings used. For a modular
Copyright © 2011–2013 iC Haus
www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Pin Configuration Mode
y
Jan 9, 2013 Page PC13/15
encoder (without bearings) or to use the full speed
capability of the iC-TW8, enter an arbitrarily large
value (such as 1,000,000 RPM). Note that he calculated actual speed limit is affected by the chosen
crystal frequency and the interpolation factor used.
The graphs below show typical encoder lag and motion profile performance of the iC-TW8 using normal filtering and lag recovery at 15,261 radians per
second2 maximum acceleration.
Speed Profile
Next, enter the desired level of filtering for the AB
outputs and whether lag recovery is desired. Performance graphs of encoder lag in AB edges and
response to a trapezoidal motion profile with constant acceleration, velocity, and deceleration are
displayed to allow observing the effect of the different filter settings. Scroll to the right on small computer screens to see the performance graphs.
The maximum acceleration (  m ) of a motor in radians per second2 may be calculated knowing its stall
torque (  s ) in Newtons and its rotor inertia ( Jr ) in
kilogram seconds2 using the formula  m   s Jr .
For example, the Maxon EC 90 flat 90W motor with
the 24V winding (order number 323772) has a rotor
inertia of 3,060 gcm2 and a stall torque of 4,670
mNm. Thus its no-load maximum acceleration in
radians per second2 is
m   s Jr 
4670
10,000  15,261
3060
Using this value for the maximum acceleration parameter in the design tool will then show the performance of the iC-TW8 when used in an encoder
for feedback with this motor.
Copyright © 2011–2013 iC Haus
Input
300
Output
250
Speed (RPM)
200
150
100
50
0
-50
0
2
4
6
8
10
12
14
16
18
Time (ms)
Encoder Lag
2,5
2,0
1,5
1,0
AB Edges
A single parameter (maximum acceleration) is used
to generate the filter response graphs. Enter a value
in radians per second2 that represents the maximum
expected acceleration of the encoder. The design
tool calculates the equivalent acceleration in units of
kRPM (1000 RPM) per second and time to reach the
chosen maximum speed, which may be more easily
understood. The acceleration value is used only to
generate the performance graphs, it does not affect
the configuration of the iC-TW8. The motion profile
is generated by accelerating for 1000 ADC samples
at the entered acceleration, running at the attained
speed for 1000 ADC samples, and decelerating at
the entered acceleration for 1000 ADC samples.
350
0,5
0,0
-0,5
-1,0
0
2
4
6
8
10
12
14
16
18
Time (ms)
Figure 12: Typical Encoder Performance Graphs
The design tool also calculates the encoder lag in
AB edges per kRPM and mechanical degrees (°m)
of encoder rotation at the chosen maximum speed
for the selected filter configuration. For a given filter and lag recovery setting, encoder lag is directly
proportional to encoder speed.
The design tool also calculates the position and
speed overshoot due to the AB output filter. Position
overshoot (shown in AB edges and mechanical degrees of encoder rotation) is proportional to the entered maximum acceleration and is typically noticed
on stopping (deceleration). At low acceleration values and/or low encoder resolutions, position overshoot may be less than one AB edge and thus totally
www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Pin Configuration Mode
y
Jan 9, 2013 Page PC14/15
undetectable during encoder operation, even with
heavy filtering.
Speed overshoot is calculated as a percent of speed.
Speed overshoot is typically noticed at the end of
the acceleration ramp (the beginning of the constant
velocity portion of the motion profile). Speed overshoot as a percent of speed is affected only by the
selected AB filter level and whether or not lag recovery is used. The actual amount of speed overshoot in RPM is proportional to encoder speed.
Next, enter the desired AB output hysteresis in AB
edges. The design tool calculates the equivalent hysteresis in degrees of a Sin/Cos input cycle. Hysteresis is used to prevent instability (dithering) of the
AB outputs at standstill due to noise. In general, use
the lowest hysteresis that produces stable AB outputs with no sensor motion.
Next enter Yes or No as to whether an index sensor
is used. If an index sensor is not used, the ZERO
inputs of the iC-TW8 should be connected to
AVDD and AVSS as explained on page 5. If an index sensor is used the width of the Z output pulse is
shown. The Z output pulse is always one AB edge
(one quadrature state) wide in pin configuration
mode. The Z output is synchronous with A and B
low when an integer interpolation factor is used. Not
using an index sensor allows higher speeds with
high interpolation factors.
Enter the desired auto-adaption mode for the iCTW8. Auto-adaption refers to the iC-TW8’s ability
to track and change (adapt) sensor gain, offset, and
phase during encoder operation to maintain low AB
output error and jitter under all operating conditions.
One of four auto-adaption modes can be selected
and the design tool confirms which iC-TW8 parameters are adapted during operation. Regardless of the
selected mode, auto-adaption is disabled above the
displayed speed. In pin configuration mode, the
maximum auto-adaption speed is fixed and depends
on the selected maximum speed, crystal frequency,
and interpolation factor.
Finally, the design tool shows the conditions which
activate or latch the FAULT output (pin 20).
Latched faults are cleared by cycling power to the
iC-TW8.
Pin Configuration Reference
At power-on, the four configuration input levels
(C0–C3) are read and used to set internal variables
of the iC-TW8 to the proper values. Other internal
variables are also set to specific values and cannot
be changed using the configuration inputs. Table 6
provides a list of the internal variable values used in
pin configuration mode as a reference for troubleshooting or new applications. Variables not listed in
the table are set to 0. Detailed information on all iCTW8 internal variables is available in the Serial
Configuration manual.
iC-TW8 Variable
MAIN_CFG
MAIN_INTER
MAIN_HYST
MAIN_FLTR
MAIN_OUT
MAIN_CLOCK
AB_CFG0
AB_VTOP
ADPT_CFG
ADPT_DETAIL
ADPT_CORR
MON_OFF
MON_GAIN
MON_PHASE
FLT_CFG
FLT_EN
Value
(pin configuration mode)
wp = 1
Determined by C0 and C1.
Determined by C2.
Determined by C2 and C3.
start = 10 (0x0A)
xtal = 1
div = 3
startmode = 1
Determined by C3.
Determined by C1.
flimit = 6
tbase = 4
prop = 2
offtol = 2
gaintol = 2
limit = 10
limit = 10
limit = 10
vwarn = 1
long = 1
ee = 1
vfatal = 1
Table 6: Pin Configuration Reference
At this point, the iC-TW8 configuration is completely specified and the configuration resistor values
necessary to achieve this configuration are shown.
See Figure 11 on page 2 for a schematic of the electrical connection of the resistors to the iC-TW8. Also shown is a jumper map for setting the TW8_1D
demo board to the selected configuration.
Copyright © 2011–2013 iC Haus
www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Pin Configuration Mode
y
Jan 9, 2013 Page PC15/15
Revision History
Date
Sept 06, 2011
Notes
First release
Pages affected
All
Oct 24, 2011
Correction of examples 1 and 2
Page A10
Feb 21, 2012
Re-format
All
Mar 16, 2012
Re-write
All
April 30, 2012
Minor changes for consistency with Programmer’s Reference
Many
Oct 9, 2012
Table 6, changed MAIN_SERVO to MAIN_FLTR
14
Nov 22, 2012
Formal corrections of header layout; update of disclaimer
All
Jan 9, 2013
Z output not synchronous with AB outputs when using fractional
interpolation factors.
9, 14
iC-Haus expressly reserves the right to change its products and/or specifications. An info letter gives details as to any amendments and additions made to
the relevant current specifications on our internet website www.ichaus.com/infoletter; this letter is generated automatically and shall be sent to registered
users by email.
Copying – even as an excerpt – is only permitted with iC-Haus' approval in writing and precise reference to source.
iC-Haus does not warrant the accuracy, completeness or timeliness of the specification and does not assume liability for any errors or omissions in these
materials.
The data specified is intended solely for the purpose of product description. No representations or warranties, either express or implied, of
merchantability, fitness for a particular purpose or of any other nature are made hereunder with respect to information/specification or the products to
which information refers and no guarantee with respect to compliance to the intended use is given. In particular, this also applies to the stated possible
applications or areas of applications of the product.
iC-Haus conveys no patent, copyright, mask work right or other trade mark right to this product. iC-Haus assumes no liability for any patent and/or other
trade mark rights of a third party resulting from processing or handling of the product and/or any other use of the product.
Copyright © 2011–2013 iC Haus
www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC1/36
Table of Contents
About This Document ........................................... 2
Documentation Conventions................................. 2
Functional Overview ............................................. 3
Functional Block Diagram .................................... 4
Clock Generator .................................................. 4
Power-On Reset .................................................. 4
Serial Ports .......................................................... 4
EEPROM Interface ............................................. 4
Internal Memory ................................................. 4
AB Signal Path .................................................... 5
Analog Gain .................................................... 5
Analog Offset Correction ............................... 5
Analog-to-Digital Converters (ADCs)............ 5
Digital Offset Correction ................................ 5
Digital Gain Match Correction ....................... 5
Digital Phase Correction ................................. 6
Angle Calculation (Arctan)............................. 6
Sensor Distortion LUT ................................... 6
Filter................................................................ 6
Digital Hysteresis............................................ 8
Interpolation Factor ........................................ 8
Output Generator ............................................ 8
Z Signal Path ....................................................... 8
Auto Calibration and Auto Adaption .................. 8
Auto Store ........................................................... 9
Fault Handling..................................................... 9
ADC and Adaption Quality Monitors ................. 9
Electrical Connections ........................................ 10
Providing a Clock.............................................. 11
Connecting the EEPROM ................................. 12
Connecting the Incremental Sensor .................. 12
Connecting an Index Sensor (If Used) .............. 13
Connecting the ABZ Outputs ............................ 14
Copyright © 2011–2013 iC-Haus
Connecting the Serial Ports............................... 14
Power-on-Reset................................................. 14
Startup.................................................................. 15
Serial Configuration Overview .......................... 15
Rotary Encoder Design Tool .............................. 16
General Configuration ...................................... 16
AB Configuration ............................................. 18
Filter Configuration .......................................... 19
Z Configuration................................................. 21
Auto Adaption Configuration ........................... 21
FAULT Pin Configuration ................................ 22
ADC Quality Monitor ....................................... 23
Adaption Quality Monitor ................................ 24
STATUS Pin Configuration.............................. 24
LUT Configuration ........................................... 24
CFG Block ........................................................ 24
GUI Hex............................................................ 24
Auto Calibration.................................................. 25
Calibrating the Z Signal Path ............................ 26
No Index Sensor................................................ 26
Digital Output Index Sensor ............................. 27
Analog Output Index Sensor............................. 28
Using Serial-Only Output Mode ........................ 30
Using PWM Output Mode.................................. 31
Using the Post-AB Divider.................................. 32
Tuning the Internal Oscillator ........................... 33
Using the LUT ..................................................... 34
Revision History .................................................. 36
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC2/36
About This Document
Documentation Conventions
This document describes the serial configuration
mode of the iC-TW8 Interpolator. Serial configuration mode requires configuration using the SPI or 1wire communication ports and allows access to all
the powerful features of the iC-TW8 for creating
sophisticated applications. For simple applications,
pin-configuration mode provides simple, static configuration of the device without any programming
or complicated calibration. Pin configuration mode
is described in a separate document.
Throughout this document, hexadecimal values are
written in C-style where the hex value is preceded
by “0x”. For example, 80CA16 is written as
0x80CA.
Design tools for both rotary and linear encoders using the iC-TW8 are available. These tools are in the
form of Excel spreadsheets that allow entering application parameters in engineering units and then
provide performance limits and graphs, configuration register values, and configuration documentation for the application. This greatly simplifies and
speeds up the design process of encoders using the
iC-TW8.
Internal iC-TW8 registers are named using all
CAPITAL letters. Individual bits or bit groups within the register use lower case Roman lettering. For
example, MAIN_CFG.wp refers to the wp bit (bit 0)
in the MAIN_CFG register at address 0x8044.
Likewise, MAIN_OUT.mode refers to the 2-bit
group mode (bits 4 – 5) of register MAIN_OUT at
address 0x804B. See the Programmer’s Reference
document for complete information on all iC-TW8
registers.
Derived variables not explicitly available as register
values are shown in all lower-case italics. For example, the formula
inter 
MAIN_INTER
4
shows that internal variable inter is derived from the
value in the MAIN_INTER register.
Internal variable units-of-measure are shown in
brackets following the variable name. For instance
adcs[V] is the sin channel ADC input level in volts.
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC3/36
Functional Overview
The iC-TW8 is a general-purpose 16-bit Sin/Cos
interpolator with sophisticated auto-calibration
functions. It accepts 10 – 700mV differential analog
Sin/Cos input signals from magnetic or optical sensors and calculates (interpolates) the angular position. Output is industry-standard incremental AB
quadrature at programmable resolution. Automatic
calibration requires no complicated signal analysis
or calibration procedure during product design or
production. Auto-adaption monitors and adapts parameter values during operation to maintain optimal
performance and low error and jitter.
In addition to the chosen sensor, the iC-TW8 requires an external EEPROM to store its configuration and calibration data. An external crystal can be
used instead of the internal oscillator of the iC-TW8
for superior frequency stability. A differential line
driver can be connected directly to the iC-TW8
quadrature outputs to make a complete encoder.
COS
SIN
OUTA
OUTB
Interpolation factor of x5 shown
ZERO
OUTZ
Index pulse is suppressed
as ZERO is low.
Figure 1: iC-TW8 Functional Overview
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC4/36
Functional Block Diagram
A functional block diagram of the iC-TW8 is shown
in Figure 2 and explained on the following pages.
Analog
Gain
Digital
Offset Correction
Gain Match Correction
Phase Correction
Anti-Aliasing
Filter
Analog
Offset
Analog-to-Digital
Correction
Converters
Sensor Distortion
Correction
(Lookup Table)
Digital
Hysteresis
Filter
(Servo Loop)
Angle Calculation
AB/PWM Output
Generator
Interpolation Factor
Calculation
SIN+
LUT
ADC
PGA
COS–
AB Signal Path
Filter
Hyst
Inter
Position
COS+
Arctan
Velocity
Error
Corr.
Output
Generator
OUTA
ADC
PGA
SIN–
OUTB
OUTZ
ZERO+
Delay
x8
ZERO–
SPI_xSS
Z Comparator
Z Signal Path
Auto Calibration
Auto Adaption
Auto Store
CALIB
XIN
XOUT
xRST
SPI_SCLK
Serial
Ports
SPI_SO
Internal
Memory
Clock
Generator
IR
ADC Quality Monitor
Adaption Quality Monitor
WP
EEPROM
Interface
Fault
Handling
Power-On
Reset
STATUS
SPI_SI
SCL
SDA
FAULT
Figure 2: Block Diagram
Clock Generator
The Clock Generator uses an external crystal or other clock source to generate the internal core clock
(fcore) for the iC-TW8. An internal oscillator is also
provided which can be used if an external crystal is
not desired. The internal core clock controls all timing within the iC-TW8.
Power-On Reset
The Power-On Reset (POR) circuit provides orderly
startup of the iC-TW8 when power is applied. An
external reset source can also be connected to the
POR to allow independent control of device startup.
Serial Ports
The iC-TW8 contains two serial ports that may be
used for communication. These are a standard SPI
(Serial Peripheral Interface) slave port and a 1-wire
Copyright © 2011–2013 iC-Haus
port, both of which utilize the same communication
protocol (see Serial Communication Ports in the
Programmer’s Reference). Both ports may be used
simultaneously.
EEPROM Interface
A 24xx02 through 24xx16 family I2C EEPROM is
required for storage of sensor calibration data (offset, gain, etc.). The EEPROM connects directly to
the iC-TW8 via the dedicated I2C EEPROM interface.
Internal Memory
The iC-TW8 provides 32K bytes of internal
memory divided into eight functional blocks that
can be accessed by the user via either of the serial
ports. See Internal Memory in the Programmer’s
Reference for more information.
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC5/36
AB Signal Path
The AB Signal Path consists of the blocks between
the analog PGAs and the output generator. The front
end of the AB signal path is shown below.
Analog Gain
Analog Offset
Correction
Digital Offset
Correction
SIN+
SIN–
Digital Gain
Match
Correction
Digital Phase Correction
ADC
aoffs
±1.4V max
±5800 max
(digital)
again
aoffc
COS+
COS–
Sin Output
doffs
dgains
doffc
dgainc
dphase
ADC
Cos Output
Figure 3: AB Signal Path Front End
Analog Gain
Analog gain is applied to the raw Sin/Cos sensor
inputs by two programmable gain amplifiers
(PGAs) with a range of 6 – 45 dB in 3dB steps. The
actual analog gain, again, is determined by the parameter AGAIN in the PAR block in internal
memory. The same gain is applied to both channels.
Analog Offset Correction
Individual analog offset correction is applied to the
output of the two analog PGAs This is a coarse correction with a range of ±3.1V in 100mV steps. The
actual analog offset corrections for the Sin and Cos
channels, aoffs and aocffc respectively, are determined by the parameters AOFFS and AOFFC in the
PAR block in internal memory.
The effective analog offset correction referenced to
the input Sin/Cos signals, aoffins and aoffinc is a
function of the analog gain and can be calculated as
aoffins
aoffs
aoffc
; aoffinc 
again
again
Analog-to-Digital Converters (ADCs)
The two ADCs convert the conditioned analog Sin
and Cos signals into 14-bit digital values for further
processing. The remainder of the AB signal path is
completely digital.
an output value of approximately ±5800 ADC increments. Above these values, ADC distortion increases and produces a corresponding reduction in
interpolation accuracy.
Digital Offset Correction
Individual fine offset correction is next applied to
the digital Sin and Cos ADC outputs. A range of
fine offset correction of ±125mV in 244µV steps at
the ADC inputs is available. The actual digital offset
corrections for the Sin and Cos channels, doffs and
docffc respectively, are determined by the parameters DOFFS and DOFFC in the PAR block in internal memory.
The effective digital offset correction referenced to
the input Sin/Cos signals can be calculated as
doffins
doffs
doffc
; doffinc 
again
again
Digital Gain Match Correction
Next, digital gain match correction is applied to either the Sin or Cos channel to correct any mismatch
between the two signal amplitudes. The actual digital gain values for the Sin and Cos channels, dgains
and dgainc respectively, are determined by the
DGAIN parameter in the PAR block in internal
memory. A range of ±1.25 in steps of 0.000244 at
the ADC inputs is available.
The ADCs in the iC-TW8 operate best with inputs
limited to ±1.4V maximum, which corresponds to
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC6/36
Digital Phase Correction
Sensor Distortion LUT
Lastly, phase correction is applied to the Sin and
Cos channels to guarantee 90° phase shift between
the two signals. The actual digital phase correction,
dphase, is determined by the DPH parameter in the
PAR block in internal memory. A range of ±53° in
steps of 0.056° is available.
An optional 64-byte lookup table (LUT) is provided
to allow correction of any remaining sensor distortion (see Using the LUT on page 34). The LUT can
be bypassed if not required.
Angle Calculation (Arctan)
The angle within an input cycle indicated by the
conditioned digital Sin and Cos signals is next calculated as arctan(Sin/Cos) with a resolution of 14
bits using a CORDIC algorithm.
pgain
Filter
A filter is provided in the AB signal path that adds
two bits of resolution to the angle calculation (giving 16-bit angle resolution), reduces noise and jitter
in the AB outputs, and can reduce angle lag at constant speed due to interpolator latency. The filter is
implemented as a PI servo loop with feedback path
delay as shown below.
igain
1
s
From LUT
To Hysteresis
1
s
14
-
16
Delay
delay
Figure 4: AB Signal Path Filter
The filter parameters pgain, igain, and delay are
determined by variables in the MAIN_FLTR register in the CFG block in internal memory. The
MAIN_FLTR register value necessary to realize a
given filter configuration is called its “instance”.
Because of the performance tradeoffs related to the
selection of the filter parameters, it is helpful to define three filter modes to make parameter selection
easier. Experimentation may be necessary to determine optimal filter parameters.
Mode
P
PI
Lag
Recovery
iC-TW8 Filter Modes
Description
Low-pass filter with lag.
Critically-damped low-pass filter with
no filter lag.
Under-damped low-pass filter with no
filter lag and reduced latency lag.
Copyright © 2011–2013 iC-Haus
P Mode is the simplest filter mode and uses only
pgain (igain = delay = 0). In P mode, the signal path
filter configuration reduces to
pgain
-
1
s
Figure 5: P Mode Filter Configuration
In P mode, the pgain value determines the noise and
jitter bandwidth of the filter. Position lag at constant
sensor input velocity is directly proportional to the
velocity and inversely proportional to pgain. There
is no position or speed overshoot in P mode.
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC7/36
The following P mode filter instances1 and approximate filter bandwidths (–3dB) are available.
Instance
112
114
116
118
120
122
124
P Mode Filter Instances
Noise and Jitter Bandwidth [kHz]
2.5 fcore[MHz] (Minimum lag)
2.5 3 fcore[MHz]
2.5 7 fcore[MHz]
2.5 15 fcore[MHz]
2.5 31 fcore[MHz]
2.5 63 fcore[MHz]
2.5 127 fcore[MHz] (Maximum lag)
In general, use the maximum filter bandwidth (instance 112); this gives the fastest response and minimum filter lag. Another instance may be used if
additional noise and jitter filtering is required.
PI Mode adds igain to the P mode filter, eliminating
filter lag at constant sensor input velocity at the expense of critically damped filter response. In PI
mode, the signal path filter configuration is
pgain
igain
The following PI mode filter instances and approximate filter bandwidths (–3dB) are recommended
(instances not shown may cause unstable filter response).
Recommended PI Mode Filter Instances
Instance
Noise and Jitter Bandwidth [kHz]
2.5 7 fcore[MHz] (Minimum overshoot)
52
70
88
106
2.5 15 fcore[MHz]
2.5 31 fcore[MHz]
2.5 63 fcore[MHz] (Max. overshoot)
In general, use the maximum filter bandwidth (instance 52); this gives the fastest response and minimum position and speed overshoot. Another instance may be used if additional noise and jitter filtering is required.
Lag Recovery Mode adds delay to the feedback path
of the PI mode filter, reducing latency-induced position lag at constant sensor input velocity at the expense of under-damped filter response. In lag recovery mode, the signal path filter configuration is as
shown in Figure 4 on page 6.
Figure 6: PI Mode Filter Configuration
In lag recovery mode, position lag at constant sensor
input velocity due to interpolator latency is reduced,
but filter response is under-damped and position and
speed overshoot are inversely proportional to filter
bandwidth. The following lag recovery mode filter
instances and approximate filter bandwidths (–3dB)
are recommended (instances not shown may cause
unstable filter response).
In PI mode, filter lag at constant sensor input velocity is eliminated, but position and speed overshoot
are inversely proportional to filter bandwidth.
Recommended Lag Recovery Mode Filter Instances
Instance
Noise and Jitter Bandwidth [kHz]
2.5
15 fcore[MHz] (Min. overshoot)
71
1
s
-
1
s
89
107
2.5 31 fcore[MHz]
2.5 63 fcore[MHz] (Max. overshoot)
In general, use the maximum filter bandwidth (instance 71); this gives the fastest response and minimum position and speed overshoot. Another instance may be used if additional noise and jitter filtering is required.
1
The filter instance is the MAIN_FLTR register value
necessary to realize the given filter.
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC8/36
Digital Hysteresis
Z Signal Path
Digital hysteresis may be added to the interpolated
sensor input angle to reduce AB output dithering
(instability) at standstill at the expense of position
error on direction reversal. A hysteresis range of 0 –
22.5° of an input cycle in 0.044° steps is available.
The actual hysteresis, hyst[°], is determined by the
MAIN_HYST register in the CFG block in internal
memory.
The Z signal path is similar to the front end of the
AB signal path except that a 1-bit ADC (comparator) is used.
Interpolation Factor
The 16-bit sensor input angle value is scaled to the
resolution required by the desired interpolation factor. A range of 4 – 65,536 AB output edges per sensor Sin/Cos input cycle in steps of 1 edge is available. This is equivalent to a interpolation range of
x1.00 – x16,384.00 AB output cycles per input cycle in steps of 0.25 AB output cycle. The actual interpolation factor, inter, is determined by the
MAIN_INTER register in the CFG block in internal
memory.
Output Generator
The output generator generates quadrature AB outputs or a pulse-width modulated (PWM) bit stream
output depending on the output mode. The output
mode is determined by MAIN_OUT.mode in the
CFG block in internal memory. The output generator also uses the conditioned ZERO signal from the
Z signal path to generate a Z output that can be synchronized to the AB outputs.
The output generator contains an optional divider
that can be used in AB output mode to produce fractional interpolation factors. This is useful in situations where the desired output resolution is not an
integer multiple of the input resolution.
zgain = 8
zth
Comparator
Delay Match
ZERO+
Delay
ZERO–
To
Output
Generator
Figure 7: Z Signal Path
A fixed analog gain of 8 is applied to the differential
ZERO sensor input. A threshold offset is then added
to the amplified ZERO signal to set the switching
threshold of the comparator. The actual analog
threshold level, zth, is determined by MAIN_Z in
the CFG block in internal memory and has a range
of ±300mV in 20mV steps. The effective ZERO
input threshold therefore has a range of ±37.5mV in
2.5mV steps.
To ensure that the digital ZERO signal stays in synchronization with the digital sensor angle at all sensor speeds, a delay matching the inherent latency of
the AB signal path is introduced into the Z signal
path. The delayed and conditioned digital ZERO
signal is then sent to the output generator where the
Z output is generated and can be synchronized to the
AB outputs.
Auto Calibration and Auto Adaption
The iC-TW8 provides sophisticated automatic calibration and adaption features to allow optimal parameter values for the AB signal path to be set and
maintained during operation. Auto calibration is
used to determine initial parameter values when the
iC-TW8 is first commissioned. The CALIB input
(pin 5) or commands over one of the serial interfaces may be used to initiate auto calibration.
Auto adaption is used to maintain (adapt) optimal
parameter values for the AB signal path during operation. Auto adaption can adjust analog gain, analog offset correction, digital offset correction, digital
gain match, and digital phase correction to ensure
maximum interpolator accuracy under all operating
conditions. Auto adaption is controlled by variables
in the ADPT_CORR and ADPT_DETAIL registers
in the CFG block of internal memory.
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC9/36
Auto Store
The iC-TW8’s Auto Store feature automatically
stores adapted parameter values to the EEPROM
during operation for use as the startup values at the
next power-up. A double buffer is used which ensures a consistent set of AB signal path parameters
at every startup. Auto store is controlled by variables in the ADPT_STORE register in the CFG block
of internal memory.
Fault Handling
The iC-TW8 provides comprehensive fault handling
features and a hardware FAULT output (pin 20) to
notify external systems of faults and warnings during operation. Real-time fault status is also available
over the serial ports.
The following signal path conditions are monitored
and can be configured to activate the FAULT output.
Signal Path Fault/Status
Conditions
ADC overflow
ADC underflow
Excessive adaption
Speed limit exceeded
Overspeed warning
Fatal overspeed fault
Excessive filter lag
Excessive AB output lag
1-wire interface time-out
External crystal fault
These conditions can be monitored in real time over
either of the serial ports by reading the STAT_SP
register in the VAR block in internal memory.
The following EEPROM conditions are monitored
and can be configured to activate the FAULT output.
EEPROM Fault/Status
Conditions
Communication timeout
Hardware fault
Wrong EEPROM ID
CFG block checksum error
PAR Block 0 checksum error
PAR Block 1 checksum error
PAR_BASE block checksum error
LUT block checksum error
Wrong configuration mode
Copyright © 2011–2013 iC-Haus
These conditions can be monitored in real time over
either of the serial ports by reading the STAT_EE
register in the VAR block in internal memory.
The conditions that activate or latch the FAULT
output are determined by bits in the FLT_CFG and
FLT_EN registers in the CFG block in internal
memory.
ADC and Adaption Quality Monitors
The iC-TW8 provides a sophisticated quality evaluation feature with a hardware STATUS output (pin
19) to monitor signal amplitude and auto adaption
during operation. Operation of the quality monitors
is controlled by bits in the MON_CFG register in
the CFG block in internal memory. Real-time quality status is also available over the serial ports.
The ADC Quality Monitor continuously evaluates
the amplitude of the sensor signal at the output of
the analog-to-digital converters in the AB signal
path and provides a pulse-width modulated signal
on the STATUS output that is inversely proportional
to relative signal amplitude. Thus the STATUS output can be used to drive an LED whose brightness
or color is proportional to sensor signal amplitude
for early warning of a possible future failure. The
ADC quality monitor levels are determined by variables in the MON_ADC register in the CFG block
in internal memory.
The Adaption Quality Monitor continuously evaluates the deviation of the adapted AB signal path parameters from their base values and provides a
pulse-width modulated signal on the STATUS output that is proportional to the amount of deviation.
Thus the STATUS output can be used to drive an
LED whose brightness or color is proportional to
the relative amount of adaption that has occurred for
early warning of a possible future failure. The adaption quality monitor levels are determined by variables in the MON_OFF, MON_GAIN, and
MON_PHASE registers in the CFG block in internal memory.
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC10/36
Electrical Connections
Analog power (AVDD = pin 38) and digital power
(DVDD = pin 21) inputs must be connected to a low
impedance 5V or 3.3V power source, preferably an
on-board voltage regulator. In addition, AVDD and
DVDD should each have a dedicated 1µF decoupling capacitor placed as close to the power pins on
the device as possible.
The basic electrical connections for an encoder using the iC-TW8 are shown in Figure 8. Other than
the analog sensor, only an EEPROM for parameter
storage and a few bypass capacitors are required for
operation. PINSEL (pin 22) must be connected to
DVSS to select serial configuration mode and either
the SPI or 1-wire serial ports must be connected to
an appropriate master for configuration. A voltage
regulator to supply clean power to the device and a
line driver are recommended. A crystal or oscillator
(clock driver) is recommended for all but the most
cost-sensitive applications.
If the iC-TW8 is used with a line driver (such as the
iC-HD7 or iC-HX) or a high frequency FPGA, it is
especially important to isolate the iC-TW8 power
inputs (AVDD and DVDD) against external noise.
In such applications, a dual voltage regulator such
as the iC-DC is highly recommended. Note that both
AVDD and DVDD must be the same voltage level
(5V or 3.3V).
The iC-TW8 requires a high quality ground and
clean power supplies. Analog ground (AVSS = pin
46) and digital ground (DVSS = pin 15) must both
be connected on the PCB to a solid ground plane.
VDD_MAIN
Regulator
VDD_TW8
10µF
VDD_TW8
AVDD
1µF
DVDD
EESEL tied to DVSS.
PINSEL
AVSS
MR Sensor
PINSEL tied to DVSS for
Serial Configuration mode
VDD_TW8
EESEL
1µF
DVSS
Line Driver
SIN+
SIN-
OUTA
COS+
OUTB
COS-
OUTZ
CALIB
Calibration Button
SPI_SO
SPI_SI
SPI_SCLK
SPI_xSS
}
SPI Communication Port
1-Wire Communication Port
VREF
IR
VDD_TW8
VC
1µF
1µF
iC-TW8
SCL
SCL
SDA
SDA
WP
WP
EEPROM
24AA02
Figure 8: iC-TW8 Electrical Connections (Serial Configuration Mode)
Both pin VC (pin 44) and VREF (pin 45) must be
decoupled to ground with 1µF each as shown. The
EEPROM and the line driver (if used) must be decoupled according to their respective requirements.
The calibration button provides an easy means to
activate the auto-calibration feature of the iC-TW8
Copyright © 2011–2013 iC-Haus
to set the data path parameters (offset, gain, and
phase) to their optimal values. All pins not explicitly
shown in Figure 8 should be connected to appropriate levels as indicated under Pin Functions in the iCTW8 data sheet.
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC11/36
Providing a Clock
The iC-TW8 supports three clocking modes as
indicated in Figure 9. The iC-TW8 provides an
internal oscillator that, while it can be tuned, is
not particularly stable over temperature. Thus, an
external crystal or other clock source is recommended
for all but the most cost-sensitive applications.
XOUT
XOUT
XOUT
XIN
XIN
XIN
iC-TW8
Crystal
iC-TW8
Clock Inject
iC-TW8
Internal Oscillator
Figure 9: Clocking
An external crystal or oscillator provides the most
stable clock signal over time and temperature variations, resulting in the most consistent long-term
iC-TW8 performance. Connect an external crystal
to XIN (pin 35) and XOUT (pin 34) as shown in
Figure 9. Depending on the crystal characteristics,
two capacitors to ground might be necessary for
stable oscillation. To use an oscillator or ceramic
resonator, connect XIN (pin 35) to ground and the
oscillator output to XOUT (pin 34) as shown in
Figure 9. Maximum crystal frequency (fclock) is
32 MHz with 5V supplies and 24 MHz with 3.3V
Copyright © 2011–2013 iC-Haus
supplies. Minimum frequency is 6 MHz regardless of
supply voltage.
To use the internal oscillator, connect both XIN (pin
35) and XOUT (pin 34) to ground as shown in Figure
9. The iC-TW8’s internal oscillator has a nominal frequency of 20 MHz with 5V supplies and 16 MHz with
3.3V supplies and can be tuned (see page 33). However, manufacturing tolerances and changes in temperature can cause large variations in the frequency of the
internal oscillator.
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC12/36
Connecting the EEPROM
Connecting the Incremental Sensor
The iC-TW8 requires a 24xx02 through 24xx16
family I2C EEPROM for storage of sensor calibration data (offset, gain, etc.). The EEPROM connects directly to the iC-TW8 via a dedicated I2C
communication channel using SCL (pin 27) and
SDA (pin 28) as shown in Figure 10. No external
pull-up resistors are required. EESEL (pin 4) of
the TW8 must also be connected to DVSS as
shown.
The iC-TW8 connects directly to magnetic (such as
the iC-SM2L or iC-SM5L) or optical sensors providing differential Sin/Cos outputs as shown in Figure 11.
Signal amplitude (A) from all four sensor channels
must be in the range of 5 – 350mV as shown in Figure
12 for proper operation with the iC-TW8.
AVDD
SIN+
VDD
Sensor Bridge 0
EESEL tied to DVSS.
DVDD
EESEL
SIN-
1µF
COS+
DVSS
Sensor Bridge 1
VDD
SCL
SCL
SDA
SDA
WP
WP
iC-TW8
VCC
COS-
1µF
iC-TW8
VSS
EEPROM
24xx
Figure 10: EEPROM Connection
In serial configuration mode, the Write Protect
(WP) input of the EEPROM is controlled by the
iC-TW8. WP must be disabled via the serial port
during calibration to allow the iC-TW8 to write
parameter values to the EEPROM. In operation,
WP can be left enabled or disabled as required by
the application.
Figure 11: Differential Sensor Connection
SIN+
A
5mV ≤ A ≤ 350mV
0 (VDD/2)
–A
SIN0°
180°
360°
Figure 12: Differential Sensor Signal Inputs
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC13/36
Single-ended Sin/Cos inputs can also be connected to the iC-TW8 by connecting the SIN– and
COS– pins to the proper bias voltage as shown in
Figure 13. Since the iC-TW8 provides highimpedance signal inputs, a simple resistive voltage divider can be used to generate the required
bias voltage. For AMR sensors, it is recommended that the resistors of the bias generator match
the AMR sensor bridge resistance to improve
power supply noise rejection. No decoupling capacitor should be used.
Connecting an Index Sensor (If Used)
The iC-TW8 can interface to a wide range of index
sensors or gating sources to provide an index or Z
output which is synchronized with the AB outputs.
Digital Hall sensors are often used for this purpose, as
shown in Figure 14.
iC-TW8
VDD
ZERO+
VDD
AVDD
SIN+
Digital Hall
active low
Sensor Bridge 0
COS+
Sensor Bridge 1
SINCOS-
Resistive Bias
Generator
ZERO-
iC-TW8
Figure 13: Single-ended Sensor Connection
Differential inputs should be used whenever possible to reject common mode distortions and provide increased signal amplitude and improved
signal to noise ratio (SNR).
Figure 14: Digital Index Sensor Connection
Digital sensors (Hall, MR, and others) typically provide an active-low signal via an open-drain output that
pulls low in the presence of a magnetic field. Connect
an active-low (open drain) digital index sensor to the
iC-TW8 ZERO– input (pin 48) and connect the
ZERO+ input (pin 47) to a resistive voltage divider set
to the midpoint of the index sensor output voltage
swing to provide good noise rejection. For active-high
(open source) digital index sensors, reverse the
ZERO+ and ZERO– connections.
Analog-output index sensors, such as MR bridges, can
also be used with the iC-TW8 in serial configuration
mode as shown in Figure 7.
Regardless of input configuration, the autocalibration feature of the iC-TW8 is sufficient in
most cases to compensate for any signal offset,
gain, and phase distortions without requiring any
additional external components.
iC-TW8
ZERO+
ZERO-
MR Index
Sensor
Figure 15: Analog Index Sensor Connection
If no index (Z) output is required, connect ZERO+
(pin 47) to ground and ZERO– (pin 48) to AVDD.
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC14/36
Connecting the ABZ Outputs
Connecting the Serial Ports
The iC-TW8 provides industry-standard quadrature
incremental outputs at OUTA (pin 18) and OUTB
(pin 17). If an index sensor is connected to the
ZERO inputs of the iC-TW8, a Z output synchronous with the AB outputs is also available on OUTZ
(pin 16). These outputs can be directly connected to
an encoder counter such as the iC-TW9.
The iC-TW8 contains two serial ports that may be
used to access internal registers for configuration.
These are a standard SPI (Serial Peripheral Interface) slave port and a 1-wire port, both of which
utilize the same communication protocol (see Serial
Communication Ports in the Programmer’s Reference for the protocol definition). Both ports may be
used simultaneously.
Alternatively, the ABZ outputs can be connected to
a differential line driver (such as the iC-HD7 or iCHX) as shown in Figure 16. When using a line driver it is especially important to isolate the iC-TW8
from external switching noise using a regulator, as
shown.
24V
regulator
regulator
3.3V
5V
line driver
AVDD
DVDD
VCC
OUTA
OUTB
E1
E3
OUTZ
E5
AVSS/DVSS
VB1
VB2
VB3
A1
A2
GNDx
A3
A4
A5
A6
iC-TW8
iC-HX
Figure 16: Line Driver Connection
The SPI slave port uses a 3-wire or 4-wire fullduplex interface which operates in CPOL = 0 and
CPHA = 0 mode only. This means that the base
(resting) value of SPI_SCLK (pin 27) is low, SPI_SI
(pin 10) is sampled on the rising edge of
SPI_SCLK, and SPI_SO (pin 9) is changed on the
falling edge of SPI_CLCK.
When using a 4-wire SPI interface, the SPI_xSS
input (pin 14) is used to enable the SPI port whenever communication is required. When using a 3wire SPI interface, the SPI_xSS input must be tied
to DVSS.
The 1-wire port uses a single bi-directional data line
connected to IR (pin 7) for communication. The bit
stream is pulse-width modulated: a 1-bit is encoded
as a long high level followed by a short low level, a
0-bit is encoded as a short high level followed by a
long low level. A timeout circuit activates a status
bit in the STAT_SP register (see Programmer’s
Reference) in the event of an illegal transaction.
Power-on-Reset
The iC-TW8 contains a built-in power-on-reset
(POR) circuit that controls the safe start-up of the
device. The internal POR can be configured for
two thresholds, 2.7V for use with 3.3V supplies or
4V, which is recommended when operating the
iC-TW8 at 5V. Connect xRST (pin 2) DVDD or
leave it unconnected (xRST has an internal 40kΩ
pullup resistor to DVDD) to select a power-on-reset
threshold of 2.7V. Connect xRST to ground through a
68kΩ resistor to select a threshold of 4V. An external
reset source (such as an RC circuit) can also be connected to xRST (pin 2) to directly control the POR
behavior.
Connect xRST to DVSS via 68kΩ
resistor for 4V POR threshold.
DVDD
xRST
xRST
68kΩ
iC-TW8
Connect xRST to DVDD (or leave
floating) for 2.7V POR threshold.
iC-TW8
DVSS
Figure 17: Setting the Power-On-Reset Threshold
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC15/36
Startup
Serial Configuration Overview
In operation, the startup sequence is initiated when
power is applied to the iC-TW8. However, a startup
sequence can also be initiated by external hardware
connected to the xRST input (pin 2), or by the Restart command (write 0x40 to 0x80B0). See the iCTW8 Programmer’s Reference for more information
on executing commands.
In serial configuration mode, values for all configuration variables must be written to the TW8’s internal CFG block registers before the device can be
used. The easiest way to accomplish this is to use
the free encoder design tools along with the iC-TW8
demo board and the free Graphical User Interface
(GUI) software. The encoder design tools—in the
form of Excel spreadsheets—allow entering application parameters in engineering units and then provide configuration register values that can be directly written to the iC-TW8 using the GUI software.
The encoder design tools also provide performance
limits and graphs and configuration documentation.
After power-up, the iC-TW8’s POR circuit monitors
the supply voltage and waits until it has reached the
appropriate threshold (as determined by the xRST
connections). The iC-TW8 then starts up using the
internal oscillator (even if a crystal or external clock
source is connected) and executes its start-up cycle
as outlined here.
1. Read configuration and parameter values
from EEPROM.
2. Set proper clock source and frequency.
3. Enable the signal path.
4. Wait for all analog circuitry to settle.
5. Clear all errors.
6. Start ABZ output generation.
If any errors are detected during the start-up cycle,
the iC-TW8 does not enable the outputs but goes
into an idle state with ERR (pin 20) asserted (low).
The amount of time the iC-TW8 waits for the analog circuitry to settle (twait) is configured using the
internal variable MAIN_OUT.start.
Copyright © 2011–2013 iC-Haus
The iC-TW8 TW8_1D evaluation board implements
the iC-TW8 along with a 24AA02 EEPROM,
24MHz crystal, and an SPI interface (with 3.3V to
5V level shifter if required) to the iC-MB3U-I2C PC
adapter for direct communication with the GUI
software. A functional prototype can thus be quickly
assembled by connecting only a sensor and optional
line driver. See the TW8_1D evaluation board documentation for more information.
Once the iC-TW8 has been configured, the AB signal path must be calibrated to determine proper values for gain, offset correction, gain match correction, and phase correction. This is most easily done
using the Auto Calibration feature of the iC-TW8 to
automatically determine optimum parameter values.
Alternatively, initial parameter values may be written over the serial interface and allowed to adapt.
The adapted parameter values can then be written to
the EEPROM.
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC16/36
Rotary Encoder Design Tool
General Configuration
A design tool in the form of an Excel spreadsheet is
available to simplify configuration of the iC-TW8 in
rotary encoder applications. The design tool requires
answers to questions and input of desired application specifications (in engineering units) to produce
the desired iC-TW8 configuration (CFG block register values). These values can then be written directly
to the iC-TW8 over the SPI or 1-wire serial interfaces to configure the device.
Click on the General Configuration tab and start by
entering the operating voltage (Vdd) as 5.0 or 3.3. If
you are using an external crystal or other clock
source (recommended), enter its frequency. The operating voltage and crystal frequency affect the current drawn by the iC-TW8, which is calculated and
shown for reference. The signal path clock frequency (fcore)—which affects the maximum encoder
speed and the filter response—is shown for reference. In general, use the highest possible frequency
unless there is a need to minimize current.
In the design tool spreadsheet, cells with a blue
background are for user entry. Cells without a blue
background are fixed or calculated by the spreadsheet and cannot be edited. Depending on answers
to previous questions, certain blue background cells
may be labeled “Ignore”. In this case, the entered
value has no effect on device operation. Register
values and internal variables calculated from user
input are shown in column F or I (typically) on the
spreadsheets. These correlate directly to the register
and variable descriptions in the iC-TW8 Programmer’s Reference document.
When possible, legal responses to questions are provided (in parentheses). Entering values other than
the given responses may cause “Error” to appear for
the corresponding variable value in column H (typically). In this case, the Excel error “#VALUE!” is
displayed in the corresponding CFG register in the
CFG Block tab.
Copyright © 2011–2013 iC-Haus
If you are not using an external oscillator or clock
source, enter the desired Clock Divider and Clock
Tuning Value for the internal oscillator.
Internal
Oscillator
Clock
Divider
fcore
Clock
Tuning
Value
Figure 18: Internal Oscillator Configuration
The nominal frequency of the internal oscillator,
shown for reference, depends on the operating voltage. The actual frequency, however, varies from
unit to unit and over temperature. To compensate
for this, the oscillator frequency may be reduced by
a factor of 2 or 4 using the Clock Divider and also
tuned (raised) using the Clock Tuning Value (see
page 33). For initial configuration, enter the desired
divider and a tuning value of 0. The resulting signal
path clock frequency (fcore) is shown for reference.
Changing the Clock Tuning Value changes the nominal calculated fcore. The actual fcore in any given
chip with the given Clock Tuning Value will vary
from the nominal calculated value due to normal
production tolerances.
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC17/36
The iC-TW8 can be configured to use pull-up and
pull-down resistors on the sensor Sin/Cos inputs to
enhance fault detection in the event of a floating
sensor input.
AVDD iC-TW8
AB Startup Mode determines how the AB outputs
behave when power is applied to the iC-TW8.
OUTA
Relative
AB Startup
OUTB
OUTZ
OUTA
2x 2MΩ
SIN+
Same Phase OUTB
AB Startup
OUTZ
SIN–
OUTA
Burst
AB Startup
COS+
OUTB
OUTZ
COS–
Startup
2x 2MΩ
AVSS
Figure 19: Input Pull-up Resistors
When input pull-ups are used and if a sensor input
becomes disconnected, that input is immediately
pulled to a level that causes an ADC fault (see page
9).
If the iC-TW8 WP (Write Protect) output (pin 29) is
connected to the EEPROM WP input (see Connecting the EEPROM on page 12), then the EEPROM
can be configured to be locked (protected) or unlocked during operation. Usually the EEPROM
should be locked during operation. To temporarily
unlock the EEPROM to store configuration and calibration data, disable EEPROM Write Protection in
the Miscellaneous pane of the Settings tab in the iCW8 GUI software or set the Unlock EEPROM bit in
the RB_TEST1 register in the RB Block of internal
memory using serial port commands (see Programmer’s Reference).
Next, enter the desired Output Mode. AB is the usual setting and configures the iC-TW8 to produce
industry-standard AB quadrature outputs. Serial and
PWM are alternate output modes that are described
on pages 30 and 31.
Copyright © 2011–2013 iC-Haus
Figure 20: AB Startup Mode
In Relative startup mode, the A and B outputs are
low on startup regardless of the sensor input position (angle). In Same Phase startup mode, the phase
relationship of the A, B, and Z outputs is the same
after every startup as long as the post-AB divider is
not used and the actual interpolation factor, inter, is
an integer. Absolute Burst startup mode is like Same
Phase, except that the sensor position (angle) within
one input cycle is counted out on the A and B outputs at startup. Same Phase startup mode is the usual
selection and provides operation similar to that of a
non-interpolated encoder.
Enter the desired Counting Direction (phase relationship) for the AB outputs when sensor angle is
increasing. While it may be impossible to predict
the correct value during design, the counting direction can always be changed during testing to ensure
correct phasing.
Enter the desired amount of time for the iC-TW8 to
wait during startup for its analog circuitry to settle
(see Startup on page 14). The design tool returns the
closest possible (actual) startup delay using the current crystal frequency.
The CLOCK (pin 6) and FRAME (pin 8) outputs
can be activated if necessary for special applications
(see Using PWM Output Mode on page 31). In most
cases, disable the CLOCK and FRAME outputs.
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC18/36
AB Configuration
In the AB Configuration tab, enter the input resolution produced by the wheel or magnet and sensor.
This value should be the number of Sin/Cos cycles
per mechanical revolution of the wheel, magnet, or
optical disc produced by the sensor connected to the
iC-TW8. Next enter the desired output resolution of
the encoder as the number of AB cycles per revolution (CPR). This is also sometimes called PPR
(pulses per revolution) and is equivalent to the number of “lines” in a non-interpolated optical encoder.
With these values entered, the design tool calculates
and displays the minimum required iC-TW8 interpolation factor, the minimum post-AB divider, and
the effective overall interpolation factor. In most
applications, the post-AB divider is not required,
and the Minimum Divider value should be 1. In
general, this will be true if the Desired Output Resolution is an integer multiple of the Input Resolution.
Specifically, Minimum Divider = 1 if
4  Desired Output Resolution
 16, 384
Input Resolution
and
4  Desired Output Resolution
is an integer.
Input Resolution
4
For example, with an input resolution of 32 Sin/Cos
cycles per revolution, a desired output resolution of
16,384 CPR results in a minimum interpolation factor of 512 and a minimum divider of 1 since
4 16,384
 2048
32
In this case enter 1 for the divider override factor
and then actual interpolation = effective interpolation = minimum interpolation and actual output resolution = desired output resolution. This is the usual
case.
If it is desired to achieve the same output resolution
using an input resolution of 24 cycles per revolution, however, a minimum interpolation of 2048 and
a minimum divider of 3 are required since
If minimum divider ≠ 1, it is not possible to synchronize the Z output with the states of the A and B
outputs. See Using the Post-AB Divider on page 32.
Impossible combinations of input and output resolution are flagged with red warnings.
Next, enter the desired maximum speed (speed limit) for the encoder in RPM. The spreadsheet calculates and displays the closest actual speed limit that
can be implemented for the chosen output resolution
using the current crystal. The calculated actual
speed limit is shown in RPM, AB channel frequency, AB edge frequency, and as minimum time between edges. Exceeding the actual speed limit can
be configured to activate the FAULT output (pin
20). See Fault Configuration on page 22 for more
information.
For an enclosed encoder the maximum speed is usually dictated by the bearings used. For a modular
encoder (without bearings) or to use the full speed
capability of the iC-TW8, enter an arbitrarily large
value (such as 1,000,000 RPM) and the design tool
will default to the highest possible speed. The calculated actual speed limit is affected by the crystal
frequency and output resolution.
Next, enter the desired maximum adaption speed in
RPM. This is the speed above which auto adaption
of the AB signal path parameters ceases. The actual
maximum adaption speed depends on the input resolution and crystal frequency. In general, set the desired maximum adaption speed to an arbitrarily high
value (such as 1,000,000 RPM) to enable auto adaption at all speeds. See Auto Adaption Configuration
on page 21 for more information.
The warning fault speed depends on crystal frequency and input resolution and can be configured
to activate the FAULT output. The warning fault
speed is always half the fatal fault speed. The fatal
fault speed is the ultimate speed limit of the iC-TW8
at the selected input resolution using the current
crystal. Exceeding the fatal fault speed always activates the FAULT output. See Fault Configuration
on page 22 for more information.
4 16,384
 2730.66
24
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC19/36
The design tool shows the resulting speed/resolution
performance in a chart at columns M – T. The X
(Resolution) axis shows the range of output resolutions that are possible using the selected input resolution. The chart shows the resulting maximum
speed, maximum adaption speed, warning fault
speed and fatal fault speed at a given output resolution.
Finally, enter the desired hysteresis in equivalent
AB output edges to prevent output dithering at
standstill. The design tool calculates and displays
the closest possible (actual) hysteresis with the current input and output resolution. Also displayed is
the equivalent hysteresis in AB output cycles, mechanical degrees (°m) and arc-minutes of rotation,
and input Sin/Cos cycle degrees. Desired hysteresis
can be less than 1 AB output edge. For best accuracy, choose the smallest value that produces stable
AB outputs with no sensor motion. Experimentation
may be required to determine the optimal value.
The complete range of output resolutions using the
selected input resolution is shown numerically in
cells B39 – B41. A complete list of output resolutions and the corresponding interpolation factor required to achieve them is shown in the All Resolutions tab for easy reference with respect to completed designs. For example, with an input resolution of
32 cycles per revolution, an output resolution of
16,384 CPR requires an interpolation factor of 512,
as shown previously. Using this same input resolution, the All Resolution tab shows that an output
resolution of 10,000 is also possible by choosing an
interpolation factor of 312.50 (row 1257).
Filter Configuration
In the Filter Configuration tab, enter the desired filter mode for the AB signal path filter and then enter
one of the recommended filter instances. The design
tool confirms the actual filter mode and approximate
noise and jitter bandwidth for the selected filter instance at the current crystal frequency. If “Not Defined” appears for the actual filter mode, the entered
instance is not one of the recommended ones. Nonrecommended instances may cause unstable filter
response. See Filter on page 6 for details on filter
modes and instances.
The following filter modes are available.
Mode
P
PI
Lag
Recovery
iC-TW8 Filter Modes
Description
Low-pass filter with lag.
Critically-damped low-pass filter with
no filter lag.
Under-damped low-pass filter with no
filter lag and reduced latency lag.
P Mode is the simplest mode; position lag at constant sensor input velocity is directly proportional to
the sensor velocity and the filter instance value.
There is no position or speed overshoot in P mode.
PI Mode eliminates filter lag at constant sensor input velocity at the expense of critically damped filter response. In PI mode, filter lag at constant velocity is eliminated, but position and speed overshoot
are proportional to the filter instance value.
Lag Recovery Mode reduces latency-induced position lag at constant sensor input velocity at the expense of under-damped filter response. In lag recovery mode, position lag at constant velocity due to
interpolator latency is reduced, but filter response is
under-damped and position and speed overshoot are
proportional to the filter instance value.
In general, use the lowest instance value for the desired filter type. This gives the fastest response,
minimum lag, and minimum position and speed
overshoot. Another instance may be used if additional noise and jitter filtering is required.
The design tool shows the encoder lag in AB edges
per kRPM and mechanical degrees (°m) of encoder
rotation at the chosen maximum speed for the selected filter instance. For a given filter instance, lag
is directly proportional to encoder speed.
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC20/36
The design tool also shows the position and speed
overshoot resulting from the selected filter instance.
Position overshoot (shown in AB edges and mechanical degrees of encoder rotation) is proportional
to the entered maximum acceleration and is typically noticed on stopping (deceleration). At low acceleration values and/or low encoder resolutions, position overshoot may be less than one AB edge and
thus totally undetectable during encoder operation.
For example, the Maxon EC 90 flat 90W motor with
the 24V winding (order number 323772) has a rotor
inertia of 3,060 gcm2 and a stall torque of 4,670
mNm. Thus its no-load maximum acceleration in
radians per second2 is
Speed overshoot is calculated as a percent of speed.
The actual amount of speed overshoot in RPM is
proportional to encoder speed. Speed overshoot is
typically noticed at the end of the acceleration ramp
(the beginning of the constant velocity portion of the
motion profile).
Using this value for the maximum acceleration parameter in the design tool will then show the performance of the iC-TW8 when used in an encoder
for feedback with this motor.
Performance graphs of encoder lag in AB edges and
response to a trapezoidal motion profile with constant acceleration, velocity, and deceleration are
shown to allow observing the effect of the different
filter instances. Scroll to the right on small computer
screens to see the performance graphs.
m 
TS 4670

10, 000 15, 261
J R 3060
The graphs below show typical motion profile performance and encoder lag of the iC-TW8 using lag
recovery filter mode instance 89 at 15,261 radians
per second2 maximum acceleration.
A single parameter (maximum acceleration) is used
to generate the filter response graphs. Enter a value
in radians per second2 that represents the maximum
expected acceleration of the encoder. The design
tool calculates the equivalent acceleration in units of
kRPM (1000 RPM) per second and time to reach the
chosen maximum speed, which may be more easily
understood. The acceleration value is used only to
generate the performance graphs, it does not affect
the configuration of the iC-TW8. The motion profile
is generated by accelerating for 1000 ADC samples
at the entered acceleration, running at the attained
speed for 1000 ADC samples, and decelerating at
the entered acceleration for 1000 ADC samples.
The maximum acceleration (  m ) of a motor in radians per second2 may be calculated knowing its stall
torque ( TS ) in Newtons and its rotor inertia ( J R ) in
kilogram seconds2 using the formula
 m  TS J R .
Figure 21: Typical Encoder Performance Graphs
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC21/36
Z Configuration
Auto Adaption Configuration
In the Z Configuration tab, enter Yes or No as to
whether an index sensor is connected to the ZERO+
and ZERO– inputs. If an index sensor is not used,
the ZERO inputs of the iC-TW8 should be connected to AVDD and AVSS as explained on page 13
and the remaining entries on this sheet can be ignored. Not using an index sensor allows higher
speeds with high interpolation factors.
In the Auto Adaption Configuration tab, select
which parameters are automatically adjusted
(adapted) during operation to maintain low interpolation error and jitter. Analog gain, analog offset,
digital offset, digital gain match, and phase may be
individually selected although there are certain dependencies that cause the design tool to override the
entered selections. In this case, a red warning is displayed by the design tool.
If an index sensor is used, enter the desired width of
the Z output pulse in AB edges. The actual Z output
pulse width is confirmed; it is always equal to the
desired width unless the post-AB divider is used
(see page 32) or a fractional desired width is entered. The design tool shows the equivalent Z output
pulse width in AB output cycles, mechanical degrees of rotation (°m), arc-minutes of rotation, predivider edges, and sensor input cycle degrees for
reference.
Next, enter the desired polarity for the Z output as
either active high or active low. If the post-AB divider is not used and the actual interpolation factor,
inter, is an integer, the states of the A and B outputs
at the beginning of the Z output (zpos) can be entered to specify the desired synchronization of the
A, B, and Z outputs.
Set both the Z position (zpos) and desired ZERO
threshold to 0 initially. Proper values for these parameters are determined when the Z signal path is
calibrated (see page 26).
Finally, configure the iC-TW8’s internal 32-bit position counter to be reset to 0 by the Z output, the
ZERO input, or not at all. If “On zpos” is selected,
the counter is reset at zpos whenever the ZERO input is active. If “On ZERO” is selected, the counter
is reset—and stays reset—whenever the ZERO input is active.
Copyright © 2011–2013 iC-Haus
It is recommended to disable analog gain and offset
adaption and enable only digital offset, gain match,
and phase adaption during operation. In this case,
analog gain and offset remain at their calibrated settings during operation. This prevents changes in analog gain and offset (which can be quite large) from
causing disturbances in the interpolated output during operation. Analog gain and offset adaption may
be enabled if large changes in sensor signal amplitude or offset are expected during operation.
If digital offset adaption is enabled, enter the desired
digital offset tolerance and the design tool confirms
the closest actual tolerance that can be achieved.
Digital offset tolerance is the amount of uncorrected offset that the iC-TW8 tolerates before
auto adaption corrects it. Small tolerance values
must be used for highest accuracy, but also cause
offset corrections to occur more frequently during
operation and thus may lead to increased output jitter. Digital offsets of less than the entered tolerance
are not corrected. In general, set the digital offset
tolerance to the smallest value that prevents dithering of the digital offset correction value during normal operation.
If digital gain match adaption is enabled, enter the
desired digital gain match tolerance and the design
tool confirms the closest actual tolerance that can be
achieved. Digital gain match tolerance is the amount
of un-corrected gain mismatch between the sensor
Sin and Cos channels that the iC-TW8 tolerates before auto adaption corrects it. Small tolerance values
must be used for highest accuracy, but also cause
gain corrections to occur more frequently during
operation and may lead to increased output jitter.
Digital gain mismatch of less than the entered tolerance is not corrected. In general, set the digital gain
match tolerance to the smallest value that prevents
dithering of the digital gain match correction value
during normal operation.
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC22/36
The Correction Configuration controls how the auto
adaption corrections are applied to the AB signal
path parameters during operation. First, select linear
or exponential correction mode. Linear correction
mode is the recommended selection and provides
the smoothest correction; parameter corrections are
applied one increment per correction cycle. This
results in the least disturbance to the interpolator
output when the auto adaption corrections are made.
Faster correction is available in exponential correction mode which allows selection of the desired correction step size. Small correction steps correct 25%
of the parameter error every correction cycle; medium correction steps correct 50% of the parameter
error every correction cycle; large correction steps
correct 75% of the parameter error every correction
cycle. Experimentation may be required to determine the optimal correction configuration.
The correction timebase determines the rate at
which auto adaption corrections are applied. In general, enter 0 for the desired correction timebase and
the design tool confirms the closest possible actual
timebase using the current crystal. This results in
auto adaption corrections being applied as quickly
as possible. Larger timebase values provide slower
response.
Lastly, select whether or not the auto adapted parameter values are written to the EEPROM during
operation (auto store) and used at the next restart. If
auto store is enabled, enter the desired digital offset
and gain match thresholds; the design tool confirms
the closest available (actual) values. These thresholds are the levels of change in the respective parameters that must be achieved by auto adaption to
cause new values to be written to EEPROM. Since
most EEPROMS are only guaranteed for a finite
number of write cycles, these thresholds must be set
high enough to minimize unnecessary EEPROM
writes. If auto store is disabled, these thresholds are
ignored.
FAULT Pin Configuration
In the FAULT Pin Configuration tab, select whether
the FAULT output (pin 20) is active high or active
low. Active low is the recommended since this is the
startup default of the iC-TW8. If active high is chosen, the FAULT output will be active (high) at
startup until configured to active low polarity during
the startup process.
The FAULT output can be configured to stay active
for a time after a fault condition has cleared to enhance observation of transient fault conditions. The
amount of time by which the output is prolonged is
fixed and inversely proportional to crystal frequency. Next, choose whether or not the AB outputs
should be stopped when the FAULT output is active.
iC-TW8 fault conditions can be configured to either
activate or latch the FAULT output. Faults which do
not latch the FAULT output only activate the
FAULT output for the time during which the condition is active (subject to prolonging, as explained
above). Faults which latch the FAULT output are
cleared at restart or may be cleared by writing to the
STAT_SP, STAT_EE, or FLT_STAT registers using one of the serial ports (see Programmer’s Reference).
A crystal fault is active if the iC-TW8 is configured
to use an external crystal or clock source (see page
16) and the expected external signal is not present.
In this case, the iC-TW8 reverts to using its internal
oscillator. Once an external clock signal becomes
available, the iC-TW8 switches back to using the
external oscillator and clears the crystal fault. Clearing the crystal fault also de-activates the FAULT
output if the crystal fault is not configured to latch.
An EEPROM fault is active if the EEPROM has not
been initialized, there is a hardware or communication problem with the EEPROM, or if any of the
internal checksums are invalid. It is recommended
to latch EEPROM faults as they can result in undefined startup conditions.
A fatal operational fault is active if the instantaneous sensor input velocity is greater than the fatal
fault speed shown on the AB configuration tab (see
page 18), the filter lag is too large (see page 19), or
the AB output is more than half an input cycle behind the sensor input position due to prolonged op-
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC23/36
eration above the maximum speed shown on the AB
Configuration tab (see page 18). It is recommended
to configure fatal operational faults to latch the
FAULT output as they can result in erroneous interpolator output.
An operational warning is active if the instantaneous
sensor input velocity is greater than the maximum
speed or warning fault speed shown on the AB configuration tab (see page 18). Interpolator output is
still correct while an operational warning is active.
Maximum speed is determined by the desired speed
limit (see page 18) while the warning fault speed is
always half the fatal fault speed. If operational
warnings are treated as faults, they can be configured to activate or latch the FAULT output. If operational warnings are not treated as faults, they are
ignored. It is recommended to configure operational
warnings to be treated as faults but not to latch the
FAULT output so that the FAULT output is deactivated when the condition is resolved.
An ADC fault is active if the signal input level to
the analog-to-digital converters in the AB signal
path (see page 5) is outside defined operational limits. The upper signal level (called ADC overflow) is
fixed at 1.5V, which is 106% of the nominal signal
level into the ADC.
The lower signal level (called ADC underflow) can
be set between 10% and 100% of nominal signal
level or left at the default (10%). Enter the desired
ADC underflow level and the design tool confirms
the closest possible (actual) level. Less resolution
for the ADC underflow level is available if the ADC
quality monitor is used (see page 23).
ADC overflow and underflow faults are not fatal,
but interpolation accuracy is reduced when operating under these conditions. Therefore, it is recommended not to latch ADC faults, but to stop auto
adaption when an ADC fault is active. This prevents
auto adaption from overcompensating for an out-ofrange input signal and de-activates the FAULT output when the input signal is back in range.
If adaption faults are used, enter the desired maximum adaption values for offset, gain match, and
phase. The design tool confirms the closest possible
(actual) values. When any of these levels is exceeded, adaption of the corresponding parameter stops
and an adaption fault is activated (see page 21). Less
Copyright © 2011–2013 iC-Haus
resolution for the adaption limits is available if the
adaption quality monitor is also used (see page 24).
If adaption faults are not used, the design tool sets
the adaption limits to their highest possible (actual)
values to avoid ever stopping auto adaption. Since
an adaption fault always latches the FAULT output
and stops auto adaption if adaption faults are used, it
is recommended not to use adaption faults without
precise knowledge of how the parameters adapt under all operating conditions. Adaption faults are
cleared at restart when valid startup values for the
parameters are read from the EEPROM.
Finally, the design tool summarizes the conditions
that activate the FAULT output, the conditions that
latch the FAULT output, and the conditions that are
ignored. Latched faults are cleared by restarting the
iC-TW8 or by writing to the STAT_SP, STAT_EE,
or FLT_STAT registers using one of the serial ports
(see Programmer’s Reference).
ADC Quality Monitor
If Set ADC Underflow? = No in the FAULT Pin
Configuration tab, the ADC Quality Monitor tab can
be ignored in its entirety. If Set ADC Underflow? =
Yes in the FAULT Pin Configuration tab, use the
ADC Quality Monitor tab to enable or disable the
ADC quality monitor. If the ADC quality monitor is
not used, the remainder of the ADC Quality Monitor
tab may be ignored.
If the ADC quality monitor is used, enter the desired
ADC quality threshold level. This is the ADC level
in percent of nominal signal input amplitude that is
considered to be the boundary between acceptable
and marginal signal level for the application. The
design tool shows the closest possible (actual) ADC
quality threshold level and the desired and actual
ADC underflow fault levels from the FAULT Pin
Configuration tab.
In operation, the iC-TW8 continuously calculates
the variable QM_ADC as a value between 0 (ADC
level > ADC quality threshold) and 255 (ADC level
≤ ADC underflow level). Between the quality
threshold level and the underflow level, QM_ADC
is inversely proportional to the ADC level as shown
in the design tool graph. Thus, QM_ADC indicates
the relative quality (signal amplitude) of the input
signal. QM_ADC is a component of the PWM signal that drives the STATUS output (pin 19) for exhttp://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC24/36
ternal quality monitoring; it may also be read directly from the VAR block in internal memory via the
serial ports (see Programmer’s Reference).
Adaption Quality Monitor
If Use Adaption Faults? = No in the FAULT Pin
Configuration tab, the Adaption Quality Monitor tab
can be ignored in its entirety. If Use Adaption
Faults? = Yes in the FAULT Pin Configuration tab,
use the Adaption Quality Monitor tab to enable or
disable the adaption quality monitor. If the adaption
quality monitor is not used, the remainder of the
Adaption Quality Monitor tab may be ignored.
If the adaption quality monitor is used, enter the desired offset, gain match, and phase adaption quality
threshold levels. These levels are the cumulative
amount of adaption that is considered to be the
boundary between acceptable and marginal operation for the application. The design tool shows the
closest possible (actual) quality threshold levels and
the desired and actual fault levels from the FAULT
Pin Configuration tab.
STATUS Pin Configuration
If neither the ADC quality monitor nor the adaption
quality monitor is used, the STATUS Pin Configuration tab may be ignored in its entirety. If either of
the quality monitors is used, use the STATUS Pin
Configuration tab to set the polarity and mode of the
STATUS output (pin 19).
The STATUS output is a pulse-width modulated
signal whose duty cycle is proportional to the outputs of the enabled quality monitors. PWM polarity
determines whether the duty cycle increases of decreases for an increasing value from the quality
monitors while PWM mode determines whether the
STATUS output response is linear or logarithmic.
Logarithmic mode is useful when driving an LED
from the STATUS output so that the intensity or
color is proportional to the PWM duty cycle. The
design tool graph shows the configured response.
LUT Configuration
In operation, the iC-TW8 continuously calculates
the variable QM_ADAPT as
The sensor distortion lookup table (LUT) can be
enabled or disabled in the LUT Configuration tab. If
the LUT is not used, the remainder of the LUT Configuration tab may be ignored. See Using the LUT
on page 34 for information on configuring the LUT.
QM_ADAPT  moffs moffc mgain mphase
CFG Block
where moffs, moffc, mgain, and mphase are values
between 0 (total adaption < adaption quality threshold) and 255 (total adaption ≥ adaption quality
threshold) of the Sin channel offset, Cos channel
offset, gain match, and phase adaption quality monitors respectively. Between the quality threshold level and the fault level, moffs, moffc, mgain, and
mphase are proportional to the total cumulative
amount of adaption of the respective parameter as
shown in the design tool graphs.
QM_ADAPT is the sum of these four values and
thus indicates the relative quality (amount) of parameter adaption. QM_ADAPT is a component of
the PWM signal that drives the STATUS output (pin
19) for external quality monitoring; it may also be
read directly from the VAR block in internal
memory via the serial ports (see Programmer’s Reference). When QM_ADAPT reaches 255, an adaption fault is activated.
Copyright © 2011–2013 iC-Haus
The CFG Block tab shows the complete iC-TW8
configuration (as determined by the preceding tabs)
as stored in the CFG Block in internal memory (see
Programmer’s Reference). CFG Block register values are shown in decimal, hexadecimal, and binary
as a reference for troubleshooting.
GUI Hex
The GUI Hex tab shows the complete iC-TW8 configuration (as determined by the preceding tabs) in
the format used by the Graphical User Interface
software Hex Editor. After using the design tool to
configure the iC-TW8, type these values into the
corresponding address locations in the GUI Hex Editor tab to transfer the configuration to the actual
device.
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC25/36
Auto Calibration
Once the iC-TW8 has been configured, the signal
path must be calibrated to determine proper values
for gain, offset correction, gain match, and phase
correction. This is most easily done using the Auto
Calibration feature of the iC-TW8 to automatically
determine optimum values for these parameters. Alternatively, initial parameter values may be written
to the parameter registers using the serial interface
and allowed to adapt. The adapted parameter values
must then be written to the EEPROM for use after
subsequent startups.
Auto calibration is initiated by pulling CALIB (pin
5) to DVSS. A pushbutton switch connected between CALIB and circuit ground (as shown in Figure 8 on page 10) is an easy way to achieve this in
series production. With CALIB held low, provide
sensor input of a few hundred Sin/Cos cycles and
the iC-TW8 “tunes” the analog gain, analog offset
correction, digital offset correction, digital gain
match, and digital phase correction parameters to
provide lowest error and jitter in the interpolated AB
outputs.
The sensor input used for auto-calibration does not
need to be at a constant frequency nor must it be
unidirectional. A rotary encoder can be calibrated by
moving the disc or wheel back and forth by a few
revolutions; a linear encoder by moving the sensor
back and forth on the scale by a few centimeters.
After providing sufficient input signals, release the
CALIB input (it is pulled high by an internal pull-up
resistor) and the iC-TW8 immediately stores all calibration parameters in the external EEPROM. These
auto-calibrated values are then used for subsequent
startups (see page 15).
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC26/36
Calibrating the Z Signal Path
No Index Sensor
The Z signal path must be calibrated to generate a Z
output pulse at the proper location within a sensor
input cycle and that is properly synchronized to the
AB outputs. The Z output is configured using the
design tool, but the Z signal path must be calibrated
manually, if required. When the post-AB divider is
not used and the interpolation factor, inter, is an integer, once the Z signal path is calibrated, one and
only one Z output pulse, aligned as desired with the
A and B outputs, is produced per revolution. For
example, if zwidth = 1 (edge), OUTA is high at
zpos, and OUTB is low at zpos, the following output
synchronization results.
The simplest case is where no index sensor is used.
This is useful in applications where the incremental
sensor produces only one input cycle per revolution,
such as with an on-axis analog Hall effect device. In
this case, one Z output is produced for every input
cycle and it is only necessary to program the desired
location, length, and synchronization of the Z output
pulse using the design tool (see page 21).
1 Input Cycle
SIN
COS
OUTA
OUTB
OUTZ
Figure 22: ABZ Output Synchronization
If the post-AB divider is used or the actual interpolation, inter, is not an integer (see page 18), the configured ABZ output synchronization is not maintained at every Z output. See page 27 for information on using the Z output with the post-AB divider.
In general, there are three cases, depending on the
type of index sensor connected to the ZERO inputs
of the iC-TW8:
1. No index sensor.
2. Digital output index sensor.
3. Analog output index sensor.
These three cases each are discussed separately following.
Copyright © 2011–2013 iC-Haus
360°
Sensor
Input
Angle
zpos
0°
OUTZ
zwidth
OUTA
OUTB
zpos
Figure 23: Z Output with No Index Sensor
In the design tool Z Configuration tab, answer
“Yes” to the “Use Index Sensor?” question even
though the ZERO inputs are tied to AVDD and
AVSS (see page 13) and set the Desired ZERO
Threshold to 0. Configure the remaining parameters
as required and load the complete CFG bock to the
iC-TW8 using the GUI or serial port commands (see
Programmer’s Reference).
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC27/36
Digital Output Index Sensor
In applications where the incremental sensor produces multiple input cycles per revolution—such as
optical and MR magnetic sensors—an index sensor
must be connected to the ZERO inputs to qualify or
“gate” the Z output to ensure one and only one Z
output pulse per revolution. In this case, it is necessary to align the Z output pulse with the ZERO input
signal and to program the desired length and synchronization of the Z output pulse using the design
tool (see page 21).
1 Input Cycle
SIN
COS
360°
Sensor
Input
Angle
zpos
0°
Z Gating
Signal
OUTZ
zwidth
OUTA
OUTB
zpos
Figure 24: Z Output With Digital Index Sensor
First, connect a digital output index sensor to the iCTW8 as explained on page 13. Then, in the Z Configuration tab of the design tool, set the Desired
ZERO Threshold to 0, configure the remaining parameters as required (see page 21), and load the
complete CFG bock to the iC-TW8 using the GUI
or serial port commands (see Programmer’s Reference).
To calibrate zpos, it is necessary to observe both the
Z output and the internal Z gating signal simultaneously. To observe the internal gating signal, enable
Index Gating Test Mode in the Test Mode pane of
the Settings tab in the GUI or set the Enable Z Test
Mode bit (ztest) in the RB_TEST1 register in the
RB Block of internal memory using serial port
Copyright © 2011–2013 iC-Haus
commands (see Programmer’s Reference). This
forces the internal Z gating signal onto OUTA (pin
18), as shown following, where it can be observed
using an oscilloscope.
Internal Z pulse,
once per input cycle
ZERO+
Delay
OUTZ
ZERO–
OUTA
Figure 25: Observing the Z Gating Signal
Calibrate the Z signal path by incrementing
MAIN_ZPOS (the zpos location within an input cycle) until the Z output is centered within the Z gating signal, as shown in Figure 24. MAIN_ZPOS can
be accessed using the GUI or by writing to the
MAIN_ZPOS register in the CFG block in internal
memory via the serial ports (see Programmer’s Reference). Finally, disable Index Gating Test Mode in
the Test Mode pane of the Settings tab in the GUI or
reset the Enable Z Test Mode bit (ztest) in the
RB_TEST1 register and then store the updated
MAIN_ZPOS register value to EEPROM using a
Write All command via one of the serial ports or the
Write EEPROM button in the GUI.
In general, the synchronization of the index gating
signal to the Sin and Cos input signals is fixed. It is
determined by the physical alignment of the incremental and Z tracks on the encoder disc or wheel
and the physical alignment of the incremental and
index sensors to each other. Since these physical
alignments cannot typically be easily adjusted, it is
important that they be carefully controlled from unit
to unit to allow interchangeability of encoder wheels
and sensors in series production.
To guarantee one and only one Z output pulse per
revolution, the ZERO input signal from the index
sensor must be at least as wide as the desired width
of the Z output pulse and no longer than two input
cycles minus the width of the Z output pulse under
all operating conditions. Specifically,
zwidth[]  indexwidth[]  720  zwidth[]
where indexwidth[°] is the width of the index sensor
signal in input cycle degrees.
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC28/36
For example, assume it is desired to have the Z output pulse centered within the input cycle. In this
case, zpos should be set to a nominal value of
zpos[]  180 
zwidth[]
2
and the ZERO input signal must be approximately
physically aligned (in-phase) with the COS– input.
As shown in Figure 26, the Z gating signal will meet
the index width requirement if its transitions fall
anywhere in the gray areas of the waveform.
Analog Output Index Sensor
In applications where the incremental sensor produces multiple input cycles per revolution—such as
optical and MR magnetic sensors—an index sensor
must be connected to the ZERO inputs to qualify or
“gate” the Z output to ensure one and only one Z
output pulse per revolution. In this case, it is necessary to set the switching threshold of the Z signal
path comparator, align the Z output pulse with the Z
gating signal, and program the desired length and
synchronization of the Z output pulse using the design tool (see page 21).
1 Input Cycle
1 Input Cycle
SIN
0°
90°
COS
180°
270°
360°
Internal
Z Pulse
SIN
COS
360°
Sensor
Input
Angle
Z
Gating
Signal
zpos
OUTZ
zwidth
zpos
Figure 26: Digital Index Sensor Example
0°
Z Gating
Signal
OUTZ
zwidth
OUTA
Any deviations from ideal synchronization of the
index signal to the COS– signal due to production
tolerances can then be compensated by adjusting the
nominal zpos value, if necessary.
OUTB
zpos
Figure 27: Z Output With Analog Index Sensor
First, connect an analog output index sensor to the
iC-TW8 as explained on page 13. Then, in the Z
Configuration tab of the design tool, set the initial
Desired ZERO Threshold to 0, configure the remaining parameters as required (see page 21), and
load the complete CFG bock to the iC-TW8 using
the GUI or serial port commands.
To calibrate the ZERO threshold level, it is necessary to observe the internal Z gating signal. To observe the internal gating signal, enable Index Gating
Test Mode in the Test Mode pane of the Settings tab
in the GUI or set the Enable Z Test Mode bit (ztest)
in the RB_TEST1 register in the RB Block of internal memory using serial port commands (see ProCopyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC29/36
grammer’s Reference). This forces the internal Z
gating signal onto OUTA (pin 18), as shown following, where it can be observed using an oscilloscope.
zth
Internal Z pulse,
once per input cycle
ZERO+
Delay
OUTZ
ZERO–
OUTA
Figure 28: Observing the Z Gating Signal
Set the Z comparator switching threshold, zth, by
adjusting the value of MAIN_Z.th to produce a single pulse at the Z gating signal output (OUTA) as
shown.
Analog
Index Sensor
Signal
zth
Z Gating
Signal
Figure 29: Setting the Z Comparator Threshold
Variable MAIN_Z.th can be accessed using the GUI
or by writing to the MAIN_Z register in the CFG
block in internal memory via the serial ports (see
Programmer’s Reference).
Analog sensors often have side lobes on their output
signals as shown in Figure 29. It is important that
these side lobes not cross the comparator threshold
under any operating condition otherwise multiple Z
outputs may result.
To calibrate zpos, it is necessary to observe both the
Z output and the internal Z gating signal simultaneously. Calibrate zpos by incrementing MAIN_ZPOS
(the zpos location within an input cycle) until the Z
output is centered within the Z gating signal, as
shown in Figure 27. MAIN_ZPOS can be accessed
using the GUI or by writing to the MAIN_ZPOS
register in the CFG block in internal memory via the
serial ports (see Programmer’s Reference). Finally,
disable Index Gating Test Mode in the Test Mode
pane of the Settings tab in the GUI or reset the Enable Z Test Mode bit (ztest) in the RB_TEST1 register and then store the updated MAIN_ZPOS register
value to EEPROM using a Write All command via
one of the serial ports or the Write EEPROM button
in the GUI.
In general, the synchronization the of analog index
sensor signal to the Sin and Cos input signals is
fixed. It is determined by the physical alignment of
the incremental and Z tracks on the encoder disc or
wheel and the physical alignment of the incremental
and index sensors to each other. Since these physical alignments cannot typically be easily adjusted, it
is important that they be carefully controlled from
unit to unit to allow interchangeability of encoder
wheels and sensors in series production.
To guarantee one and only one Z output pulse per
revolution, the width of Z gating signal as set by zth
must be at least as wide as the desired width of the Z
output pulse and no longer than two input cycles
minus the width of the Z output pulse under all operating conditions. Specifically,
zwidth[]  indexwidth[]  720  zwidth[]
where indexwidth[°] is the width of the Z gating
signal in input cycle degrees.
The Z comparator switching threshold, zth, has a
range of ±300mV in ±20mV steps (see Figure 28).
However, since the ZERO input amplifier has a
fixed gain of 8, the actual switching threshold range
referenced to the ZERO input signal level is
±37.5mV in steps of 2.5mV.
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC30/36
For example, assume it is desired to have the Z output pulse centered within the input cycle. In this
case, zpos should be set to a nominal value of
zpos[]  180 
zwidth[]
2
and the analog index sensor signal must be roughly
in-phase with the COS– input. As shown in Figure
30, the Z gating signal will meet the index width
requirement if its transitions fall anywhere in the
gray areas of the waveform.
1 Input Cycle
SIN
0°
90°
180°
COS
270°
Using Serial-Only Output Mode
The iC-TW8 contains a 32-bit sensor position (angle) counter that can be accessed through either of
the serial ports. Instantaneous sensor velocity can
also be accessed via the serial ports. While the serial
ports can be used to read position and velocity in all
output modes, serial-only output mode removes the
maximum AB output frequency limit, fab, allowing
higher sensor speeds. Enter Serial for the Output
Mode in the General Configuration tab of the design
tool and the A, B, and Z outputs are disabled.
Serial-only output mode is not explicitly handled in
the design tool, although the design tool may still be
used for iC-TW8 configuration. See the iC-TW8
Programmer’s Reference for information on the serial ports, the 32-bit position variable POS, and the
sensor velocity variable VEL in the WM block in
internal memory.
360°
Analog
Index Sensor
Signal
zth
Z Gating
Signal
Internal
Z Pulse
OUTZ
zwidth
zpos
Figure 30: Analog Index Sensor Example
Any deviations from ideal synchronization of the
index signal to the COS– signal due to production
tolerances can then be compensated by adjusting the
nominal zpos value, if necessary.
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC31/36
Using PWM Output Mode
As an alternative to the standard AB quadrature output, the iC-TW8 can provide a pulse-width modulated (PWM) output proportional to sensor angle.
This is useful as a direct digital interface between
the interpolator and a subsequent microcontroller or
FPGA in imbedded control applications. Enter
PWM for the Output Mode in the General Configuration tab of the design tool. The A and B outputs
(pins 18 and 17 respectively) become the differential PWM output; the Z output (pin 16) remains unchanged.
cycles. The clamped configuration is useful for single-turn absolute applications where there is only
one Sin/Cos input cycle per revolution.
An external first or second order low-pass filter can
be used to convert the PWM output to a voltage,
which in turn can be sampled by an ADC. Since the
PWM output is generated by a first order deltasigma modulator (DSM), a second order filter is
recommended. However, a first order analog RC
filter may be sufficient in simple applications.
OUTA
OUTA
PWM+
OUTB
PWM–
OUTZ
OUTZ
OUTB
R
ADC
C
OUTZ
iC-TW8
iC-TW8
Figure 31: PWM Output Mode
Selecting PWM output mode in the design tool reveals the PWM configuration selections. Enter the
desired frequency for the PWM output; the design
tool shows the closest actual frequency available
using the selected crystal. Finally, select whether the
PWM output is clamped or not.
Microcontroller
with built-in ADC
Figure 33: Analog Low-Pass PWM Filter
Alternatively, the PWM output can be directly sampled and digitally filtered by a microcontroller.
FPGA, or PLD. In this case, enable the CLOCK and
FRAME outputs in the General Configuration tab of
the design tool. The CLOCK output (pin 6) can then
be used to synchronously sample the PWM output.
1 Input Cycle
SIN
COS
OUTA
GP Input
CLOCK
GP Input
OUTZ
0°
90°
180°
270°
360°
iC-TW8
Microcontroller,
FPGA, or PLD
100%
PWM Output
(Not Clamped)
0%
100%
PWM Output
(Clamped)
0%
Figure 34: Digitally Sampling the PWM Output
This allows an all-digital decimation filter to be implemented. Since a first order DSM is used to generate the PWM output, a second order restructuring
filter is required for best signal-to-noise performance. As with the analog filter, however, a first
order filter may be sufficient for many applications.
Figure 32: PWM Output Clamp
The typical configuration is not clamped, in which
case the PWM output duty cycle represents the angle of the sensor Sin/Cos inputs over multiple input
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC32/36
Using the Post-AB Divider
The iC-TW8 includes an optional divider after the
internal AB output generation that can be used to
reduce (divide) the configured resolution by a factor
of 1–32. This post-AB divider is useful when the
desired output resolution is not an integer multiple
of the input resolution.
AB Generator
Post-AB Divider
OUTA
OUTB
Divide by 2 shown.
OUTZ
Figure 35: Post-AB Divider
When using the rotary encoder design tool to configure the iC-TW8, the post-AB divider is automatically enabled if necessary. The AB Configuration
tab in the design tool calculates the minimum divider necessary to achieve the desired output resolution
using the configured input resolution. This minimum value may be overridden if necessary by entering a divider override factor.
The post-AB divider is also useful to allow a complete range of output resolutions to be achieved using a single input resolution. For example, with an
input resolution of 128 Sin/Cos cycles per revolution, only binary output resolutions can be achieved
without using the post-AB divider. As shown in cell
B49 of the AB Configuration tab of the design tool,
resolutions between 128 and 2,097,152 CPR in increments of 32 CPR can be achieved with this configuration. The actual resolutions available in this
configuration (128, 160, 192, 224, 256, etc.) are
shown in the All Resolutions tab in the design tool.
Entering a divider override factor of 16 in this configuration provides an actual divider of 16 and reduces the resolution increment to 2 CPR. Now, all
even resolutions between 8 and 131,072 CPR may
be achieved. Increasing the divider override factor
to 32 allows all integer resolutions (4, 5, 6, 7, 8,
etc.) between 4 and 65,536 to be achieved using an
input resolution of 128 Sin/Cos cycles per revolution.
As shown in Figure 35, the Z output bypasses the
post-AB divider. Therefore, any configured synchronization of the Z output to the A and B outputs
is lost when using the post-AB divider.
For example, with an input resolution of 24 Sin/Cos
cycles per revolution, it is impossible to achieve an
output resolution of 16,384 AB cycles per revolution (CPR) without the post-AB divider since
4 16384 24 is not an integer (see page 18). However, entering these values into the design tool gives
a minimum divider value of 3 and an effective interpolation, intereff, of 682.66667. Thus, an output
resolution of 16,384 CPR is possible with an input
resolution of 24 by using the post-AB divider.
Note that the maximum speed and maximum adaption speed are inversely proportional to the post-AB
divider value. Higher post-AB divider values produce lower maximum speed and maximum adaption
speed. These speed values are shown in the AB
Configuration tab of the design tool.
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC33/36
Tuning the Internal Oscillator
The iC-TW8’s internal oscillator has a nominal frequency of 20 MHz with 5V supplies and 16 MHz
with 3.3V supplies. However, manufacturing tolerances and changes in temperature can cause large
variations in the actual internal oscillator frequency
of any given device.
The clock tuning value in the MAIN_CLOCK.freq
variable allows tuning the frequency of the internal
oscillator. In addition, the clock divider value in the
MAIN_CLOCK.div variable allows dividing the
oscillator frequency by 1, 2, or 4. These two parameters allow setting the internal oscillator of any specific device to the desired frequency. The
MAIN_CLOCK register can be accessed using the
serial ports (see Programmer’s Reference) or via the
Settings tab in the GUI.
To observe the internal oscillator output, enable Internal Oscillator Test Mode in the Test Mode pane
of the Settings tab in the GUI or set the Enable
Clock Test Mode bit (adctest) in the RB_TEST1
register in the RB Block of internal memory using
serial port commands (see Programmer’s Reference). This forces fcore/2 onto the FRAME output
(pin 8), as shown below, where it can be observed
using an oscilloscope or a frequency counter.
MAIN_CLOCK.div
Internal
Oscillator
Clock
Divider
Clock
Tuning
Value
fcore
÷2
FRAME
MAIN_CLOCK.freq
Figure 36: Internal Oscillator Tuning
First, set the clock divider to the desired value, usually 1 (MAIN_CLOCK.div = 3), and the clock tuning value to its lowest value (MAIN_CLOCK.freq =
0). Increment the clock tuning value until the desired oscillator frequency is obtained, remembering
that the output frequency on the FRAME pin is half
Copyright © 2011–2013 iC-Haus
the actual oscillator frequency. Finally, disable Internal Oscillator Test Mode in the Test Mode pane
of the Settings tab in the GUI or reset the Enable
Clock Test Mode bit (adctest) in the RB_TEST1
register and then store the updated MAIN_CLOCK
register value to EEPROM using a Write All command via one of the serial ports or the Write
EEPROM button in the GUI.
Typical internal oscillator frequency of the iC-TW8
with 5V supplies and a clock divider of 1 at room
temperature (20°C) is shown below. Other clock
divider values produce appropriately scaled-down
frequencies.
Typical Internal Oscillator Frequency
Clock
FRAME Output
fcore
Tuning
Frequency
Frequency
Value
[MHz]
[MHz]
0
10.6
21.2
1
11.0
22.0
2
11.5
23.0
3
11.9
23.8
4
12.5
25.0
5
13.0
26.0
6
13.6
27.2
7
14.3
28.6
8
15.1
30.2
9
15.8
31.6
10
16.8
33.6
11
17.7
35.4
12
18.9
37.8
13
20.2
40.4
14
21.6
43.2
15
23.3
46.6
Note that the nominal oscillator frequency is
achieved with a clock tuning value of 0 and that the
range of the clock tuning value allows setting the
internal oscillator frequency above the maximum
allowed for proper operation of the device (shown in
red). Setting the internal oscillator frequency higher
than the specified maximum may result in undefined
operation.
In general, set the internal oscillator frequency as
close to—but not greater than—the maximum frequency for the supply voltage used (32 MHz at 5V,
24MHz at 3.3V). The temperature coefficient of the
internal oscillator is negative, so oscillator frequency decreases with rising temperature and increases
with decreasing temperature. In applications where
low temperature operation is expected, the room
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC34/36
temperature oscillator frequency should be reduced
accordingly. See Electrical Characteristics in the iCTW8 data sheet for the actual value of the oscillator’s temperature coefficient.
Using the LUT
The iC-TW8 contains a 64-byte sensor distortion
look-up table (LUT) that can be used to apply an
arbitrary correction function to the calculated sensor
position (angle). To use the LUT, the correction
values must first be calculated and loaded into the
table using the design tool, the GUI software, or
commands sent via the serial ports. Then the LUT
must be enabled by setting ADPT_CFG.lut = 1 in
the CFG block in internal memory. When the LUT
is enabled, the maximum SPI port clock frequency
is reduced to fcore/4.If ADPT_CFG.lut = 0, the
LUT is bypassed and no correction is applied.
COS
1 Input Cycle
SIN
COS
360°
Sensor
Input
Angle
0°
14-bit Sensor
Position (Angle)
SIN
The simplest LUT is a null table, where all values
are zero. This is equivalent to bypassing the LUT
and applies no correction to the sensor signal, but
serves as a starting point for understanding LUT
operation.
127
LUT
0
Values
ATAN
LUT
1
0
14-bit Corrected
Sensor Position
(Angle)
ADPT_CFG.lut
–127
360°
LUT
Output
Angle
Figure 37: Sensor Distortion LUT
The LUT divides the sensor Sin/Cos input cycle into
64 segments of 5.625° each and the table values define a 64-point piecewise linear correction curve.
Correction values for sensor angles within a LUT
table segment are linearly interpolated between the
two table values on either end of the segment. In
operation, the calculated correction value is added to
the sensor angle.
0°
Figure 38: Null LUT
A constant LUT is one in which all the values are
the same. This adds a constant phase shift to the
sensor angle, shifting the 0° position left for positive
LUT values and right for negative values.
LUT table values have a range of ±127. The actual
correction applied to the 14-bit sensor angle is 4
times the table value, giving the LUT a correction
range of
4  127
 360  11.16
16384
The resolution of the LUT values is
4
 360  0.088  5.3 arc minutes
16384
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC35/36
1 Input Cycle
SIN
COS
the unused harmonic. The design tool shows the resultant angular error due to the distortion and the
residual error left after correction. The residual angular error is due to the finite (8 bit) resolution of
the LUT.
For example, if FFT analysis of a particular sensor
showed 2% second harmonic distortion at 0° phase
shift and 1% third order harmonic distortion at 180°
phase shift, the following angular error results.
360°
Sensor
Input
Angle
LUT
Output
Angle
0°
127
LUT
0
Values
–127
Figure 39: Constant LUT
A constant LUT is useful in single turn absolute applications such as synchronous AC motor commutation where the feedback signal must be aligned to
the motor poles. For example, to shift the interpolator 0° position 3.8° to the right, the constant LUT
value is calculated as

3.8 16384

 43
360
4
More complex LUTs require careful FFT measurement of sensor distortion. When sensor distortion
harmonics are known, the design tool can be used to
calculate a LUT that corrects for up to two sensor
harmonics which are identical on both Sin and Cos
input channels.
Figure 40: Sensor Distortion
The design tool shows that this sensor distortion
produces peak angular error of 1.88 input cycle degrees. After correction by the LUT, 0.04° (15.76 arc
minutes) of angular error remain.
The GUI LUT tab in the design tool shown the calculated LUT as a graph and LUT values. Save the
GUI LUT tab as a .csv file for direct import into the
GUI software. The LUT entries are also copied into
the GUI Hex tab of the design tool.
In the LUT Configuration tab of the design tool,
enter up to two sensor distortion harmonic to be corrected. The harmonic number, amplitude in percent,
and phase in degrees are required. To correct for
only one distortion harmonic enter 0 amplitude for
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com
iC-TW8 16-BIT SIN/COS INTERPOLATOR reliminar
p
Serial Configuration Mode
y
Jan 9, 2013 Page SC36/36
Revision History
Date
April 19, 2012
Notes
First release
Pages affected
All
April 30, 2012
Added sections from Calibrating the Z Signal Path to end.
26–35.
Nov 22, 2012
Formal corrections of header layout; update of disclaimer
All
Jan 9, 2013
Z output can only be synchronized to AB outputs if post-AB divider
not used and inter is an integer.
Reference GUI Test Modes in Calibrating the Z Signal Path and
Tuning the Internal Oscillator sections, etc.
17, 18, 21.
17, 27, 29, 33.
iC-Haus expressly reserves the right to change its products and/or specifications. An info letter gives details as to any amendments and additions made to
the relevant current specifications on our internet website www.ichaus.com/infoletter; this letter is generated automatically and shall be sent to registered
users by email.
Copying – even as an excerpt – is only permitted with iC-Haus' approval in writing and precise reference to source.
iC-Haus does not warrant the accuracy, completeness or timeliness of the specification and does not assume liability for any errors or omissions in these
materials.
The data specified is intended solely for the purpose of product description. No representations or warranties, either express or implied, of
merchantability, fitness for a particular purpose or of any other nature are made hereunder with respect to information/specification or the products to
which information refers and no guarantee with respect to compliance to the intended use is given. In particular, this also applies to the stated possible
applications or areas of applications of the product.
iC-Haus conveys no patent, copyright, mask work right or other trade mark right to this product. iC-Haus assumes no liability for any patent and/or other
trade mark rights of a third party resulting from processing or handling of the product and/or any other use of the product.
Copyright © 2011–2013 iC-Haus
http://www.ichaus.com