Infineon Technologies 的 TLE4998 Manual 规格书

L“ mneon
Sense & Control
User’s Manual
Rev. 1.3, 2018-02
TLE4998
Configuration and Calibration of Linear Hall Sensor
Edition 2018-02
Published by
Infineon Technologies AG
81726 Munich, Germany
© 2018 Infineon Technologies AG
All Rights Reserved.
Legal Disclaimer
The information given in this document shall in no event be regarded as a guarantee of conditions or
characteristics. With respect to any examples or hints given herein, any typical values stated herein and/or any
information regarding the application of the device, Infineon Technologies hereby disclaims any and all warranties
and liabilities of any kind, including without limitation, warranties of non-infringement of intellectual property rights
of any third party.
Information
For further information on technology, delivery terms and conditions and prices, please contact the nearest
Infineon Technologies Office (www.infineon.com).
Warnings
Due to technical requirements, components may contain dangerous substances. For information on the types in
question, please contact the nearest Infineon Technologies Office.
Infineon Technologies components may be used in life-support devices or systems only with the express written
approval of Infineon Technologies, if a failure of such components can reasonably be expected to cause the failure
of that life-support device or system or to affect the safety or effectiveness of that device or system. Life support
devices or systems are intended to be implanted in the human body or to support and/or maintain and sustain
and/or protect human life. If they fail, it is reasonable to assume that the health of the user or other persons may
be endangered.
®
TLE4998
User’s Manual
Table of Contents
User’s Manual 3 Rev. 1.3, 2018-02
Table of Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2 TLE4998 Signal Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3 TLE4998 Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.1 Programmer Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2 Programming Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.2.1 Communication Scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.2.2 Command Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.2.3 Data Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.2.4 Interface Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.3 Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.4 EEPROM Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.5 Programming Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.5.1 Readout of the EEPROM Content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.5.2 Setting the EEPROM Content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.5.3 Calculation of Bits to Erase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.5.4 Calculation of Bits to Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.5.5 Margin Voltage Check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4 Configuration & Calibration Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.1 Magnetic Field Range - R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.2 Gain Setting - G . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.3 Offset Setting - OS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.4 Low-Pass Filter - LP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.5 Clamping - CH, CL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.6 Interface Timing Setup - Prediv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.7 SENT/SPC Frame Settings - F . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.8 SPC Trigger Mode - Prot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
4.9 Temperature Compensation - TL, TQ & TT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5 SENT/SPC Checksum Calculation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
6 Calibration of TLE4998 Temperature Compensation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
6.1 Integrated Temperature Polynomial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
6.2 Application Sensitivity Polynomial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
6.3 Determination of Sensitivity Polynomial from Measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
6.4 Calculation of Final Temperature Compensation Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
6.4.1 Algorithm for Finding the Optimum Temperature Coefficient Set . . . . . . . . . . . . . . . . . . . . . . . . . . 29
6.4.2 Example Implementation Code for Temperature Calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
6.5 Usage of Infineon’s Temperature Calibration Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
7 Calibration of TLE4998 Output Characteristic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
7.1 Two-Point Calibration Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
7.2 Two-Point Calibration Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
7.2.1 Calibration with Application Readout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
7.2.2 Calibration without Application Readout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Table of Contents
@
TLE4998
User’s Manual
Scope
User’s Manual 4 Rev. 1.3, 2018-02
1Scope
This document is valid for all TLE4998 variants and derivates. It gives a detailed description of the configuration
and calibration procedure, which is recommended to configure the TLE4998 for optimum accuracy in a sensing
application.
2 TLE4998 Signal Processing
The TLE4998 uses a full digital signal processing concept. Analog values from the Hall probe are directly
converted to raw digital signals by the Hall ADC and then compensated and processed in the digital signal
processing unit (DSP) using configuration parameters stored in the EEPROM, temperature data acquired by an
integrated temperature sensor and stress data acquired by an integrated stress sensor. A configurable second-
order temperature polynomial is implemented to compensate the thermal reduction of the remanent magnetic flux
of a permanent magnet used in a position sensing application. Additionally, an application-specific output
characteristic can be set by configuring the EEPROM parameters Gain and Offset.
Figure 2-1 Signal Flow Diagram of the TLE4998
Figure 2-1 shows the signal flow diagram for temperature compensation and output characteristic in the DSP, and
the influence of the relevant configuration parameters stored in the EEPROM. The Hall signal is processed in the
following sequence of steps:
1. The analog Hall signal is converted by the Hall ADC, which operates at the configured magnetic range setting.
2. The digital value is filtered by a digital low-pass filter, which operates at a configurable filter frequency given
by the “LP filter”-setting. The output of the filter is stored in the HADC register.
3. The HADC value is multiplied by the temperature compensation polynomial. The first order (TL) and second
order (TQ) coefficients of the polynomial are configurable. The third order coefficient (TT) is fixed.
4. The value is multiplied by the stress compensation coefficient and the result is stored in the HCAL register.
The integrated stress compensation is pre-configured by Infineon and does not require any user adaption.
5. The HCAL value is multiplied by the configured gain value.
6. The configured offset value is added to the HCAL value.
7. The digital Hall value is clamped according to the configured upper and lower clamping limits. The output value
of the clamping stage is stored in the DOUT register.
8. An output protocol is generated from the resulting DOUT value and transmitted on the OUT pin.
Stored in
EEPROM
Memory
+
A
D
Hall
Sensor
Limiter
(C l am p)
Out
X
Range LP
Protocol
Generation
Offset
Gain
x
A
D
Stress
Sensor
Clamping Low
Clamping High
A
D
Temperature
Compensation
TADC TCAL
Temperature
Sensor
Norm-
alize T-Polynomial
TL
TT
TQ
HADC
HCAL
DOUT
Stress
Comp.
@
TLE4998
User’s Manual
TLE4998 Programming
User’s Manual 5 Rev. 1.3, 2018-02
3 TLE4998 Programming
3.1 Programmer Connection
Figure 3-1 shows the connection of the TLE4998 to a programmer. The pins VDD and OUT of the sensor IC are
used for the digital programming interface as described in Table 3-1 (See datasheet of corresponding TLE4998
type for pinout).
Note: It is possible to sequentially program multiple sensors that share the same supply voltage connection, as
long as they do not share the same OUT connection as well.
Figure 3-1 Connection of TLE4998 to Programmer
Table 3-1 Pin Functions for Programming Interface
Pin Programming Function
TST Test pin (no functionality, connection to GND is recommended)
VDD Programming interface clock
GND Ground
OUT Programming interface data I/O and V
optional
VDD
I/O 1
I/O 2
GND
47n
4n7
47n
4n7
PROGRAMMER
TLE
4998x
OUT
VDD
GND
application module
TLE
4998x
OUT
VDD
GND
2k2
2k2
@
TLE4998
User’s Manual
TLE4998 Programming
User’s Manual 6 Rev. 1.3, 2018-02
3.2 Programming Interface
3.2.1 Communication Scheme
The digital programming interface uses specific frames, which can have one of the two following functions:
Command frames contain a specific task (e.g. read/write data, select EEPROM programming etc.) and a
corresponding address
Data frames contain a 16 bit data value sent to or received from the device - these frames can only follow a
proper command frame for reading or writing data
A valid frame has the following properties:
A frame consists of 21 bits in total
A bit is shifted in or out via the output line with a rising clock edge on the supply line
A frame always starts and ends with a '1' (frame bits)
The LSB of a frame transmitted to the sensor is shifted in first
The LSB of a frame replied by the sensor is shifted out first
The whole frame sent to the device, including frame bits, is protected with an even positional and an odd
positional parity bit
The first frame sent has to be a valid command to activate the interface mode and it has to be sent within 19ms
after power up. As an additional protection, the device does not deactivate its output stage during this transmission
(using 21 clock pulses) as shown in Figure 3-2. This means that the interface driver of the programmer needs to
overrule the open drain output stage of the sensor during this initial transmission.
Figure 3-2 First Frame Transmission to the Sensor
Attention: Overruling Vout requires a strong driver on the programmer, since the OUT line must be driven
to low levels close to GND for any “0”-bit and close to VDD for any “1”-bit in order to ensure a
proper communication with the sensor.
After the first frame, to avoid additional power consumption in the output stage of the device, the internal driver is
deactivated in programming mode while the sensor is receiving a frame. It is activated again after completion of
the transmission. This is illustrated in Figure 3-3.
Figure 3-3 Further Frame Transmisson from the Programmer to the Sensor (Write Access)
VDD
Vout
LSB MSB
during first transmission, the output stage is still switched on
power up interface
activated
internal buffer on
VDD
Vout
LSB MSB
during transmission the buffer is switched off internal buffer on
interface
active
interface
active
Z
protocol
output
leading driver
off pulse
protocol
output
@
TLE4998
User’s Manual
TLE4998 Programming
User’s Manual 7 Rev. 1.3, 2018-02
In case of a wrong command or data frame, the interface is immediately locked and the device falls back to its
normal application mode. The read access to the device is triggered by clock pulses on the supply line as shown
in Figure 3-4. The timing of read and write accesses is described in Chapter 3.2.4.
Figure 3-4 Frame Transmisson from the Sensor to the Programmer (Read Access)
3.2.2 Command Frame
The structure of a command frame is shown in Figure 3-5. Available commands are given in Table 3-2. The parity
bits PE (bit 17) and PO (bit 18) have to be set in the follwing way (bit 0 is the LSB, bit 20 is the MSB):
bit0 XOR bit2 XOR bit4 XOR …. XOR bit20 = 0
bit1 XOR bit3 XOR bit5 XOR …. XOR bit19 = 0
Figure 3-5 Command Frame Structure
Table 3-2 List of Available Commands
Command Bits (MSB...LSB) Function
0H000000 Leave programming mode1)
1H000001 Single data readout from given address without increment (sensor
response: one data frame)
2H000010 Continuous data readout from given address without increment
(continuous readout can only be stopped by external supply reset)
3H000011 Data readout from given address with increment (readout finishes
when address “xxx111B” is reached)
9H001001 Single data write to given address without increment (followed by
one data frame)
AH001010 Continuous data write without increment (finished by sending
another command frame)
BH001011 Data write to given address with increment (followed by multiple data
frames; finishes at address “xxx111B” or by sending another
command frame)
CH001100 Enable EEPROM write mode (programs “1”-bits)1)2)
DH001101 Enable EEPROM erase mode (programs “0”-bits)1)2)
EH001110 Enable EEPROM margin check mode (programs level check)1)3)
FH001111 EEPROM refresh (update EEPROM registers)1)
VDD
Vout
LSB MSB
digital data readout, buffer in I/O mode
internal buffer on internal buffer on
tailing driver on
pulse
@
TLE4998
User’s Manual
TLE4998 Programming
User’s Manual 8 Rev. 1.3, 2018-02
3.2.3 Data Frame
The structure of a data frame sent to the device is shown in Figure 3-6. The parity bits PE (bit 17) and PO (bit 18)
have to be set in the same way as for the command frame (bit 0 is the LSB, bit 20 is the MSB):
bit0 XOR bit2 XOR bit4 XOR …. XOR bit20 = 0
bit1 XOR bit3 XOR bit5 XOR …. XOR bit19 = 0
Figure 3-6 Data Frame to Sensor
Figure 3-7 shows a the structure data frame received from the sensor. Instead of a zero bit followed by two parity
bits, the least significant 3 bits of the address used for the readout are transmitted together with the data. This
allows to check the plausibility of the received data.
Figure 3-7 Data Frame from Sensor
3.2.4 Interface Specification
Table 3-3 specifies the operating conditions of the programming interface, which shall not be exceeded in order
to ensure correct operation of the TLE4998 during programming. All specified parameters refer to these operating
conditions, unless otherwise noted.
1) not to be followed by any data frame
2) followed by application of a programming pulse
3) followed by application of a margin voltage level before the last clock pulse falling edge
Table 3-3 Operating Range of the Programming Interface
Parameter Symbol Values Unit Note / Test Condition
Min. Typ. Max.
Supply voltage VDD 4.5 – 5.5 V
Supply buffer capacitance CS47 1000 nF VDD to GND
Load capacitance CL 8 nF OUT to GND
Ambient temperature TPRG 10 60 °C during programming
Number of programming
cycles
NPRG 10 Cycles Programming is allowed only at
start of lifetime
Programming time tPRG 100 ms For complete memory
Programming start time tPRG_START 19 ms To start programming mode, a
first read command shall be sent
within this time window after
power-up
1 0 P
O
P
EDATA (16bit) 1
MSB (bit 20) LSB (bit 0)
@ L/ W
TLE4998
User’s Manual
TLE4998 Programming
User’s Manual 9 Rev. 1.3, 2018-02
The specification for timings and electrical levels of the programming interface is shown in Table 3-4. The meaning
of the timing parameters is illustrated in Figure 3-8.
Figure 3-8 Frame Timing
In order to permanently store a programmed parameter set to the EEPROM, the “EEPROM erase” and “EEPROM
write” commands shall be sent, followed by a programming pulse. Figure 3-9 shows the timing of the programming
pulse.
Figure 3-9 Programming Pulse Timing
Table 3-4 Electrical and Timing Specification of the Programming Interface
Parameter Symbol Values Unit Note / Test Condition
Min. Typ. Max.
VDD clock high level VDD,CLKHI 9 10 11 V specification of VDD operating
range does not apply to clock
VDD clock low level VDD,CLKLOW 4.8 5 5.2 V
OUT data out high level VO,OHIGH V refer to open-drain specification in
data sheet
OUT data out low level VO,OLOW ––– V
OUT data in high level VO,IHIGH 50% 100% of VDD
OUT data in low level VO,ILOW -0.2 0.0 0.1 V
OUT data input current IO-5 – 5 mA
VDD clock high time tCH 2.5 50 – µs
VDD clock low time tCL 2.5 50 – µs
Data in setup time tSU 1.5 2.0 µs to rising VDD
Data in hold time tHLD 2.3 3.0 µs after rising VDD
Data out settling time tSET 1.0 1.7 µs after rising VDD
Time between frames tMIN 10.0 – µs
VDD
Vout
LSB MSB
tcl
tch
tsu thldtdel thlm
LSB
tset tset
tmin
init
frame
data read
frame
VDD
Vout
MSB
t
HLD
LSB
t
MIN
next command
frame
t
MIN
erase or write
command frame
(buffer stays off)
V
prog
pulse
V
O,PROG
/t
(rise)
V
O,PROG
/t
(fall)
t
PROG,WR
or t
PROG,ER
t
HLD
@
TLE4998
User’s Manual
TLE4998 Programming
User’s Manual 10 Rev. 1.3, 2018-02
After programming, a margin check is necessary to test the stability of the programmed data. The margin check
is initiated by an “EEPROM margin check” command followed by a margin voltage.
Figure 3-10 Margin Check Timing
The margin voltage is varied during subsequent steps within the threshold margin level range. A too low margin
voltage value indicates a too short programming pulse duration or a too low programming voltage. A too high
margin voltage value indicates a too long programming pulse duration or a too high programming voltage.
Table 3-5 gives the electrical and timing specifications of the programming pulse and the margin voltage check
procedure.
Table 3-5 Electrical and Timing Specification of the Programming Pulse and Margin Voltage
Parameter Symbol Values Unit Note / Test Condition
Min. Typ. Max.
OUT data input current IO0 5 mA during application of
programming pulse or margin
voltage
OUT margin level VO,MARG -0.1 – 7 V
Threshold margin level VTH 2.23 – 4.5
0.4
V
V
check “1”
check “0”
Margin setup time tMARG 200 – µs
VDD slope for margin VDD/t -10 – -1.25 V/µs
OUT program level VO,PROG 19.2 19.3 19.4 V
OUT program slope
(rise)1)
1) faster slope may lead to permanent damage of the EEPROM.
VO,PROG/t 2 V/µs time to reach VO,PROG shall not
exceed 50 µs
OUT program slope
(fall)1)
VO,PROG/t -10 V/µs
OUT write time tPROG,WR 9.9 10.0 10.1 ms
OUT erase time tPROG,ER 79.2 80.0 80.8 ms
VDD
Vout
MSB LSB
t
MARG
next command
frame
t
MIN
margin
command frame
(buffer stays off)
V
dd
/t
(fall)
t
HLD
apply V
O,MARG
and
capture EEPROM data
t
MIN
t
HLD
@
TLE4998
User’s Manual
TLE4998 Programming
User’s Manual 11 Rev. 1.3, 2018-02
3.3 Register Map
Table 3-6 shows the internal registers of the TLE4998 (compare also Figure 2-1).
Note: To access the registers (except STATUS, HADC, TADC, SADC, DOUT and TEST), the digital signal
processing unit (DSPU) has to be disabled first via the TEST register.
DOUT
This value is the 16 bit unsigned decimal result applied to the internal protocol generation for the open drain output
stage. It includes the clamping limits if programmed. The value range is from decimal 0 to 65535.
HCAL
This register contains the temperature- and stress-compensated magnetic measurement as a 16bit signed value.
This value is in the range of +/- 30000.
TCAL
This register contains a 16 bit signed value and delivers the current junction temperature of the device. The
junction temperature in °C is calculated from the register value by: TJ= (T_CAL/16+48) [°C].
SCAL
This register contains the calibrated stress measurement value used for the stress compensation.
HADC
This register contains a 16bit signed value that corresponds to the raw Hall cell measurement value. This value is
in the range of +/- 20000.
TADC
This register contains a 15bit unsigned raw temperature value.
SADC
This register contains the raw stress measurement value.
Table 3-6 TLE4998 Register Map
Address Symbol Function R/W
00HDOUT Data out value (16bit unsigned, with clamping) read only
05HHCAL Calibrated Hall value read only
06HTCAL Calibrated temperature value, including reference temperature T0read only
07HSCAL Calibrated stress value read only
0AHHADC Uncalibrated Hall ADC value read only
0BHTADC Uncalibrated temperature ADC value read only
0CHSADC Uncalibrated stress ADC value read only
0FHSTATUS Status register read only
10H...1AHEEPROM EEPROM registers (see Chapter 3.4) read/write
1BHTEST Test mode register read/write
@
TLE4998
User’s Manual
TLE4998 Programming
User’s Manual 12 Rev. 1.3, 2018-02
STATUS
The content of the status register is shown in Figure 3-11.
Figure 3-11 Status Register
CRC ok has to be “1”, otherwise the DSP built-in self-test was failed and the device is defective
LOCKED has to be “0” as long as the lockbits of the EEPROM are not programmed. This bit changes to “1” in
the next power cycle (external reset) after locking the device.
perr_adr has to be on address FH (“1111B”), otherwise it shows the first EEPROM address where the internal
parity check failed.
perr_more has to be “0”, otherwise more than one EEPROM address has a parity error.
perr_col has to be “0”, otherwise one or more EEPROM columns have a parity error.
HWver contains the hardware version. It is “000B” for the TLE4998P (all versions) and the TLE4998S3, S4 and
S3C. It is “001B” for the TLE4998C3, C4, C8(D) design step B1 and the TLE4998S8(D).It is “002B “ for the
TLE4998C8(D) design step B2.
ROMSIG has to be 15H, otherwise the DSP ROM is not valid and the device is defective.
For a sensor that is operating correctly, the status register is equal to A83DH (TLE4998P all types, TLE4998S3,
S4, and S3C), A93DH (TLE4998C all types with design step B1, TLE4998S8(D)) and AA3DH (TLE4998C8(D)
design step B2), respectively.
TEST
The content of the test register is shown in Figure 3-12. All bits are “0” after reset. All bits not described or used
shall be kept at “0”.
Figure 3-12 Status Register
“Margin zero on” is used to select the margin test mode. It is set to ‘1’ for testing the EEPROM threshold
voltages of cells programmed to ‘0’, and it is set to ‘0’ for testing the EEPROM threshold voltages of cells
programmed to ‘1’.
“FEC off” switches off the error correction of the EEPROM. This bit has to be set when reading the EEPROM
content.
“REF off” switches off the automatic (cyclic) refresh performed by the DSP to actualize the EEPROM registers
from the EEPROM cells. This bit has to be set when writing new values to the EEPROM registers.
“DSP off” switches off the signal processing unit (DSP). This bit has to be set prior to access the internal
register values via the interface (HCAL, TCAL, SCAL and EEPROM).
“DSP stop” has to be set prior to switching the DSP off (as a separate command) before reading out the
calculated data HCAL, TCAL, and/or SCAL. This allows the DSP to finish the calculation of the current sample
and all values in the RAM are consistent.
15 14 13 12 11 10 9876543210
LSB
ROMSIG4
perr_more
LOCKED
perr_adr0
CRC ok
perr_adr1
perr_adr2
perr_adr3
HWver0
ROMSIG3
ROMSIG2
ROMSIG1
ROMSIG0
HWver1
HWver2
perr_col
15 14 13 12 11 10 9876543210
LSB
FEC off
DSP stop
REF off
DSP off
0
0
0
0
PROTOCOL off
Margin zero on
0
0
0
0
0
MSB
0
@
TLE4998
User’s Manual
TLE4998 Programming
User’s Manual 13 Rev. 1.3, 2018-02
“PROTOCOL off” can be set together with “DSP off ”, if it is desired to get correct protocol output after “DSP
off” and “PROTOCOL off” are cleared again. Otherwise, a reset is necessary to get correct protocol output.
3.4 EEPROM Map
The EEPROM registers 10H to 1AH mirror the content of the TLE4998’s EEPROM. The EEPROM map is different
for the TLE4998 types.
Figure 3-13 shows the content of the EEPROM registers for the TLE4998P (all types) and the TLE4998S3, S4,
and S3C.
Figure 3-14 shows the content of the EEPROM registers for the TLE4998C (all types) and the TLE4998S8(D).
Figure 3-13 EEPROM Map of TLE4998P (all types), TLE4998S3, S4 and S3C.
The fields marked in red are configuration parameters for the sensor hardware. Those marked in yellow are used
by the DSP algorithms for signal processing. The blue and cyan fields are parity bits for the corresponding lines
and columns used by the internal forward error correction (FEC). All parameters are unsigned integer values. The
reserved fields marked in white shall not be changed.
The functional description of the configuration and calibration parameters in the EEPROM map is given in
Chapter 4.
Parity Bits
The parity Pc of each column (including the precalibration ranges) is even for even bit positions (bit0=LSB, bit2,
bit4, ... bit14) and the parity Pc for all odd columns (bit1, bit3, ... bit13) is odd, except for the parity Pc for the column
at bit15 (MSB), which is even. The parity Pl of every EEPROM line (address 0x11 ... 0x1A) is always odd.
Note: Before accessing the EEPROM, the forward error correction (FEC) shall be disabled via the TEST register.
ADDR Description 15141312111009080706050403020100
10
H
Parityofeachcolumn P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
11
H
IClockhigh,clamping
high/low P
l
LH CH‐ Clampinghigh(bit6...0) CL‐ Clampinglow(bit6...0)
12
H
Gain P
l
G‐ Gain(bit14...0)
13
H
Offset P
l
OS‐ Offset(bit14...0)
14
H
ID,precalstatus,
predivider,TQvalue P
l
ID PC Prediv
(bit3...0)
TQ‐ quadratictemperature
coefficient(bit7...0)
15
H
Bandwidth,Range,TL
value,IClocklow P
l
BW
(bit2...0)
R
(1...0)
TL‐ lineartemperaturecoefficient
(bit8...0) LL
16
H
TTvalue
(donotmodify) P
l
Reserved‐ donotmodify TT‐ cubictemp.
coefficient(4...0)
17
H
Reserved P
l
Reserved‐ donotmodify
18
H
Reserved P
l
Reserved‐ donotmodify
19
H
Reserved P
l
Reserved‐ donotmodify
1A
H
Reserved P
l
Reserved donotmodify
@
TLE4998
User’s Manual
TLE4998 Programming
User’s Manual 14 Rev. 1.3, 2018-02
Precalibration Bit
The “PC” bit in line 14H shall be set by the system integrator when changing the EEPROM content of the device
for the first time. Thereby it is possible to identify devices which still have precalibrated settings from the Infineon
factory calibration (PC = 0 means precalibrated device, PC = 1 means user calibrated device).
Lock Bits
LH and LL are lock bits (LH locked if '1', LL locked if '0'). If either LH, LL or both are set to locked state, the
programming interface cannot be accessed anymore.
Figure 3-14 EEPROM Map of TLE4998C (all types), and TLE4998S8(D).
3.5 Programming Flow
The programming flow diagram in Figure 3-15 shows the procedural steps to setup the EEPROM content and to
program new values (EEP_NEW). EEP_PROG means the intermediate values stored in the EEPROM register
and EEP_OLD means the initial (old) EEPROM content.
Flowchart description:
1. Switch on the device.
2. Send an initial command (status register readout):
Check that the status is valid (Status register = A83DH, A93DH or AA3DH compare Chapter 3.3), if not, do not
continue and check the failure.
3. Set the register bits FECoff = 1, DSPoff = 1, REFoff = 1 (allows EEPROM access).
4. Read out the EEPROM content to an array EEP_OLD (store also for reference purpose and traceability)
In parallel: Prepare the data that shall be programmed as an array EEP_NEW.
5. Calculate the bits to be cleared from EEP_OLD to EEP_NEW as EEP_PROG array.
6. Write the EEPROM content from the EEP_PROG array to the EEPROM registers
ADDR Description 15141312111009080706050403020100
10
H
Parityofeachcolumn P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
P
c
11
H
IClockhigh,clamping
high/low P
l
LH CH‐ Clampinghigh
(bit5...0)
CL‐ Clamping
low(bit5...0) F(1...0)
12
H
Gain P
l
G‐ Gain(bit14...0)
13
H
Offset P
l
OS‐ Offset(bit14...0)
14
H
ID,precalstatus,
predivider,TQvalue P
l
ID PC Prediv
(bit3...0)
TQ‐ quadratictemperature
coefficient(bit7...0)
15
H
Bandwidth,Range,TL
value,IClocklow P
l
BW
(bit2...0)
R
(1...0)
TL‐ lineartemperaturecoefficient
(bit8...0) LL
16
H
Prot,
TTvalue(donotmodify) P
l
Prot
(1...0)
Reserved‐ donotmodify TT‐ cubictemp.
coefficient(4...0)
17
H
Reserved P
l
Reserved‐ donotmodify
18
H
Reserved P
l
Reserved‐ donotmodify
19
H
Reserved P
l
Reserved‐ donotmodify
1A
H
Reserved P
l
Reserved donotmodify
®
TLE4998
User’s Manual
TLE4998 Programming
User’s Manual 15 Rev. 1.3, 2018-02
7. Send the EEPROM erase command
Apply an erase programming pulse on the output pin (see Chapter 3.2.4).
8. Calculate the bits to be set from EEP_OLD to EEP_NEW as EEP_PROG array.
9. Write the EEPROM content from the EEP_PROG array to the EEPROM registers.
10. Send the EEPROM write command
Apply a write programming pulse on the output pin (see Chapter 3.2.4).
11. Send the EEPROM margin command
During the falling edge of the margin pulse on VDD, apply VO,MARG on the output (see Chapter 3.2.4).
12. Read out the EEPROM content to the array EEP_PROG.
13. Verify the EEP_PROG data against EEP_NEW to check the programming (no bits flipped)
Optionally, steps 11 to 13 can be looped to find the exact margin threshold voltage.
If the margin threshold voltage is too low, do not continue and check the failure.
14. Check the status register again.
@ % OJ: v EEP om <- eepinew="" v="" eeflold="" eepine="">
TLE4998
User’s Manual
TLE4998 Programming
User’s Manual 16 Rev. 1.3, 2018-02
Figure 3-15 Programming Flow
The following chapters give a more detailed description of individual steps of the programming flow:
3.5.1 Readout of the EEPROM Content
The following steps are used to readout the EEPROM and store the content in an array:
1. Send a block read command (EEPROM data readout: Command 03H, Address: 10H).
2. Read the first 8 data words of the EEPROM and store it in an array.
3. Send a read command (EEPROM data readout: Command 01H, Address: 18H).
EEP_OLD
EEP_NEW
EEP_OLD
EEP_NEW
Readout could be
looped for several
margin voltages
(starting from a very
high voltage e.g. 5V) to
find the margin level of
the EEPROM
EEPROM
programming
INIT-CMD:
cmd=0x01
adr=0x0F
READ DATA
V
dd
= 5V
Status
register OK?
ILLEGAL
STATUS:
analyse
problem
NO
CMD (write):
cmd=0x09
adr=0x1B
DAT: 0x06C0
(DSP, FEC,
REF off)
CMD (b read)
cmd=0x03
adr=0x10
RD. B-DATA
CMD (read)
cmd=0x01
adr=0x18
READ DATA
CMD (read)
cmd=0x01
adr=0x19
READ DATA
CMD (read)
cmd=0x01
adr=0x1A
READ DATA
11x 16bit
> EEP_OLD <
Store this initial
dataset (allows
later restore)
> EEP_NEW <
Given by TC
setup and/or 2P
algorithms etc.
User input, TC
setup algorithm or
2P calibration
algorithm setup
Create erase
pattern*2x 11x 16bit
CMD (bwrite)
cmd=0x0b
adr=0x10
WR. B-DATA
CMD (write)
cmd=0x09
adr=0x18
WR. DATA
CMD (write)
cmd=0x09
adr=0x19
WR. DATA
CMD (write)
cmd=0x09
adr=0x1A
WR. DATA
CMD
(EEP erase):
cmd=0x0D
adr=0x00
V
prog
PULSE
Create write
pattern°
2x 11x 16bit
CMD
(EEP write):
cmd=0x0C
adr=0x00
V
prog
PULSE
CMD(marg.):
cmd=0x0E
adr=0x00
V
marg
+V
dd
-ramp
CMD (b read)
cmd=0x03
adr=0x10
RD. B-DATA
CMD (read)
cmd=0x01
adr=0x18
READ DATA
CMD (read)
cmd=0x01
adr=0x19
READ DATA
CMD (read)
cmd=0x01
adr=0x1A
READ DATA
content =
EEP_NEW ?
ILLEGAL
MARGIN
READ:
analyse
problem
NO
FINISHED
margin higher
required limit ?
NO
V
dd
= 0V (off)
* Erase pattern: For each line I from 0x10 to 0x1A:
EEP_PROG[i] = INVERT ((EEP_OLD[i] XOR EEP _NEW[i]) AND EEP_OLD[i])
(as precal areas must not be changed, the bits in this areas must remain ‚1')
° Write pattern: For each line I from 0x10 to 0x1A:
EEP_PROG[i] = (EEP_OLD[i] XOR EEP_NEW[i]) AND EEP_NEW[i]
(as precal areas must not be changed, the bits in this areas must remain ‚0')
Optionally do a last status
readout (adr. 0x0F) to check
the IF mode is still active
and the device is ok.
CMD (bwrite)
cmd=0x0b
adr=0x10
WR. B-DATA
CMD (write)
cmd=0x09
adr=0x18
WR. DATA
CMD (write)
cmd=0x09
adr=0x19
WR. DATA
CMD (write)
cmd=0x09
adr=0x1A
WR. DATA
@
TLE4998
User’s Manual
TLE4998 Programming
User’s Manual 17 Rev. 1.3, 2018-02
4. Read the 9th data word of the EEPROM and store it in an array.
5. Send a read command (EEPROM data readout: Command 01H, Address: 19H).
6. Read the 10th data word of the EEPROM and store it in an array.
7. Send a read command (EEPROM data readout: Command 01H, Address: 1AH).
8. Read the 11th data word of the EEPROM and store it in an array.
3.5.2 Setting the EEPROM Content
The following steps are used to set the EEPROM content with data from an array:
1. Send a block write command (EEPROM data write: Command 0BH, Address: 10H).
2. Send the first 8 data words from the array to the EEPROM.
3. Send a write command (EEPROM data write: Command 09H, Address: 18H).
4. Send the 9th data word from the array to the EEPROM.
5. Send a write command (EEPROM data write: Command 09H, Address: 19H).
6. Send the 10th data word from the array to the EEPROM
7. Send a write command (EEPROM data write: Command 09H, Address: 1AH).
8. Send the 11th data word from the array to the EEPROM.
3.5.3 Calculation of Bits to Erase
The EEP_PROG array for the erase procedure is calculated from the old EEPROM content EEP_OLD and the
new EEPROM content EEP_NEW in the following way:
For each data word i: EEP_PROG[i] = INVERT ((EEP_OLD[i] XOR EEP_NEW[i]) AND EEP_OLD[i])
Table 3-7 shows an example of a calculated erase mask.
3.5.4 Calculation of Bits to Write
The EEP_PROG array for the write procedure is calculated from the old EEPROM content EEP_OLD and the new
EEPROM content EEP_NEW in the following way:
For each data word i: EEP_PROG[i] = (EEP_OLD[i] XOR EEP_NEW[i]) AND EEP_NEW[i]
Table 3-7 shows an example of a calculated erase mask.
3.5.5 Margin Voltage Check
The threshold voltage of EEPROM cells is dependent on the programming voltage and programming pulse length.
For reliable programming the programming pulse has to be kept within the specification (Table 3-5) at the sensor
interface. The margin command can be used to check the threshold voltages of the programmed cells:
To check the cells programmed to '1', a voltage VO,MARG is applied after the margin check command (Command
EH). For EEPROM cells with a threshold voltage smaller than the applied VO,MARG, a '0' will be stored to the
Table 3-7 Erase Array Example
EEP_OLD 0101010101010101
EEP_NEW 0101110001010101
EEP_PROG 1111111011111111
Table 3-8 Write Array Example
EEP_OLD 0101010101010101
EEP_NEW 0101110001010101
EEP_PROG 0000100000000000
®
TLE4998
User’s Manual
TLE4998 Programming
User’s Manual 18 Rev. 1.3, 2018-02
EEPROM registers, for those with a higher threshold voltage, a '1' will be written. By sweeping the applied VO,MARG,
the actual threshold voltages of each EEPROM cell can be identified.
In order to check the threshold voltages of EEPROM cells programmed to ‘0’, it is necessary to activate the “Margin
zero on” bit in the TEST register before sending the margin check command. Also for the ‘0’ cells, the actual
threshold voltages of each EEPROM cell can be identified, by sweeping the applied VO,MARG,.
@
TLE4998
User’s Manual
Configuration & Calibration Parameters
User’s Manual 19 Rev. 1.3, 2018-02
4 Configuration & Calibration Parameters
This chapter describes the configuration and calibration parameters that can be set in the EEPROM of the
TLE4998 (see EEPROM map, Chapter 3.4)
4.1 Magnetic Field Range - R
The working range of the magnetic field defines the input range of the A/D converter. It is always symmetrical
around the zero field point. Any two points in the magnetic field range can be selected to be the end points of the
output value. The output value is represented within the range between the two points.
In the case of fields higher than the range values, the output signal may be distorted.
4.2 Gain Setting - G
The overall sensitivity is defined by the range and the gain setting. The output of the ADC is multiplied by the Gain
value. The Gain value is given by:
(4.1)
4.3 Offset Setting - OS
The offset value corresponds to an output value with zero field at the sensor. The offset value can be calculated by:
(4.2)
Note: The offset value can be set outside the output range of the sensor. This feature can be used to map a
magnetic range apart from 0 mT (for example -200 mT to -150 mT) to the full output range.
Table 4-1 Range Setting
Parameter R Range Nominal Range in mT1)
1) Absolute accuracy of range values is not specified.
3Low ±50
12)
2) Setting R = 2 is not used, internally changed to R = 1.
Mid ±100
0 High ±200
Table 4-2 Gain
Parameter Symbol Values Unit Note / Test Condition
Min. Typ. Max.
Gain range Gain - 4.0 3.9998 1)2)
1) For Gain values between -0.5 and +0.5, the numerical accuracy decreases.
To obtain a flatter output curve, it is recommended to select a higher range setting.
2) In 100 mT range, a gain value of +1.0 corresponds to typically 0.8%/mT (TLE4998P), or 32 LSB12/mT sensitivity. It is
recommended to do a final 2-point calibration of each IC within the application.
Gain quantization steps Gain 244.14 ppm Corresponds to 1/4096
4096/)16384(
=
GGain
1638
4
=
OSOUT
OS
TLE4998
User’s Manual
Configuration & Calibration Parameters
User’s Manual 20 Rev. 1.3, 2018-02
4.4 Low-Pass Filter - LP
A configurable digital low-pass filter is implemented at the output of the Hall ADC. The possible settings are shown
in Table 4-4. Figure 4-1 shows the filter characteristics as a magnitude plot for the settings 80 Hz to 1390 Hz (from
left to right). The update rate of the low-pass filter output is nominally 16 kHz.
Figure 4-1 DSP Input Filter (Magnitude Plot)
Table 4-3 Offset
Parameter Symbol Values Unit Note / Test Condition
Min. Typ. Max.
Offset range1)
1) Infineon pre-calibrates the samples at zero field to typically 50% output value in 100 mT range. It is recommended to do a
final 2-point calibration of each IC within the application.
OUTOS -16384 – 16383 LSB12 SENT/SPC
-400 399 %DY2)
2) DY = PWM duty cycle
PWM
Offset quantization steps OUTOS –1–LSB
12
Table 4-4 Low Pass Filter Setting
Parameter LP Nominal cutoff frequency in Hz (-3 dB point)
080
1240
2440
3640
4860
5 1100
6 1390
7Off
10
1
10
2
10
3
0
-6
-5
-4
-3
-2
-1
Magnitude (dB)
Frequency (Hz)
(ifiineon OUT CH
TLE4998
User’s Manual
Configuration & Calibration Parameters
User’s Manual 21 Rev. 1.3, 2018-02
4.5 Clamping - CH, CL
The clamping function is useful for separating the output range into an operating range and error ranges. If the
magnetic field is exceeding the selected measurement range, the output value OUT is limited to the clamping
values. Any value in the error range is interpreted as an error by the sensor counterpart.
Figure 4-2 shows an example in which the magnetic field range between Bmin and Bmax is mapped to duty cycles
between 16% and 84%.
Figure 4-2 Clamping Example
Clamping - TLE4998P (all types) and TLE4998S3, S4, and S3C:
Table 4-5 Low-Pass Filter
Parameter Symbol Values Unit Note / Test Condition
Min. Typ. Max.
Corner frequency variation f-20 +20 %
Table 4-6 Clamping
Parameter Symbol Values Unit Note / Test Condition
Min. Typ. Max.
Clamping low1)
1) For CL = 0 and CH = 127 the clamping function is disabled.
OUTCL 0 99.22 %DY2)
2) DY = PWM duty cycle
PWM
0 65032 LSB16 SENT
Clamping high1)3)
3) CYCLPWM < CYCLPWM mandatory.
OUTCH 0.78 100 %DY PWM
511 65535 LSB16 SENT
Clamping quantization steps4)
4) Quantization starts for CL at 0%, or 0 LSB12 and for CH at 100% or 4095 LSB12.
OUTCx –0.78–%DYPWM
–512–LSB
16 SENT
0
B
min
B (mT)
B
max
65535
Error range
Error range
Operating range
OUT
CH
OUT
(LSB
16
)
OUT
CL
55295
10240
@
TLE4998
User’s Manual
Configuration & Calibration Parameters
User’s Manual 22 Rev. 1.3, 2018-02
The clamping values for TLE4998P (all types) and TLE4998S3, S4, and S3C are calculated by:
Clamping duty cycle low (deactivated if CL=0):
(4.3)
Clamping duty cycle high (deactivated if CH=127):
(4.4)
Clamping - TLE4998C (all types) and TLE4998S8(D):
The clamping values for TLE4998C (all types) and TLE4998S8(D) are calculated by:
Clamping duty cycle low (deactivated if CL=0):
(4.5)
Clamping duty cycle high (deactivated if CH=63):
(4.6)
4.6 Interface Timing Setup - Prediv
The Prediv parameter has different functionalities, depending on the used TLE4998 type. All timing settings are
subject to the internal RC oscillator frequency accuracy of ±20%.
Note: The implementation of the timing setup is different in the SENT types TLE4998S8(D) than in the TLE4998S3,
S4, and S3C.
PWM Frequency - TLE4998P (all types)
The nominal PWM frequency of the TLE4998P is calculated by:
(4.7)
Table 4-7 Clamping
Parameter Symbol Values Unit Note / Test Condition
Min. Typ. Max.
Clamping value low1)
1) For CL = 0 and CH = 63 the clamping function is disabled.
OUTCL 0 64512 LSB16 SENT,SPC
Clamping value high1)2)
2) OUTCL < OUTCL mandatory.
OUTCH 1023 65535 LSB16 SENT,SPC
Clamping quantization steps3)
3) Quantization starts for CL at 0 LSB12 and for CH at 4095 LSB12.
OUTCx 1024 – LSB16 SENT,SPC
1632
=
CLOUT
CL
11632)1(
+=
CHOUT
CH
1664
=
CLOUT
CL
11664)1(
+=
CHOUT CH
%201953
)1Prediv/(
±=
+=
HzOSC
OSCf
Clk
ClkPWM
@
TLE4998
User’s Manual
Configuration & Calibration Parameters
User’s Manual 23 Rev. 1.3, 2018-02
SENT Unit Time - TLE4998S3, S4, and S3C
The nominal unit time of the TLE4998S3, S4, and S3C is calculated by:
(4.8)
SENT/SPC Unit Time - TLE4998C (all types) and TLE4998S8(D)
The nominal unit time of the TLE4998C and TLE4998S8(D) is calculated by:
(4.9)
4.7 SENT/SPC Frame Settings - F
The parameter F is only available for the TLE4998C (all types), and the TLE4998S8(D). It controls the frame type
of the SENT/SPC protocol.
Table 4-8 Pre-divider Setting
Parameter Symbol Values Unit Note / Test Condition
Min. Typ. Max.
PWM output frequency fPWM 122 1953 Hz OSCclk...oscillator clock
Table 4-9 Pre-divider Setting
Parameter Symbol Values Unit Note / Test Condition
Min. Typ. Max.
SENT unit time tUNIT 2.0 – 4.0 μsClkUNIT=8 MHz1)
1) default setting Prediv = 11 for 3 µs nominal unit time. Useable range is 7 to 15.
Table 4-10 Pre-divider Setting
Parameter Symbol Values Unit Note / Test Condition
Min. Typ. Max.
SENT/SPC unit time tUNIT 2.0 3.88 μsClkUNIT=8 MHz1)
1) default setting Prediv = 8 for 3 µs nominal unit time.
Table 4-11 Frame Selection
Frame Type Parameter F Data Nibbles
16 bit Hall, 8 bit temperature 0 6 nibbles
16 bit Hall 1 4 nibbles
12 bit Hall, 8 bit temperature 2 5 nibbles
12 bit Hall 3 3 nibbles
%208
/)22Prediv(
±=
+×=
MHzClk
Clkf
UNIT
UNITUNIT
%208
/)16Prediv(
±=
+=
MHzClk
Clkf
UNIT
UNITUNIT
@
TLE4998
User’s Manual
Configuration & Calibration Parameters
User’s Manual 24 Rev. 1.3, 2018-02
4.8 SPC Trigger Mode - Prot
The parameter Prot is only available for the TLE4998C (all types). It controls the SPC trigger mode. The trigger
modes are described in the TLE4998C data sheet.
4.9 Temperature Compensation - TL, TQ & TT
The TLE4998 has an integrated third-order temperature compensation using the coefficients TL, TQ, and TT,
which is used to compensate the thermal drift of the Hall cell (pre-configured by Infineon).
The magnetic field strength of a magnet depends on the temperature. This material constant is specific for the
different magnet types. The temperature compensation paramters TL and TQ of the TLE4998 can be adapted to
compensate this temperature dependency of the magnet in the application. The TT value is fixed and cannot be
modified.
Three parameters are used for the application temperature compensation:
Reference temperature T0
A linear part (1st order) TC1
A quadratic part (2nd order) TC2
The detailed procedure to derive the optimum TL and TQ paramters for a a given magnet characteristic is
described in Chapter 6.
Table 4-12 SPC Trigger Mode Selection
Mode Parameter PMSB Parameter PLSB
Synchronous 0 No effect
Dynamic range selection 1 0
ID selection 1 1
Table 4-13 Temperature Compensation
Parameter Symbol Values Unit Note / Test Condition
Min. Typ. Max.
1st order coefficient TC1TC1-1000 2500 ppm/ °C 1)
1) Relative range to Infineon TC1 temperature pre-calibration, the maximum adjustable range is limited by the register-size
and depends on specific pre-calibrated TL setting, full adjustable range: -2441 to +5355 ppm/°C.
Quantization steps of TC1TC1 15.26 ppm/ °C
2nd order coefficient TC2TC2-4 4 ppm/ ° 2)
2) Relative range to Infineon TC2 temperature pre-calibration, the maximum adjustable range is limited by the register-size
and depends on specific pre-calibrated TQ setting, full adjustable range: -15 to +15 ppm/°C2.
Quantization steps of TC2TC2–0.119–ppm/ °C²
Reference temp. T0-48 – 64 °C
@ next N ibb
TLE4998
User’s Manual
SENT/SPC Checksum Calculation
User’s Manual 25 Rev. 1.3, 2018-02
5 SENT/SPC Checksum Calculation
For the TLE4998S and TLE4998C, the Checksum nibble of the SENT/SPC protocol is a 4-bit CRC of the data
nibbles including the status nibble. The CRC is calculated using a polynomial x4 +x3 + x2 + 1 with a seed value of
0101.
It is implemented as a series of XOR and shift operations as shown in the following flowchart:
Figure 5-1 CRC Calculation
A microcontroller implementation may use an XOR command plus a small 4-bit lookup table to calculate the CRC
for each nibble.
Figure 5-2 Example Code for CRC Generation
GENERATOR = 1101
SEED = 0101, use this
constant as old CRC
value at first call
Pre-initialization:
VALUE
xor SEED
xor only if MSB = 1
VALUE
SEED
0
<<1
GENPOLY
xor
VALUE xor
SEED
4x
CRC calculation
Nibble
next Nibble
// Fast way for any µC with low memory and compute capabilities
char Data[8] = {…}; // contains the input data (status nibble, 6 data nibble, CRC)
// required variables and LUT
char CheckSum , i;
char CrcLookup [16] = {0, 13, 7, 10, 14, 3, 9, 4, 1, 12, 6, 11, 15, 2, 8, 5};
CheckSum= 5; // initialize checksum with seed "0101"
for (i=0; i<7; i++) {
CheckSum = CheckSum ^ Data[i];
CheckSum = CrcLookup [CheckSum ];
}
; // finally check if Data[7] is equal to CheckSum
®
TLE4998
User’s Manual
Calibration of TLE4998 Temperature Compensation
User’s Manual 26 Rev. 1.3, 2018-02
6 Calibration of TLE4998 Temperature Compensation
A temperature compensation mechanism is implemented in the TLE4998 to account for thermal drift of the Hall
probe sensitivity and thermal reduction of the remanent magnetization of a permanent magnet used in a position
sensing application. Initially, the TLE4998 is pre-configured by Infineon to have a constant magnetic sensitivity
over temperature.
In case the TLE4998 is used to measure an absolute magnetic field, for example in a current sensing application,
then no additional adaption of the temperature compensation by the user is required.
If the TLE4998 is used in a position sensing application where it measures the magnetic field generated by a
moving permanent magnet, then it is typically desired that the output signal of the TLE4998 depend only on the
magnet position. In this case, a user adaptation of the temperature compensation is required to account for thermal
reduction of the magnet’s remanence. Therefore, the TLE4998 has to be configured to increase its sensitivity
accordingly with increasing temperature to compensate the thermal reduction of the remanence.
This temperature coefficient of the remanence depends on the chosen magnet material, so the temperature
compensation of the TLE4998 has to be adapted to the permanent magnet employed in the application.
6.1 Integrated Temperature Polynomial
The integrated temperature compensation of the TLE4998 uses a third order polynomial, as shown in
Equation (6.1).
(6.1)
with:
(6.2)
TJ is the junction temperature in °C. The coefficients TL, TQ, and TT are the linear, quadratic and cubic
temperature compensation coefficients, respectively. They are stored in the EEPROM and pre-configured by
Infineon for a constant magnetic sensitivity over temperature (see Chapter 3.4 for EEPROM map).
The coefficients TL and TQ can be adapted by the user to implement a compensation of the thermal reduction of
a magnet’s remanence. The coefficient TT is fixed to the value pre-calibrated by Infineon. It cannot be adapted.
6.2 Application Sensitivity Polynomial
In order to find the optimum TL and TQ parameters to minimized the position signal error due to the thermal
reduction of the magnet’s remanence, an application sensitivity polynomial has to be derived from a sensitivity
measurement in the application over temperature that describes the desired sensitivity factor as a function of
temperature (see Chapter 6.3). The application sensitivity polynomial is given by Equation (6.3).
(6.3)
TJ is the junction temperature in °C, TC1 (in ppm/°C) and TC2 (in ppm/°C2) are the first and second order
application temperature coefficients and T0 (in °C) is a reference temperature.
SDSP TCAL()1TL 160
8 8192
---------------------- TCAL
16
----------------
⎝⎠
⎛⎞
TQ 128
1024 8192
---------------------------- TCAL
16
----------------
⎝⎠
⎛⎞
2TT
32768 8192
------------------------------- TCAL
16
----------------
⎝⎠
⎛⎞
3
+++=
TCAL 16 TJ48()=
SApp TJ
() 1TC
1TJT0
()TC2TJT0
()
2
++=
@ \. ; i + I ,‘_‘<‘:‘ \‘r‘~‘i="" o;="" o="">
TLE4998
User’s Manual
Calibration of TLE4998 Temperature Compensation
User’s Manual 27 Rev. 1.3, 2018-02
Figure 6-1 Example thermal behavior of magnetic remanence M(T) and application sensitivity polynomial
Sapp(T) with reference temperature 48°C.
The reference temperature T0 is a degree of freedom that can be chosen by the user, such that the gain of the
TLE4998 that is configured in the EEPROM, applies at this reference temperature.
In case the calibration of the offset and gain for the output charateristic is done after the calibration of the
temperature compensation, the choice of T0 is not relevant. In this case, the gain at a specific temperature is
configured separately. A choice of T0 = 48°C is recommended for simplicity (to match the reference temperature
in the definition of TCAL in Equation (6.2)).
The application sensitivity polynomial SApp has to be determined in the application to approximately cancel the
temperature dependency of the remanence, as stated in Equation (6.4) and illustrated in Figure 6-1.
(6.4)
MR is the remanence of the permanent magnet as a function of temperature and TA is the ambient temperature in
the application that relates to the junction temperature TJ by Equation (6.5).
(6.5)
Rth is the thermal resistance of the TLE4998 as specified in the data sheet, U is the supply voltage and I is the
supply current.
After determining the application sensitivity polynomial SApp from a sensitivity measurement over temperature, the
sensor parameters TLfinal and TQfinal for the final sensor configuration have to be adapted to combine the
compensation of the Hall sensing element drift (given by the precalibrated values TLpre and TQpre) and the
cancellation of the thermal reduction of the magnet’s remanence (given by SApp), as stated in Equation (6.6).
(6.6)
SDSPfinal(TJ) is the integrated temperature polynomial given by the combination of Equation (6.1) and
Equation (6.2), with the final parameters TLfinal and TQfinal. SDSPpre(TJ) is the integrated temperature polynomial
with the pre-configured parameters TLpre and TQpre.
After determination of the application sensitivity polynomial coefficients and readout of the pre-configured TLpre,
TQpre, and TT parameters via the programming interface, the optimum TLfinal and TQfinal parameters have to be
derived from Equation (6.6) and programmed into the TLE4998.
0,925
0,950
0,975
1,000
1,025
1,050
1,075
-50 0 50 100 150
Rel. Change
T
J
(°C)
MR(T)
Sapp(T)
MR(T)*Sapp(T)
SApp TJ
()MRTA
()cons ttan
TJTARth UI()+=
SDSPfinal TJ
()SDSPpre TJ
()SApp TJ
()
@
TLE4998
User’s Manual
Calibration of TLE4998 Temperature Compensation
User’s Manual 28 Rev. 1.3, 2018-02
6.3 Determination of Sensitivity Polynomial from Measurement
For the determination of the Coefficients for the application sensitivity polynomial (Equation (6.3)) a measurement
of the temperature behavior of the sensor output in the application is recommended. A basic example for a position
sensing application using the TLE4998 and a moveable permanent magnet is shown in Figure 6-2.
In a setup that uses a permanent magnet, the magnetic field has a temperature dependency due to the thermal
reduction of the remanence. In order to determine the optimum sensitivity compensation behavior of the sensor in
to cancel this temperature dependency, the sensor’s output value shall be measured at different temperatures,
with the permanent magnet in a fixed position.
As the thermal reduction of the remanence depends mainly on the magnetic material used and has typically only
minor variations from sample to sample, a reference measurement on a number of application samples is typically
sufficient to determine a reference polynomial for the application in general, which is to be used for production. It
is typically not required to perform the described measurement over temperature for every individual sample.
Figure 6-2 Example Position Sensing Application
With the described setup, the following procedure is used to obtain the coefficients of the application sensitivity
polynomial:
Measure the sensor output for at least three different temperatures at a defined, fixed magnet position. The
magnetic flux densitiy at the sensor shall be non-zero at this given magnet position. It is recommended for best
accuracy of the calibration procedure to use a magnet position that leads to the highest possible magnetic flux
at the sensor, while still being inside the configured magnetic flux range (± 50 mT, ±100 mT, or ±200 mT).
For each data point, read the junction Temperature TJ
(i), and the DOUT(i) value via the programming interface.
For each data point, calculate the compensation sensitivity value S(i) from the DOUT(i) value and the output
value at zero field DOUT0, using Equation (6.7)
(6.7)
•Plot S
(i) as a function of TJ
(i) and apply a quadratic fit (cx2 + bx + a) which yields coefficients a, b and c (See
Figure 6-3).
B(T)
Movement
NS
TLE4998
Si() DOUT0
DOUT i() DOUT0
-------------------------------------------------=
@ / I ( )
TLE4998
User’s Manual
Calibration of TLE4998 Temperature Compensation
User’s Manual 29 Rev. 1.3, 2018-02
Figure 6-3 Example Polynomial Fit Procedure.
Derive the coefficients of the application sensitivity polynomial from the parameters a, b, and c obtained from
the quadratic fit using Equation (6.8) and Equation (6.9).
(6.8)
(6.9)
6.4 Calculation of Final Temperature Compensation Parameters
After determination of the application sensitivity polynomial Sapp, it is necessary to adapt the temperature
compensation paramters TL and TQ in the EEPROM such that the overall sensitivity of the TLE4998 shows the
desired increase over temperature to compensate for the thermal reduction of the magnet’s remanence in the
application.
6.4.1 Algorithm for Finding the Optimum Temperature Coefficient Set
For an optimum temperature compensation in the application, the set of coefficients TL and TQ have to be found
that best fulfill the condition stated in Equation (6.6). To find this parameter set, an error function ε(T) is defined
in that is minimized in an iterative procedure.
(6.10)
SDSPfinal(TJ) is the integrated temperature polynomial given by the combination of Equation (6.1) and
Equation (6.2), with the final parameters TLfinal and TQfinal. SDSPpre(TJ) is the integrated temperature polynomial
with the pre-configured parameters TLpre and TQpre. C is a constant to be varied in the iterative procedure.
y = 2,135E-06x
2
+ 6,550E-04x + 1,305E+00
1,26
1,28
1,30
1,32
1,34
1,36
1,38
1,40
1,42
1,44
-50 0 50 100 150
Sensitivity correction S(T
J
)
T
J
(°C)
S(i)
Quadratic fit
a=1.305,b=6.55E4°C1,c=2.135EC2
TC1
b2cT
0
⋅⋅+
abT
0cT
0
2
++
------------------------------------------=
TC2
c
abT
0cT
0
2
++
------------------------------------------=
εTJ
() SDSPfinal TJ
()
CS
DSPpre TJ
()Sapp TJ
()
----------------------------------------------------------------1=
®
TLE4998
User’s Manual
Calibration of TLE4998 Temperature Compensation
User’s Manual 30 Rev. 1.3, 2018-02
In a second step, the error function defined in Equation (6.10) is summed over the temperature range in finite
equidistant steps TJ
(i). For the computation, a step size of 10°C or less is recommended. Then, the parameters TL,
TQ, and the constant C are varied until the residual εrms in Equation (6.11) is minimized.
(6.11)
6.4.2 Example Implementation Code for Temperature Calibration
The following code example is done in Microsoft® Visual Basic® and can be adapted to any other programming
language.
Setup of global Variables
Precalibrated parameter set read from the sensor:
TL_pre (as stored in EEPROM)
TQ_pre (as stored in EEPROM)
TT (as stored in EEPROM)
Valid ranges are: TL_pre: 0...511; TQ_pre: 0...255; TT: 0...31.
Given user values in °C and ppm:
T0 (application sensitivity polynomial reference temperature)
TC1 (application sensitivity polynomial linear temperature coefficient)
TC2 (application sensitivity polynomial quadratic temperature coefficient)
Valid ranges are: T0_user: -50...80, TC1_user: -0.001...0.0025, TC2_user: -0.000004...0.000004.
Last but not least we have the new setup values, we initialize partly:
TL (used as sweep variable, needs no initialization)
TQ (used as sweep variable, needs no initialization)
Valid ranges are: TL: 0...511; TQ: 0...255;
Sensitivity Calculation Subroutines
The first function calculates the user polynomial at a given temperature T:
Private Function S_app(ByVal T) As Double
S_user = 1 + TC1 * (T - T0) + TC2 * (T - T0) ^ 2
End Function
The next function calculates the sensor DSP behaviour after precalibration at a given temperature T:
Private Function S_dsppre(ByVal T) As Double
S_dsppre = 1 + (TL_pre - 160) * (T - 48) / 8 / 8192
+ (TQ_pre - 128) * ((T - 48) ^ 2) / 1024 / 8192
- TT * ((T - 48) ^ 3) / 32768 / 8192
End Function
Finally, there is the calculation function for the DSP polynomial at a temperature T:
Private Function S_dsp(ByVal T) As Double
S_dsp = 1 + (TL - 160) * (T - 48) / 8 / 8192 +
(TQ - 128) * ((T - 48) ^ 2) / 1024 / 8192 -
TT * ((T - 48) ^ 3) / 32768 / 8192
End Function
For the algorithm we need the already explained error function:
εrms
1
N
----εTJ
i()
()()
2
i1=
N
=
®
TLE4998
User’s Manual
Calibration of TLE4998 Temperature Compensation
User’s Manual 31 Rev. 1.3, 2018-02
Private Function epsilon(ByVal T) As Double
epsilon = -1 + S_dsp(T) / (C * S_dsppre(T) * S_app(T))
End Function
Iteration Loop
The iteration loop looks through all TL and TQ values and check for the smallest rms error. It is done in two steps:
First it looks for a rough optimum point with a coarse step size of 10 for both parameters. In a second step it iterates
again using stepsize 1 around that point to find a refined optimum.
Rem --> Initialize temperature sweep parameters
T_min = -40
T_max = 150
T_step = 10
n = Math.Round((T_max - T_min) / T_step)
Rem --> Initialize variables to keep track of current optimum values
epsilon_rms_opt = 9999
TL_opt = 0
TQ_opt = 0
Rem =========================================================================
Rem --> Sweep in two runs, the coarse global and the fine local search
For Rounds = 1 To 2
Rem =====================================================================
Rem --> Initialize sweep parameters
Rem First round coarse, second round fine
If (Rounds = 1) Then
TL_lo = 0
TL_hi = 510
TL_step = 10
TQ_lo = 0
TQ_hi = 250
TQ_step = 10
ElseIf (Rounds = 2) Then
TL_lo = TL_opt - 9
TL_hi = TL_opt + 9
TL_step = 1
TQ_lo = TQ_opt - 9
TQ_hi = TQ_opt + 9
TQ_step = 1
End If
Rem =====================================================================
Rem --> TL sweep
For TL = TL_lo To TL_hi Step TL_step
Rem =================================================================
Rem --> TQ sweep
For TQ = TQ_lo To TQ_hi Step TQ_step
Rem =============================================================
®
TLE4998
User’s Manual
Calibration of TLE4998 Temperature Compensation
User’s Manual 32 Rev. 1.3, 2018-02
Rem --> Determine minimizing C by calculating average epsilon
epsilon_sum = 0
C = 1
For T = T_min To T_max Step T_step
epsilon_sum = epsilon_sum + epsilon(T)
Next
epsilon_mean = (epsilon_sum / n)
C = epsilon_mean + 1
Rem =============================================================
Rem --> Determine epsilon sum
epsilon_sum = 0
For T = T_min To T_max Step T_step
epsilon_sum = epsilon_sum + epsilon(T) ^ 2
Next
epsilon_rms = Math.Sqr(epsilon_sum / n)
Rem =============================================================
Rem --> Determine if new optimum parameters were found
If epsilon_rms < epsilon_rms_opt Then
epsilon_rms_opt = epsilon_rms
TL_opt = TL
TQ_opt = TQ
End If
Next
Next
Next
Rem =========================================================================
Rem --> Finally retrieve the best TL, TQ values stored during the sweep
TL_final = TL_opt
TQ_final = TQ_opt
After the iteration is complete, the values TLfinal and TQfinal contain the optimum values for TL and TQ. These
values shall be programmed into the sensor’s EEPROM.
6.5 Usage of Infineon’s Temperature Calibration Tool
For laboratory calibration purpose, Infineon provides a simple tool to determine the calibration parameters from
measurement data (see Figure 6-4).
The following sequence of steps is used for the temperature calibration the Infineon tool:
1. Measure the sensor’s DOUT and TCAL registers at a fixed magnet position for different temperatures as
described in Chapter 6.3, enter the TJ (in °C) and DOUT (16bit) values in the table fields marked in yellow (see
Figure 6-4, upper left side). For the readout of this data, the Infineon TLE4998 Evaluation Kit can be used.
2. The tool automatically calculates the corresponding Sensitivity correction values S from the entered TJ and
DOUT values according to Equation (6.7).
3. Based on the calculated S values, the tool performs a quadratic fit and calculates the Application Sensitivity
Polynomial parameters TC1 and TC2 (see Figure 6-4, upper right side).
@
TLE4998
User’s Manual
Calibration of TLE4998 Temperature Compensation
User’s Manual 33 Rev. 1.3, 2018-02
Figure 6-4 Infineon tool for temperature calibration, application sensitivity polynomial fit.
4. Readout the sensor’s preprogrammed TLpre and TQpre values and enter them in the corresponding table fields
marked in yellow (see Figure 6-5 upper left side). For the readout of this data, the Infineon TLE4998 Evaluation
Kit can be used.
5. The tool calculates the TLfinal and TQfinal parameters out of the entered TLpre and TQpre values, the (fixed) TT
value and the TC1 and TC2 coefficients determined in steps 1-3. For that, an automated script is used that
implements the procedure explained in Chapter 6.4. The calculated values TLfinal and TQfinal appear in the
corresponding table fields marked in green (see Figure 6-5 upper right side)
6. Program the calculated TLfinal and TQfinal values into the TLE4998 using the Infineon TLE4998 Evaluation Kit
or a suitable programmer tool.
For illustration purpose, the tool also displays graphs for the preprogrammed and final sensitivity polynomials,
SDSP,pre and SDSP,final, the application sensitivity polynomial Sapp and the product SDSP,pre*Sapp. Ideally, after
succesful calibration, SDSP,final should by approximately equal SDSP,pre*Sapp (compare Equation (6.6)).
The tool displays also the error that occurs due to imperfect matching of SDSP,final and SDSP,pre*Sapp. Typically, after
the calibration procedure, this error should be on the order of ±0.1%.
TLE4998
Temperature Compensation Tool
16.03.2015, Rev. 2.0
User Parameter Calculation
Legend:
iTJ(i) [°C] DOUT(i) [LSB16] S(i) y = a + bx + cx2yellow: user input
1 -40 58326 1,282 a = 1,31E+00 white: Excel formula
2 -20 58130 1,292 b = 6,55E-
04
[°C-1]green: VB script calc.
3 0 57802 1,309 c = 2,14E-
06
[°C-2]
4 25 57540 1,323
5 50 57212 1,340 Suser = 1 + TC1user(T-T0user) + TC2user(T-T0user)2
6 75 56688 1,370 T0user =
48
[°C] free parameter; 48°C is
7 100 56360 1,389 TC1user = 641[ppm/°C] recommended
8 120 55901 1,416 TC2user = 1,59[ppm/°C2]
TJ(i) [°C] and DOUT(i) shall be read from the sensor for each data point (TJ= TCAL/16 + 48)
y = 2,138E-06x
2
+ 6,548E-04x + 1,305E+00
1,26
1,28
1,30
1,32
1,34
1,36
1,38
1,40
1,42
1,44
-50 0 50 100 150
Sensitivity correction S(T
J
)
T
J
(°C)
S(i)
Quadratic fit
@ Vii/f N
TLE4998
User’s Manual
Calibration of TLE4998 Temperature Compensation
User’s Manual 34 Rev. 1.3, 2018-02
Figure 6-5 Infineon tool for temperature calibration, TL and TQ calculation.
New DSP Parameter Calculation
Input: T0
user
= 48 [°C] TL
final
and TQ
final
are calculated automatically
TL
pre
= 164 ( 0 to 511) TC1
user
= 6,41E-04 [°C
-1
]TL
final
= 207
TQ
pre
= 178 ( 0 to 255) TC2
user
= 1,59E-06 [°C
-2
]TQ
final
= 190
TT
pre
= 9 ( 0 to 31) TT
final
= 9
TL
pre
and TQ
pre
shall be read from the sensor via the programming interface
TT is fixed by Infineon to value 9
iT
J(i)
[°C] S
dsp,pre
S
app
S
dsp,final
S
dsp,pre
* S
app
Error (%)
1 -40 1,0636 0,9559 1,0170 1,0168 0,02
2 -20 1,0340 0,9638 0,9960 0,9965 -0,05
3 0 1,0145 0,9729 0,9863 0,9870 -0,07
4 25 1,0022 0,9861 0,9878 0,9882 -0,04
5 50 1,0001 1,0013 1,0015 1,0014 0,00
6 75 1,0053 1,0185 1,0241 1,0239 0,02
7 100 1,0146 1,0376 1,0526 1,0528 -0,02
8 120 1,0228 1,0544 1,0774 1,0784 -0,09
Error (%) is the deviation of S
dsp,final
from the product of S
dsp,pre
times S
app
0,90
0,95
1,00
1,05
1,10
-50 0 50 100 150
Sensitivity
T
J
(°C)
Sdsp,pre
Sapp
Sdsp,final
Sdsp,pre
* Sapp
@ 55555 DDDDDD
TLE4998
User’s Manual
Calibration of TLE4998 Output Characteristic
User’s Manual 35 Rev. 1.3, 2018-02
7 Calibration of TLE4998 Output Characteristic
In a position sensing application, the maximum and minimum magnetic field sensed by the TLE4998 depends on
the employed permanent magnet and the movement range covered by the application. To achieve the maximum
possible accuracy in such applications, it is recommended to adapt the output characteristic of the TLE4998 to the
application so the possible digital output range is matched to the magnetic input range that is available in the
application.
7.1 Two-Point Calibration Procedure
Position sensor modules are typically subject to production variations in terms of magnet strength and magnet
position, therefore it is recommended to do a two-point calibration of the TLE4998 after assembly of each module
to achieve the desired output characteristics independent of such production variations.
In order to configure an application specific output-characteristic, a two-point calibration procedure is used, where
the IC-internal representation HCAL (compare Figure 2-1) of the Hall measurement value is evaluated at two
defined positions and the output offset and gain are adjusted accordingly. This procedure is illustrated in
Figure 7-1.
Figure 7-1 Schematic of Two-Point Calibration
The 16bit value DOUT, which is transferred on the output protocol is calculated in the TLE4998 with the configured
offset (OS) and gain (G) value according to Equation (7.1).
(7.1)
For the two-point calibration, the following procedure is used:
1. Select two reference positions Pos1 and Pos2 for the moveable magnet in the application module. For
maximum accuracy of the calibration routine it is recommended that the desired signal difference between
these positions is at least half the full signal range.
2. Chose the desired output signals DOUT1’ and DOUT2’ which should correspond to positions Pos1 and Pos2
in the final configuration.
3. Fix the application module in position Pos1 and read the HCAL register via the programming interface. This
value is HCAL1.
DOUT [LSB16]
Position
~ Magnetic Flux (mT)
DOUT1'
DOU T 2 '
Pos 2 (B
2
)Pos 1 (B
1
)
application movement r ange
0
Max Output
(100%)
Min Output
(0 %)
65535
before 2 -point
calibration
after 2-point
calibration
~HCAL1
~HC AL 2
DOUT16bit
2 G 16384()HCAL⋅⋅
4096
----------------------------------------------------------- 1 6 O S 1 6 3 8 4()+=
@
TLE4998
User’s Manual
Calibration of TLE4998 Output Characteristic
User’s Manual 36 Rev. 1.3, 2018-02
4. Fix the application module in position Pos2 and read the HCAL register via the programming interface. This
value is HCAL2.
5. Calculate the according gain and offset parameters from the recorded HCAL1 and HCAL2 values and the
desired DOUT1’ and DOUT2’ values using Equation (7.2) and Equation (7.3).
(7.2)
(7.3)
6. Programm the gain (G) and offset (OS) values into the sensor’s EEPROM.
Attention: HCAL is a 16bit signed integer value ranging from -32768 to 32767. DOUT is a 16bit unsigned
integer value ranging from 0 to 65535.
7.2 Two-Point Calibration Examples
7.2.1 Calibration with Application Readout
Optimum accuracy of the TLE4998 can be achieved by using a two-point calibration with readout of the HCAL
registers in the application. The sensor’s output register HCAL is measured at the end points of the applications
range of motion and derive the optimum offset and gain parameters from the desired DOUT values. The registers
can be read using the TLE4998 Evaluation Kit.
Example
An example application has a linear movement range from x1 to x2. In both positions, the register value HCAL is
recorded.
In the application, it is desired to have the output value DOUT1’ = 3277 LSB16 (5% of full 16bit range) at position
x1 and DOUT2’ 62258 LSB16 (95% of full 16bit range) at position x2.
The measured HCAL and desired DOUT’ values are shown in Table 7-1.
Applying the HCAL and DOUT’ values from Table 7-1 in Equation (7.2) and Equation (7.3) yields:
G = 16384 + 2048 * (62258 - 3277) / (6203 - (-5435)) = 26763
OS = 16384 + (3277 - ((26763 - 16384) * (-5435)) / 2048) / 16 = 18310
This corresponds to a multiplicative gain of 2.53 and an offset of 47% ( = 1926 LSB12 = 30816 LSB16), according
to the formulas in Chapter 4.
Attention: If the measured HCAL values are close to the range limits -32768 or 32767, saturation takes
place. In this case, it is recommended to switch to a higher magnetic range (±100 or ±200 mT)
prior to the calibration.
Table 7-1 Example DOUT and HCAL values for 2-point calibration
Position measured
HCAL (Hex)
HCAL (Dec, signed)
Range -32768 to 32767
desired
DOUT’ (Hex)
DOUT’ (Dec)
Range 0 to 65535
x1EAC5H-5435 0CCDH3277
x2183BH6203 F332H62258
G 16384 2048 DOUT2' DOUT1'
HCAL2 HCAL1
--------------------------------------------------
+=
OS 16384 DOUT1' G 16384()HCAL1()2048
16
--------------------------------------------------------------------------------------------------------+=
®
TLE4998
User’s Manual
Calibration of TLE4998 Output Characteristic
User’s Manual 37 Rev. 1.3, 2018-02
7.2.2 Calibration without Application Readout
In case a readout of the sensor before calibration is not desired, the sensor can be roughly calibrated just from a
knowledge of the minimum and maximum magnetic flux values that occur in the application. In this case, the
calibration cannot compensate any variation of parameters due to production spread of sensor IC or application
module. The offset and gain are calculated only based on the minimum and maximum magnetic field in the
application.
Example
An example application has a minimum magnetic flux of Bmin = -25 mT and a maximum magnetic flux of Bmax = 75
mT, over the entire range of motion at room temperature. In the application module, these magnetic flux values
shall be mapped to 10% and 90% of the full output range (full 100% duty cycle for PWM versions or full 12bit or
16bit digital output for SENT and SPC versions).
The pre-calibrated gain value is 1.62 and the pre-calibrated offset value (= output at 0 mT magnetic flux) is 50%.
For the optimum configuration of the sensor for this application, the range is set to ± 100 mT (± 50 mT is not
suitable in this case, as Bmax is outside this range).
The sensitivity needs to be set in a way that the magnetic flux change from Bmin to Bmax results in an output value
change of 90% - 10% = 80%. The required sensitivity is
(OUT2 - OUT1) / (Bmax - Bmin) = 80% / 100 mT = 0.8 %/mT
The default sensitivity corresponding to the gain setting of 1.62 is 1.2 %/mT. To reach the desired sensitivity, the
gain needs to be lowered by a factor of 0.8/1.2 = 0.667. So the new gain setting to be programmed into the sensor
is 1.62 * 0.667 = 1.08.
The offset needs to be adapted accordingly, so the center value of the magnetic range corresponds to 50% of the
full output. In this example, the center of the magnetic range is:
Bcenter = (Bmax - Bmin) / 2 = 75mT - (-25 mT) / 2 = 25 mT
To find the optimum offset setting, the desired magnetic flux value value Bcenter which should correspond to 50%
output is multiplied by the gain and the resulting value is subtracted from 50%.
Thus, for this example the offset setting to be programmed in the sensor is: 50% - (25mT * 0.8 %/mT) = 30%
@
TLE4998
User’s Manual
User’s Manual 38 Rev. 1.3, 2018-02
Trademarks of Infineon Technologies AG
AURIX™, C166™, CanPAK™, CIPOS™, CIPURSE™, EconoPACK™, CoolMOS™, CoolSET™,
CORECONTROL™, CROSSAVE™, DAVE™, DI-POL™, EasyPIM™, EconoBRIDGE™, EconoDUAL™,
EconoPIM™, EconoPACK™, EiceDRIVER™, eupec™, FCOS™, HITFET™, HybridPACK™, I²RF™,
ISOFACE™, IsoPACK™, MIPAQ™, ModSTACK™, my-d™, NovalithIC™, OptiMOS™, ORIGA™,
POWERCODE™; PRIMARION™, PrimePACK™, PrimeSTACK™, PRO-SIL™, PROFET™, RASIC™,
ReverSave™, SatRIC™, SIEGET™, SINDRION™, SIPMOS™, SmartLEWIS™, SOLID FLASH™, TEMPFET™,
thinQ!™, TRENCHSTOP™, TriCore™.
Other Trademarks
Advance Design System™ (ADS) of Agilent Technologies, AMBA™, ARM™, MULTI-ICE™, KEIL™,
PRIMECELL™, REALVIEW™, THUMB™, µVision™ of ARM Limited, UK. AUTOSAR™ is licensed by AUTOSAR
development partnership. Bluetooth™ of Bluetooth SIG Inc. CAT-iq™ of DECT Forum. COLOSSUS™,
FirstGPS™ of Trimble Navigation Ltd. EMV™ of EMVCo, LLC (Visa Holdings Inc.). EPCOS™ of Epcos AG.
FLEXGO™ of Microsoft Corporation. FlexRay™ is licensed by FlexRay Consortium. HYPERTERMINAL™ of
Hilgraeve Incorporated. IEC™ of Commission Electrotechnique Internationale. IrDA™ of Infrared Data
Association Corporation. ISO™ of INTERNATIONAL ORGANIZATION FOR STANDARDIZATION. MATLAB™ of
MathWorks, Inc. MAXIM™ of Maxim Integrated Products, Inc. MICROTEC™, NUCLEUS™ of Mentor Graphics
Corporation. MIPI™ of MIPI Alliance, Inc. MIPS™ of MIPS Technologies, Inc., USA. muRata™ of MURATA
MANUFACTURING CO., MICROWAVE OFFICE™ (MWO) of Applied Wave Research Inc., OmniVision™ of
OmniVision Technologies, Inc. Openwave™ Openwave Systems Inc. RED HAT™ Red Hat, Inc. RFMD™ RF
Micro Devices, Inc. SIRIUS™ of Sirius Satellite Radio Inc. SOLARIS™ of Sun Microsystems, Inc. SPANSION™
of Spansion LLC Ltd. Symbian™ of Symbian Software Limited. TAIYO YUDEN™ of Taiyo Yuden Co.
TEAKLITE™ of CEVA, Inc. TEKTRONIX™ of Tektronix Inc. TOKO™ of TOKO KABUSHIKI KAISHA TA. UNIX™
of X/Open Company Limited. VERILOG™, PALLADIUM™ of Cadence Design Systems, Inc. VLYNQ™ of Texas
Instruments Incorporated. VXWORKS™, WIND RIVER™ of WIND RIVER SYSTEMS, INC. ZETEX™ of Diodes
Zetex Limited.
Last Trademarks Update 2011-11-11
Revision History
Page or Item Subjects (major changes since previous revision)
Rev 1.3, 2018-02
Page 12 Added hardware version ID and hardware satus content for TLE4998C8(D) B2 design
Page 14 Updated Flowchart description to include hardware satus content for TLE4998C8(D) B2 design
Published by Infineon Technologies AG
www.infineon.com