SO
8
KMZ80
Programmable angle sensor IC
Rev. 4 — 11 November 2020
1
Product data sheet
General description
The KMZ80 is a single channel magnetic angle sensor. Magnetoresistive (MR) sensor
bridges and mixed signal IC are integrated into a single package. The KMZ80 in SO8
package is intended for printed-circuit boards (PCBs) where external filter components
are required. The IC allows user-specific adjustments of angular range, zero angle, and
clamping voltages. The settings are stored permanently in a non-volatile memory (NVM).
The programmable angle sensor is pre-programmed, pre-calibrated and therefore, ready
to use.
2
Features and benefits
• High precision sensor for magnetic angular
measurement
• Single package sensor
• Automotive qualified in accordance with
AEC-Q100 Rev-H
• Programmable user adjustments, e.g. zero
angle and angular range
• Fail-safe non-volatile memory with write
protection using lock bit
• Independent from magnetic field strength
above 25 kA/m
• Factory calibrated
• Separate temperature sensor and auxiliary
analog-to-digital converter (ADC) for magnetic
field conversion check
• High temperature range up to 150 °C
• Ratiometric analog output voltage or push pull
output stage compliant with SAE J2716 SENT
using pulse shaping
• Overvoltage protection up to 18 V
• Power-loss detection
• Programming via one-wire interface (OWI)
• 8 × 12-bit original equipment manufacturer
(OEM) code registers for identification (ID)
• ISO 26262 ASIL-C capable, safety element
out of context (SEooC)
• Multipoint calibration (MPC) with
17 equidistant or seven free selectable
calibration points
• Low latency
KMZ80
NXP Semiconductors
Programmable angle sensor IC
3
Pinning information
Table 1. Pinning
Pin Symbol
Description
Simplified outline
1
n.c.
not connected
2
VDD
supply voltage
3
VDD
supply voltage
4
GND
ground
5
OUT/DATA
analog/single edge nibble transmission
(SENT) output or data interface
6
n.c.
not connected
7
n.c.
not connected
8
n.c.
not connected
4
Ordering information
8
5
1
4
Table 2. Ordering information
Type number
KMZ80
KMZ80
Product data sheet
Package
Name
Description
Version
SO8
plastic small outline package; 8 leads; body width 3.9 mm
SOT96-1
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
2 / 71
KMZ80
NXP Semiconductors
5
Programmable angle sensor IC
Functional diagram
VDD
MONOLITHIC
INTEGRATED
MR SENSOR
BRIDGES
ANALOG VOLTAGE
REGULATOR
(CLEAN)
ANALOG VOLTAGE
REGULATOR
(SWITCHING)
DIGITAL VOLTAGE
REGULATOR
POR
UNDERVOLTAGE
DETECTION/POR
POWER-LOSS
DETECTION
POWER-LOSS
DETECTION
GND
sin
sin
POLY-SI
DAC
OUTPUT
BUFFER
OUT/DATA
SD-ADC
ONE-WIRE
INTERFACE
cos
cos
OSCILLATOR
OSCILLATOR
MONITORING
NON-VOLATILE MEMORY
TEMPERATURE
SENSOR
CRC + EDC
SHADOW REGISTER
AUXILIARY
ADC
DIGITAL PART
CLOCK
GENERATOR
START-UP
CONTROLLER
DIGITAL
FILTER
AND
AVERAGING
ALU
PRE-CORDIC
ASIL
CONTROL
ANGLE
CALCULATION
ALU
POST-CORDIC
ALU ASIL CHECK
GND
SERIAL
INTERFACE
SENT
GENERATOR
CLAMP
CONTROL
TEST
CONTROL
GND
SIGNAL CONDITIONING IC
aaa-029314
Figure 1. Functional diagram
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
3 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
6
Functional description
The KMZ80 converts two orthogonal signals from MR sensor bridges into the digital
domain. The angle is calculated using the coordinate rotation digital computer (CORDIC)
algorithm. After a digital-to-analog conversion, the analog signal is provided to the output
as a linear representation of the angular value or transmitted in a SENT frame compliant
to SAE J2716. Zero angle, clamping voltages and angular range are programmable. In
addition, eight 12-bit registers are available for customer purposes, such as sample ID.
KMZ80 comprises a cyclic redundancy check (CRC) and an error detection code (EDC)
to ensure a fail-safe operation. If either the supply voltage or the ground line of the mixed
signal IC is interrupted, a power-loss detection circuit pulls the output to the remaining
connection.
After conversion into the digital domain by an ADC, further processing is done within an
on-chip state machine. This state machine controls offset cancelation, calculation of the
mechanical angle using the CORDIC algorithm, as well as zero angle and angular range
adjustment. The internal digital-to-analog converter (DAC) and the analog output stage
are used for conversion of the angle information into an analog output voltage, which
is ratiometric to the supply voltage. Alternatively, the output signal can be transmitted
digitally in a SENT frame compliant to SAE J2716.
The configuration parameters are stored in a user-programmable non-volatile memory.
The OWI (accessible using pin OUT/DATA) is used for accessing the memory. In order to
protect the memory content a lock bit can be set. After locking the non-volatile memory,
its content cannot be changed anymore.
6.1 Angular measurement directions
The signals of the MR sensor bridges depend only on the direction of the external
magnetic field vector Hext, which is applied parallel to the plane of the sensor. In order to
obtain a correct output signal, exceed the minimum saturation field strength.
α
Hext
aaa-029336
Figure 2. Angular measurement directions
Since the anisotropic MR (AMR) effect is periodic over 180°, the sensor output is also
180°-periodic. The angle is calculated relative to a freely programmable zero angle. The
dashed line indicates the mechanical zero degree position.
7
Analog output
KMZ80 provides an analog output signal on pin OUT/DATA (if bit 12 in register
SYS_SETTING is set to logic 0; see Table 49). The measured angle α is converted
linearly into a value, which is ratiometric to the supply voltage VDD. Either a positive or a
negative slope is provided for this purpose.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
4 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
Table 3 describes the analog output behavior for a positive slope. A magnetic field angle,
above the programmed maximum angle αmax, but below the clamp switch angle αsw(CL)
sets the analog output to the upper clamping voltage. If the magnetic field angle is larger
than the clamp switch angle, the analog output switches from upper to lower clamping
voltage. If there is a negative slope, the clamping voltages are changed.
Table 3. Analog output behavior for a positive slope
Magnetic field angle
Analog output
αmax < α < αsw(CL)
V(CL)u
αsw(CL) < α < αref + 180°
V(CL)l
The analog output voltage range encodes both angular and diagnostic information.
A valid angle value is between the upper and lower clamping voltage. If the analog output
is in the diagnostic range that is below 4 %VDD or above 96 %VDD, an error condition has
been detected. The analog output repeats every 180°.
VO/VDD
(%)
αrng
V(CL)u
V(CL)I
0
αref
α (deg)
αmax
180
αsw(CL)
αref + 180°
aaa-028525
αmax = αref + αrng
Figure 3. Characteristic of the analog output
8
Digital output
KMZ80 provides a digital output signal on pin OUT/DATA (if bit 12 in register
SYS_SETTING is set to logic 1; see Table 49) compliant with the SAE J2716 SENT
standard. The measured angle α is converted linearly into a value, which is digital
encoded in SENT frames. Either a positive or a negative angular slope characteristic is
provided for this purpose.
Table 4 describes the digital output behavior for a positive slope. A magnetic field angle
above the programmed maximum angle αmax but below the clamp switch angle αsw(CL)
sets the output to the upper clamping value. If the magnetic field angle is larger than
the clamp switch angle, the output value switches from upper to lower clamping value.
If there is a negative slope, the clamping levels are changed.
Table 4. Digital output behavior for a positive slope
KMZ80
Product data sheet
Magnetic field angle
Data value
αmax < α < αsw(CL)
CLAMP_HIGH
αsw(CL) < α < αref + 180°
CLAMP_LOW
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
5 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
4095
(LSB)
αrng
CLAMP_HIGH
CLAMP_LOW
0
α (deg)
αmax
180
αsw(CL)
αref + 180°
αref
aaa-028823
αmax = αref + αrng
Figure 4. Characteristic of the digital output
8.1 Transmission of sensor messages
KMZ80 encodes a 12-bit angular value into a sequence of pulses based on the encoding
scheme of the SAE J2716 SENT standard. Data is split into 4-bit nibbles that are
encoded in the time-domain as the duration between two falling edges. The message
frame is a sequence of 4-bit nibbles (SENT frame). The timebase of the SENT frame
is defined in clock ticks with a configurable duration of Tclk = 2.7 µs, 3 µs, 4.5 µs, and
6 µs each clock tick. A calibration pulse (SYNC nibble) followed by a STATUS nibble,
a constant number of fast channel DATA nibbles, a CRC nibble, and an optional PAUSE
pulse define one message frame of a SENT transmission as shown in Figure 5. The
KMZ80 is compatible with revisions of the SENT specification listed below and supports
data formats in accordance with appendix A.1, H.1, A.3, H.4, and H.3.
General SENT specification can be found in:
PAUSE pulse
(optional)
CRC/checksum
DATA5
DATA4
DATA3
DATA2
DATA1
DATA0
SYNC
STATUS
• SAE J2716 FEB2008 SENT rev 2
• SAE J2716 JAN2010 SENT rev 3
• SAE J2716 APR2016 SENT rev 4
aaa-008183
Figure 5. SENT frame
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
6 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
8.2 SYNC nibble
The synchronization and calibration nibble is always 56 clock ticks long. The receiver
uses the SYNC nibble to derive the clock tick time from the SENT frame.
8.3 STATUS nibble
The STATUS nibble contains status and slow channel information of the KMZ80. Bit 0
reflects the operating mode, i.e. normal or diagnostic mode. Bit 1 is a pre-warning
indication and is set while the device is still in normal mode. For a detailed description of
the pre-warning bit, see Section 8.11.1.2.
Bit 2 and bit 3 are used for optional slow channel serial data messages using the
enhanced serial protocol (ESP), described in Section 8.10.
Table 5. STATUS nibble
Bit
Description
3 [most significant bit (MSB)]
serial data message bit if ESP is enabled, otherwise logic 0
2
serial data message bit if ESP is enabled, otherwise logic 0
1
pre-warning
0b – normal operation
1b – pre-warning condition
0 [least significant bit (LSB)]
operating mode
0b – normal operation
[3]
1b – diagnostic condition
[1]
[2]
[3]
[1]
[2]
Bit 1 can be permanently set to logic 0 via register bit; see Table 49.
Bit 0 can be permanently set to logic 0 via register bit; see Table 49.
Enable the serial data communication for detailed diagnostic information; see Table 14 and Table 15.
8.4 CRC nibble
The CRC nibble contains the 4-bit checksum of the DATA nibbles only. The CRC
calculation does not cover the STATUS nibble.
4
3
2
The CRC is calculated using polynomial x + x + x + 1 with seed value of 0101b. The
KMZ80 supports both the legacy CRC defined in SENT SAE J2716 FEB2008 and earlier
revisions and the recommended CRC defined in SENT SAE J2716 JAN2010 and later.
The CRC version can be selected via CRC type bit in the SENT_SETTING1 register;
see Table 49. CRC in accordance with SAE J2710 JAN2010 is the default configuration.
8.5 PAUSE pulse
A PAUSE pulse can be optionally attached to the SENT frame to generate messages
with a constant frame length via register; see Table 49. The frame length depends on the
protocol format:
• A.1 and H.1: 239 clock ticks
• A.3 and H.4: 269 clock ticks
• H.3: 196 clock ticks
Additionally, the frame length with PAUSE pulse can be set to 297 clock ticks for all
protocol formats via register.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
7 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
8.6 DATA nibbles
In general, the DATA nibbles contain the fast channel angular value of the device. The
DATA nibble content depends on the selected protocol format. KMZ80 supports the
following different protocol formats as defined in the SAE J2716 SENT specification:
• Single secure sensor format A.3 (rev 3), H.4 (rev 4)
• Dual throttle position sensor format A.1 (rev 3), H.1 (rev 4)
• High-speed 12-bit message format H.3 (rev 4)
A detailed frame format description can be found in the corresponding subsection.
8.7 Single secure sensor formats A.3 and H.4
PAUSE pulse
(optional)
CRC/checksum
DATA5
DATA4
8-bit loop
counter
inverted copy
of DATA0
12-bit angular value
DATA3
DATA2
DATA1
DATA0
SYNC
STATUS
KMZ80 generates the sequence shown in Table 6 repeatedly in accordance with the
single secure sensor format defined in SAE J2716 JAN2010 SENT appendix A.3,
respectively J2716 APR2016 SENT appendix H.4. DATA nibbles D0 to D2 contain
the 12-bit angular value. D3 and D4 reflect the value of an 8-bit loop counter. D5 is an
inverted copy of the most significant nibble (MSN) DATA0. The difference between
A.3 and H.4 is that A.3 uses the whole 12-bit data range for angular values while H.4
excludes the values 0 and 4089 to 4095 from the angular data range for diagnostic
purposes; see Table 7.
aaa-008202
Figure 6. Single secure sensor formats A.3 and H.4
Table 6. Single secure sensor formats A.3 and H.4: frame
SYNC
[1]
[2]
STATUS
DATA0
[1]
D0
diagnostic and
pre-warning
DATA1
DATA2
D1
DATA3
[2]
D2
12-bit angular value
[1]
D3
DATA4
[2]
D4
8-bit loop counter
DATA5
CRC
D5
-
inverted D0
-
MSN.
Least significant nibble (LSN).
DATA nibbles D0 to D2 contain the angular value information in the single secure
sensor format. A.3 uses the complete 12-bit data range for angular values while H.4 has
reserved values for initialization and diagnostic information.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
8 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
Table 7. DATA nibbles D0 to D2: angular value
D0
[1]
D1
D2
[2]
A.3
H.4
12-bit value
Angle
12-bit value
Angle/mode
0
0°
0
initialization message
0000
0000
0000
0000
0000
0001
1
0°
:
:
:
:
:
1111
1111
1000
4088
1111
1111
:
1111
1111
1010
4090
1111
1111
:
:
reserved
1111
1111
1111
4095
reserved
[1]
[2]
[3]
:
:
4095
αmax
:
αmax
reserved
diagnostic mode
[3]
MSN.
LSN.
For detailed diagnostic information, the serial data communication can be enabled.
Data nibbles D3 and D4 contain an 8-bit loop counter value with wrap-around common
for both protocol formats A.3 and H.4.
Table 8. DATA nibbles D3 and D4: 8-bit loop counter
D3
[1]
D4
[2]
8-bit loop counter
0000
0000
0
:
:
:
1111
1111
[1]
[2]
255
MSN.
LSN.
For the single secure sensor format H.4 the clamping levels must be set to the correct
values to comply with the SAE J2716 SENT specification: CLAMP_HIGH = 4088,
CLAMP_LOW = 1. Otherwise angular values overwrite the reserved data range for
diagnostic information.
8.8 Dual throttle position sensor formats A.1 and H.1
The KMZ80 generates the sequence shown in Table 9 repeatedly in accordance with the
dual throttle position sensor format defined in SAE J2716 JAN2010 SENT appendix A.1
or H.1 defined in SAE J2716 APR2016.
DATA nibbles D0 to D2 contain the 12-bit angular value. DATA nibbles D3 to D5 contain
the opposite slope of the same 12-bit angular value while also the order of these DATA
nibbles is reversed.
A.1 uses the data range 1 to 4094 for angular values and the values 0 and 4095 for
diagnostic information. While H.1 uses data range 1 to 4088 for angular values and 4090
for diagnostic information.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
9 / 71
KMZ80
NXP Semiconductors
12-bit angular value
PAUSE pulse
(optional)
CRC/checksum
DATA5
DATA4
DATA3
DATA2
DATA1
DATA0
SYNC
STATUS
Programmable angle sensor IC
12-bit inverted slope
angular value
aaa-008203
Figure 7. Dual throttle position sensor formats A.1 and H.1
Table 9. Dual throttle position sensor formats A.1 and H.1: frame
SYNC
-
DATA0
DATA1
[1]
D0
diagnostic and
pre-warning
[1]
[2]
STATUS
DATA2
DATA3
[2]
D1
DATA4
[2]
D2
D5
12-bit angular value
DATA5
D4
D3
CRC
[1]
-
12-bit inverted slope angular value
MSN.
LSN.
DATA nibbles D0 to D2 contain the angular value information in the dual throttle position
sensor formats A.1 and H.1.
Table 10. DATA nibbles D0 to D2: angular value
D0
[1]
D1
D2
[2]
A.1
H.1
12-bit value
Angle
12-bit value
Angle/mode
0000
0000
0000
0
reserved
0
initialization message
0000
0000
0001
1
0°
1
0°
:
:
:
:
:
1111
1111
1000
4088
1111
1111
:
1111
1111
1010
4090
1111
1111
:
:
reserved
1111
1111
1110
4094
reserved
4095
reserved
1111
[1]
[2]
[3]
1111
1111
:
:
4094
4095
:
αmax
diagnostic mode
[3]
αmax
reserved
diagnostic mode
[3]
MSN.
LSN.
For detailed diagnostic information, the serial data communication can be enabled.
For the inverted slope angular value in the DATA nibbles D3 to D5 the order of nibbles is
also reversed: LSN and MSN.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
10 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
When a diagnostic condition occurs in A.1 mode, the DATA nibbles D0 to D2 are all set
to Fh and DATA nibbles D3 to D5 are all set to 0h. In H.1 mode, the data value of nibbles
D0 to D2 is set to 4090 and DATA nibbles D3 to D5 are inverted to diagnostic value 5.
For the dual throttle position sensor formats A.1 and H.1, the clamping levels must
be set to the correct values to comply with the SAE J2716 SENT specification.
A.1: CLAMP_HIGH = 4094, CLAMP_LOW = 1. H.1: CLAMP_HIGH = 4088,
CLAMP_LOW = 1. Otherwise angular values overwrite the reserved data range for
diagnostic information.
Table 11. DATA nibbles D3 to D5: inverted slope angular value
D5
[1]
D4
D3
[2]
A.1
12-bit value
0000
0000
0000
0
0000
0000
0001
1
:
:
:
0000
0000
:
H.1
Angle
Angle/mode
0
reserved
αmax
1
reserved
:
:
:
reserved
0101
:
:
5
diagnostic mode
:
:
:
:
:
reserved
0000
0000
0111
:
:
7
αmax
:
:
:
:
:
:
:
1111
1111
1110
4094
0°
4094
0°
1111
1111
1111
4095
reserved
4095
initialization message
[1]
[2]
[3]
diagnostic mode
12-bit value
[3]
[3]
MSN.
LSN.
For detailed diagnostic information, the serial data communication can be enabled.
8.9 High-speed 12-bit message format H.3
The KMZ80 generates the sequence shown in Table 12 repeatedly in accordance with
the high-speed 12-bit message format H.3 defined in SAE J2716 APR2016. This mode
realizes almost a doubling of the update rate compared to other modes. The increase
of the update rate is achieved by transmitting 12-bit angular data with only four DATA
nibbles using only 3 bit of the available 4 bit per nibble. The MSB of each nibble is always
zero. Additionally, the clock tick length shall be set to 2.7 µs typically with a maximum
variation of ±10 %. The SYNC, STATUS, and CRC nibble and the serial communication
are the same as for the other protocol formats.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
11 / 71
KMZ80
NXP Semiconductors
DATA3
CRC/checksum
Programmable angle sensor IC
3-bit
4-bit
4-bit
3-bit
3-bit
DATA2
DATA1
56 ticks
DATA0
SYNC
STATUS
fast channel
3-bit
12-bit message
overall message - 131 clock ticks to 187 clock ticks (depending on data values)
aaa-008204
Figure 8. High-speed 12-bit message format frame H.3
Table 12. High-speed 12-bit message format: frame
SYNC
-
DATA0
[1]
D0
diagnostic and
pre-warning
[1]
[2]
STATUS
DATA1
DATA2
D1
D2
DATA3
[2]
D3
CRC
-
12-bit angular value
MSN.
LSN.
Table 13. DATA nibbles D0 to D3: angular value
D0
[1]
D1
D2
D3
[2]
H.3
12-bit value
Angle/mode
0000
0000
0000
0000
0
initialization
0000
0000
0000
0001
1
0°
:
:
:
:
:
:
0111
0111
0111
0000
4088
αmax
0111
0111
0111
0001
4089
reserved
0111
0111
0111
0010
4090
diagnostic mode
0111
0111
0111
:
:
reserved
0111
0111
0111
0111
4095
reserved
[1]
[2]
[3]
[3]
MSN.
LSN.
For detailed diagnostic information, the serial data communication can be enabled.
For the 12-bit high-speed mode H.3, the clamping levels must be set to the correct
values to comply with the SAE J2716 SENT specification. CLAMP_HIGH = 4088,
CLAMP_LOW = 1. Otherwise angular values overwrite the reserved data range for
diagnostic information.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
12 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
8.10 Enhanced serial data communication
Beside the normal message transmission, also a slow serial data communication is
realized using bit 2 and bit 3 of the STATUS nibble. The slow channel message stretches
over 18 consecutive SENT frames and contains sensor temperature, supply voltage,
diagnostic/status information, and user-programmable messages. These messages
comply with the enhanced serial data message format with 8-bit message ID and 12-bit
message data described in the SAE J2716 SENT specification. Table 14 shows the serial
message cycle that is constantly repeated when enhanced serial data communication is
enabled.
Table 14. Serial message schedule
Message number in serial
message cycle
8-bit message
ID
Definition
Comment
1
01h
diagnostic status code
see Table 15
2
23h
sensor temperature
see Table 21
3
1Ch
supply voltage
see Table 20
4
03h
sensor type
see Table 17
5
29h
sensor ID
see Table 22
6
05h
manufacturer code
see Table 18
7
06h
SENT revision
see Table 19
8
01h
diagnostic status code
see Table 15
9
23h
sensor temperature
see Table 21
10
1Ch
supply voltage
see Table 20
11
90h
OEM code 1
see Table 23
12
91h
OEM code 2
see Table 24
13
92h
OEM code 3
see Table 25
14
93h
OEM code 4
see Table 26
15
94h
OEM code 5
see Table 27
16
95h
OEM code 6
see Table 28
17
96h
OEM code 7
see Table 29
18
97h
OEM code 8
see Table 30
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
13 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
8.10.1 Enhanced serial messages
Table 15. Diagnostic status code message
8-bit ID
12-bit code
Definition
01h
000h
no error
001h
[1]
Comment
normal operation
[1]
output value above OOR_HIGH register
[1]
output value below OOR_LOW register
OOR HIGH
002h
OOR LOW
003h to 019h
reserved
020h
undervoltage
021h
[1]
VDD above SENT_SETTING2[15:14]
[1]
application-specific integrated circuit (ASIC)
temperature above SENT_SETTING2[11:7]
overvoltage
[1]
VDD below SENT_SETTING2[13:12]
022h
temperature
023h
single-bit error
024h to 800h
reserved
801h to FFFh
automotive safety integrity level (ASIL) see Table 16
error code
[1]
CTRL1[10]
If enabled, pre-warning is indicated and bit 1 of STATUS nibble is set.
Table 16. ASIL error code
Bit
Description
Safety mechanism
11 (MSB)
device in diagnostic mode CTRL1[14] (ASIL_STATUS_CODE[11])
-
10
angular range check
SM-12
9
CORDIC range check
SM-11
8
data adder check
SM-10
7
SD-ADC range check
SM-09
6
built-in self-test (BIST) encoding check
SM-08
5
control signal check and BIST completion check
SM-06 and SM-07
4
adjusted angle calculation check
SM-05
3
data conversion check
SM-04
2
data division check
SM-03
1
inverted angle calculation check
SM-02
0 (LSB)
magnetic field conversion check
SM-01
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
14 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
Table 17. SENSOR_TYPE[3:0] – channel 1/2 sensor type message
8-bit ID
12-bit code
Definition
Comment
03h
051h
[1]
acceleration pedal position 1 or acceleration pedal position 2
0000b
052h
[1]
acceleration pedal position 1 or secure sensor
0001b
053h
[1]
acceleration pedal position 2 (redundant signal) or secure sensor
0010b
054h
[1]
throttle position 1 or throttle position 2
0011b
055h
[1]
throttle position 1 or secure sensor
0100b
056h
[1]
throttle position 2 (redundant signal) or secure sensor
0101b
059h
[1]
angle position
0110b
[1]
angle position or secure sensor
0111b
062h
[2]
angle position (high speed) H.3 protocol format
1000b
063h
[2]
angle position 1 or angle position 2 H.1 protocol format
1001b
064h
[2]
angle position or secure sensor H.4 protocol format
1010b
066h
[2]
reserved for angle position sensors
1011b
reserved
1101b to 1111b
05Ah
000h
[1]
[2]
Compliant with SAE JAN2010 rev 3 only.
Compliant with SAE APR2016 rev 4 only.
Table 18. Manufacturer code message
8-bit ID
12-bit code
Definition
Comment
05h
04Eh
NXP Semiconductors
fix value
Table 19. SENT_REVISION[1:0] – SENT standard revision message
8-bit ID
12-bit code
Definition
Comment
06h
000h
not specified
00b
002h
FEB2008 rev 2
01b
003h
JAN2010 rev 3
10b
004h
APR2016 rev 4
11b
Table 20. Supplementary data channel #3,1: sensor supply voltage
8-bit ID
12-bit code
Definition
Comment
1Ch
000h to 1FFh
9-bit sensor supply voltage
VDD [V] = (digital value [LSB] + 33) / 58
200h to FFFh
reserved
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
15 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
Table 21. Supplementary data channel #4,1: sensor temperature value
8-bit ID
12-bit code
Definition
Comment
23h
000h to 0FFh
8-bit sensor temperature
000h: −45 °C to 0FFh: +210 °C
100h to FFFh
reserved
Table 22. SENSOR_ID – sensor ID #1 message
8-bit ID
12-bit code
Definition
Comment
29h
000h
sensor ID1
0b
FFFh
sensor ID2
1b
Table 23. OEM_CODE_1[11:0] – OEM code 1 message
8-bit ID
12-bit code
Definition
Comment
90h
000h to FFFh
OEM code 1
user-programmable data content
Table 24. OEM_CODE_2[11:0] – OEM code 2 message
8-bit ID
12-bit code
Definition
Comment
91h
000h to FFFh
OEM code 2
user-programmable data content
Table 25. OEM_CODE_3[11:0] – OEM code 3 message
8-bit ID
12-bit code
Definition
Comment
92h
000h to FFFh
OEM code 3
user-programmable data content
Table 26. OEM_CODE_4[11:0] – OEM code 4 message
8-bit ID
12-bit code
Definition
Comment
93h
000h to FFFh
OEM code 4
user-programmable data content
Table 27. OEM_CODE_5[11:0] – OEM code 5 message
8-bit ID
12-bit code
Definition
Comment
94h
000h to FFFh
OEM code 5
user-programmable data content
Table 28. OEM_CODE_6[11:0] – OEM code 6 message
8-bit ID
12-bit code
Definition
Comment
95h
000h to FFFh
OEM code 6
user-programmable data content
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
16 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
Table 29. OEM_CODE_7[11:0] – OEM code 7 message
8-bit ID
12-bit code
Definition
Comment
96h
000h to FFFh
OEM code 7
user-programmable data content
Table 30. OEM_CODE_8[11:0] – OEM code 8 message
8-bit ID
12-bit code
Definition
Comment
97h
000h to FFFh
OEM code 8
user-programmable data content
8.11 SENT diagnostic
The SENT standard specifies different methods to transmit diagnostic information. These
methods are used in multiple combinations, depending on the SENT revision, protocol
format, and device configuration.
8.11.1 STATUS nibble diagnostic
Bit 0 and bit 1 of the STATUS nibble can be used to signal the diagnostic state while
the DATA nibbles still contain an angular value at the same time. The CRC nibble does
not include the STATUS nibble, thus the receiver do not detect an erroneous STATUS
nibble.
8.11.1.1 Diagnostic bit
The device defines bit 0 of the STATUS nibble as diagnostic bit. In case the device is in
diagnostic mode the diagnostic bit is set to logic 1.
The diagnostic bit can be disabled and permanently set to logic 0 via the mask STATUS
nibble bits in the SENT_SETTING2 register in the non-volatile memory; see Table 49.
8.11.1.2 Pre-warning bit
Bit 1 is a pre-warning indication which is set while the device is still in normal mode, but
one of the following conditions occurred:
• The angular value is above the programmed upper out of range (OOR) threshold;
see Table 51.
• The angular value is below the programmed lower OOR threshold; see Table 51.
• Corrected single-bit error of the non-volatile memory (EDC); see Section 10.1.
• The temperature is above the programmed temperature threshold; see Table 49.
• Overvoltage: The supply voltage is above the programmed upper voltage threshold;
see Table 49.
• Undervoltage: The supply voltage is below the programmed lower voltage threshold;
see Table 49.
The pre-warning bit can be disabled and permanently set to logic 0 via the mask
STATUS nibble bits in the SENT_SETTING2 register in the non-volatile memory;
see Table 49.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
17 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
8.11.2 Fast channel diagnostic value
Some protocol formats define a reserved data range in the fast channel communication
for signaling diagnostic status instead of an angular value in the SENT transmission.
The KMZ80 generates a specific diagnostic value instead of an angular value in case
the device is in diagnostic mode. The diagnostic value depends on the selected protocol
format according to Table 31.
Table 31. Fast channel diagnostic value
Protocol format
Normal mode
Diagnostic mode
A.1
angular value
4095
A.3
angular value
angular value
H.1
angular value
4090
H.3
angular value
4090
H.4
angular value
4090
8.11.3 Enhanced serial protocol diagnostic status code message
Detailed diagnostic and pre-warning information is transmitted in the diagnostic status
code message ID 01h of the slow channel message transmission. Therefore, the
enhanced serial protocol must be enabled via the ESP bit in the SENT_SETTING1
register in the non-volatile memory; see Table 49. A description of the diagnostic status
code message is given in Table 15.
9
Output characteristic
The MPC defines the output transfer characteristic. For this purpose, up to 17 calibration
points define the range between programmed reference angle and set maximum angle.
Three different MPC types are available, see Table 49, whereas in each mode either a
positive or a negative slope can be programmed. MPC17 and MPC7 enable an improved
linearization of the output characteristic.
Furthermore, curve shapes can be customized in accordance with application
requirements.
9.1 No MPC mode
No MPC mode refers to the conventional linear output characteristic defined by zero
angle (ZERO_ANGLE), angular range (RANGE_DETECTION), clamp switch angle
(CLAMP_SWITCH), and clamping levels (CLAMP_LOW and CLAMP_HIGH).
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
18 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
VO/VDD
(%)
no MPC
CLAMP_SWITCH
SCALE_COEFFICIENT
100
CLAMP_HIGH 95
90
80
70
SLOPE = 0
60
50
40
30
20
CLAMP_LOW
10
5
0
0
20
40
60
80
100
ZERO_ANGLE
120
140
160
RANGE_DETECTION
180
α (deg)
aaa-028143
Figure 9. No MPC mode
9.2 MPC17 mode
MPC17 mode enables curve shaping by 17 equidistant calibration points. For this
purpose 16 coefficients (MPC_COEFFICIENTn) can be programmed, see Table 50, to
set a specific output level for each calibration point.
In this mode, all points are scaling with the angular range to define calibration coefficients
at equidistant positions as shown in Figure 10.
VO/VDD
(%)
MPC17
100
MPC_16
CLAMP_HIGH 95
90 MPC_15
MPC_14
80 MPC_13
MPC_12
70
MPC_11
60 MPC_10
MPC_9
50 MPC_8
MPC_7
40 MPC_6
MPC_5
30
MPC_4
20 MPC_3
MPC_2
10 MPC_1
5
CLAMP_LOW
0
0
20
CLAMP_SWITCH
SCALE_COEFFICIENT
SLOPE = 0
40
60
80
ZERO_ANGLE
100
120
140
160
RANGE_DETECTION
180
α (deg)
aaa-028144
Figure 10. MPC17 mode
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
19 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
9.3 MPC7 mode
MPC7 in contrast provides a set of six freely selectable calibration points defined by
angular position (linear Xn), output level (linear Yn), and slope (linear Sn) as shown
in Figure 11.
VO/VDD
(%)
MPC7
SLOPE_6
LNR_Y5
80
SLOPE_5
70
LNR_Y4
60
LNR_Y3
SLOPE_3
40
LNR_Y2
30
SLOPE_2
LNR_Y1
20
10
5
0
SLOPE = 0
SLOPE_4
50
CLAMP_LOW
CLAMP_SWITCH
SCALE_COEFFICIENT
100
CLAMP_HIGH 95
90
SLOPE_1
LNR_X1 LNR_X2 LNR_X3 LNR_X4 LNR_X5
0
20
40
60
80
ZERO_ANGLE
100
120
140
160
RANGE_DETECTION
180
α (deg)
aaa-028145
Figure 11. MPC7 mode
10 Diagnostic features
KMZ80 provides following diagnostic features. The safety mechanisms supporting
functional safety operation are marked with individual numbers SM-xx. Functional risks
are only minimized if all safety mechanisms are enabled as in the default configuration.
Thus it is not recommended to switch them off individually.
10.1 NVM CRC (SM-20), NVM EDC check (SM-21), and NVM ECC check
(SM-22)
The device includes a supervision of the programmed data. At power-on, a CRC of the
non-volatile memory is performed (SM-20). The NVM is split into three customer areas
with individual CRCs (CRC1, CRC2, and CRC3) and a manufacturer area which is user
access restricted and also CRC protected. Furthermore, the memory is protected against
bit errors. Every 16-bit data word is saved internally as a 22-bit word for this purpose.
The protection logic corrects any single-bit error in a data word (SM-22), while the sensor
continues in normal operation mode. Furthermore, the logic detects double-bit error per
word and switches the output into diagnostic mode (SM-21).
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
20 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
10.2 Power-loss detection (SM-18) and GND-loss detection (SM-19)
The power-loss detection circuit enables the detection of an interrupted supply or ground
line of the mixed signal IC. If there is a power-loss condition, two internal switches in the
sensor are closed, connecting the pin of the analog output to the supply voltage and the
ground pin.
OUTPUT
VDD
ZO(pl)
OUT/DATA
ZO(pl)
GND
aaa-028523
Figure 12. Equivalent output circuit in a power-loss condition
Table 32 describes the power-loss behavior and gives the resulting output voltage
depending on the interrupted supply or ground line and the load resistance.
Table 32. Power-loss behavior
Load resistance
Interrupted supply line
Interrupted ground line
RL(ext) > 5 kΩ
VO ≤ 4 %VDD
VO ≥ 96 %VDD
10.3 Supply overvoltage detection (SM-16) and undervoltage detection
(SM-17)
If the supply voltage is below the switch-off threshold voltage, a status bit is set and
the output goes into diagnostic mode. If the supply voltage is above the overvoltage
switch-on threshold voltage, the output switches to diagnostic mode. Table 33 describes
the system behavior depending on the voltage range of the supply voltage.
Table 33. System behavior for each output mode
Supply voltage State
Analog mode
0 V to
The output buffer drives an active LOW
high-ohmic output stage; external pull-up
or is powered down, but the switches of
resistor defines output voltage
the power-loss detection circuit are not
fully opened and set the output to a level
between ground and half the supply voltage.
1.8 V startup power
SENT mode
1.8 V to
VPOR
power-on reset The power-loss charge pump is fully
operational and turns the switches of the
detection circuit off. The output buffer
drives an active LOW and sets the output
to the lower diagnostic level. During the
reset phase, all circuits are in reset and/or
power-down mode.
The output buffer drives an active LOW.
During the reset phase, all circuits are in
reset and/or power-down mode.
VPOR to Vth(on)
or Vth(off)
initialization
The digital core and the oscillator are
active. After reset, the content of the
non-volatile memory is copied into the
shadow registers. The output buffer
drives an active LOW.
KMZ80
Product data sheet
The digital core and the oscillator are active.
After reset, the content of the non-volatile
memory is copied into the shadow registers.
The output buffer drives an active LOW.
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
21 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
Supply voltage State
Analog mode
SENT mode
Vth(on) or Vth(off) functional
to minimum VDD operation
All analog circuits are active and the
measured angle is available at the analog
output. Not all parameters are within the
specified limits.
All analog circuits are active and the
output is set to HIGH for at least 100 µs
before SENT transmission starts. Not all
parameters are within the specified limits.
Minimum VDD to normal
maximum VDD
operation
All analog circuits are active and the
measured angle is available at the analog
output. All parameters are within the
specified limits.
All analog circuits are active and the
measured angle is available at the digital
output. All parameters are within the
specified limits.
Maximum VDD
to Vth(ov)
functional
operation
All analog circuits are active and the
measured angle is available at the analog
output. Not all parameters are within the
specified limits.
All analog circuits are active and the
measured angle is available at the digital
output. Not all parameters are within the
specified limits.
Vth(ov) to 18 V
overvoltage
The digital core and the oscillator are active
but all other circuits are in power-down
mode. The output is set to the lower
diagnostic level.
The digital core and the oscillator
are active but all other circuits are in
power-down mode. The output buffer
drives an active LOW.
Table 34 describes the diagnostic behavior and the resulting output voltage depending
on the error case. Furthermore the duration and termination condition to enter and leave
the diagnostic mode are given, respectively.
Table 34. Diagnostic behavior
Diagnostic condition
Duration
Output
Low voltage
20 µs < t < 120 µs ≤ 4 %VDD
Overvoltage
20 µs < t < 120 µs ≤ 4 %VDD
Termination condition
functional or normal operation
functional or normal operation
[1]
%VDD
power-on reset
[2]
[1]
Checksum error
n.a.
≤ 4 %VDD or ≥ 96
Double-bit error
n.a.
≤ 4 %VDD or ≥ 96 %VDD
power-on reset
Power-loss
≤ 2 ms
≤ 4 %VDD or ≥ 96 %VDD; see Table 32
power-on reset
[1]
[2]
[2]
Depending on the diagnostic level setting.
Status bit stays set in command register until power-on reset.
10.4 Oscillator monitoring (SM-13, SM-14 and SM-15)
If the oscillator frequency differs from the target frequency by more than ±30 % or the
oscillator stops, status bit 7 of CTRL1 register is set and the output goes into diagnostic
mode; see Table 48. If the oscillator frequency differs by more than ±10 %, the SENT
timing can violate the SAE J2716 SENT specification.
10.5 Safe assure - ASIL control unit
The ASIL control includes a state machine, which is a 4-bit up-counter that defines time
slots. The different time slots are used to trigger dedicated BISTs. To enable or disable
the complete ASIL control unit globally, use the BIST bit in ASIL_SETTING register; see
Table 49. The NVM register setting enables or disables individually each integrated test.
In case a self-test was performed a ready flag is generated to reset the start test trigger
signals. In case no reset signal is found, the output is set to diagnostic mode.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
22 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
10.5.1 Timing description
ASIL control sequence
6.25 kHz clock
RESET_N
SM-08
BIST encoding check
SM-01
magnetic field conversion check
0
1
SM-07
2
3
IDLE
4
5
IDLE
6
7
IDLE
8
BIST completion check
9
IDLE
10
11
IDLE
12
13
IDLE
1
2
SM-07
SM-02
inverted angle calculation check
SM-03
data division check
SM-04
data conversion check
SM-05
adjusted angle calculation check
aaa-028146
Figure 13. Sequence state register and start flags for integrated self-checks
10.5.2 User selectable BIST
To enable the BISTs SM-01 to SM-06 set the BIST bit in ASIL_SETTING register;
see Table 49. User selectable self-tests can be enabled or masked separately as
described in the following subsections.
10.5.2.1 Magnetic field conversion check (SM-01)
The output amplitude of an AMR sensor has a strong temperature dependency. This
physical effect is used to check the plausibility of the AMR signals. The magnetic
field conversion check compares a temperature value, which is based on an on-chip
temperature sensor with the temperature information based on the AMR amplitude. In
case the magnet is removed, the AMR amplitude goes down, and the magnetic field
conversion check indicates this failure mode. Furthermore, this check can be switched off
separately with the magnetic field conversion check bit of the ASIL_SETTING register;
see Table 49.
In case the on-chip temperature sensor fails, the product goes to diagnostic condition,
even if the angle data path is not directly affected from this failure mode.
10.5.2.2 Inverted angle calculation check (SM-02)
The inverted angle calculation check calculates a second internal output angle value.
Based on the customer settings the second angle value is an exact inverted copy of the
main data path angle. The check compares the sum of both calculated angle values with
the sum of both adjusted customer clamping levels. In case the post-CORDIC integrated
adder and multiplier are in normal operating mode the result is equal. Furthermore, this
check can be switched off separately with the inverted angle calculation check bit of the
ASIL_SETTING register; see Table 49.
In case internal post-memory addressing, post-multiplier or post-adder fails, the product
goes into diagnostic mode.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
23 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
10.5.2.3 Data division check (SM-03)
The main data path division module is only used in MPC17 mode. Nevertheless,
the integrated data division check uses the same hardware, which is used by the
post-CORDIC. This test performs a test division with a known result. To execute the
data division check, also the post-adder and the post-memory addressing are used.
Furthermore, this check can be switched off separately with the data division check bit of
the ASIL_SETTING register; see Table 49.
In case internal post-memory addressing, post-adder or division fails, the product goes
into diagnostic mode.
10.5.2.4 Data conversion check (SM-04)
The data conversion check checks the CORDIC module, which is used for all modes. For
testing, internal cos and –sin signals are used to calculate an inverted CORDIC angle.
The sum of the main data path CORDIC angle and the inverted CORDIC angle must be
zero. Furthermore, this check can be switched off separately with the data conversion
check bit of the ASIL_SETTING register; see Table 49.
In case internal subblocks of the CORDIC module (shift register, adder, state-controller)
fail, the product goes into diagnostic mode.
10.5.2.5 Adjusted angle calculation check (SM-05)
The zero angle corrected CORDIC signal is one of the most important signals within
the system. This signal is used for the main data path angle value and for the segment
detection for MPC7 and MPC17 mode. The integrated adjusted angle calculation
check compares the post-CORDIC zeroed result with a redundant calculated CORDIC
zeroed signal. The arithmetic logic unit (ALU) ASIL module performs this redundant
calculation. Furthermore, this check can be switched off separately with the adjusted
angle calculation check bit of the ASIL_SETTING register; see Table 49.
In case the redundant calculation of the ALU ASIL check fails, the product goes into
diagnostic mode, even if the angle data path is not directly affected from this failure
mode.
10.5.3 Fixed internal diagnostics
The following internal diagnostics are permanently enabled and automatically executed.
The corresponding flags can be masked individually.
10.5.3.1 Control signal check (SM-06)
Checks, if the main data path processing was performed correctly. This status flag
can be masked with the mask control signal check bit of the ASIL_SETTING register;
see Table 49.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
24 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
10.5.3.2 BIST completion check (SM-07)
Checks, if all selected self-tests were executed without any errors. In case a failure mode
occurs at one selected test, the BIST completion check flag indicates this failure latest
after 2.08 ms.
In case the ASIL control block fails, the product goes into diagnostic mode, even if
the angle data path is not directly affected from this failure mode. This status flag can
be masked with the mask BIST completion check bit of the ASIL_SETTING register;
see Table 49.
10.5.3.3 BIST encoding check (SM-08)
The ASIL control module provides the test sequence number for all implemented
self-tests. To prove that this module is running normal, the state register of the ASIL
control module is coded with a parity bit to prevent single bit failures.
In case the ASIL control block fails, the product goes into diagnostic mode, even if
the angle data path is not directly affected from this failure mode. This status flag can
be masked with the mask BIST encoding check bit of the ASIL_SETTING register;
see Table 49.
10.5.3.4 SD-ADC range check (SM-09)
The SD-ADC is not using full scale range. Some part is reserved to detect overflows.
In case the filter result is larger than 95 % (including the gain factor) the overflow flag
is set. This status flag can be masked with the mask SD-ADC range check bit of the
ASIL_SETTING register; see Table 49.
10.5.3.5 Data adder check (SM-10)
The pre-CORDIC adder is used for AMR offset cancelation, new AMR offset value
calculation, and temperature calculation from the auxiliary ADC. In case overflow occurs,
the bit is set. This status flag can be masked with the mask data adder check bit of the
ASIL_SETTING register; see Table 49.
10.5.3.6 CORDIC range check (SM-11)
The CORDIC block, which is used for angle calculation, is using internally more than
16 bit. To prevent a wrap-around for unexpected sin/cos input signals, the block has a
built-in overflow monitor. In case overflow occurs, a status flag is set. This status flag
can be masked with the mask CORDIC range check bit of the ASIL_SETTING register;
see Table 49.
10.5.3.7 Angular range check (SM-12)
The clamp control checks the plausibility of the internal status flags coming from the
clamp and range detection. In case the clamp switch angle position was detected before
the range position, the flag is set. This status flag can be masked with the mask angular
range check bit of the ASIL_SETTING register; see Table 49.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
25 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
10.6 Self-diagnostic overview
Table 35. Self-diagnostic overview
Diagnostic block
Mode
Supply overvoltage detection (SM-16)
always
continuously
≤ 4 %VDD
Supply undervoltage detection (SM-17)
always
continuously
≤ 4 %VDD
Power-loss detection (SM-18)
(broken VDD wire)
always
continuously
≤ 4 %VDD
GND-loss detection (SM-19)
(broken GND wire)
always
continuously
≥ 96 %VDD
NVM CRC (SM-20)
startup
-
≤ 4 %VDD
NVM EDC double-bit error check (SM-21)
NVM read
-
≤ 4 %VDD
NVM error correcting code (ECC) single-bit NVM read
error check (SM-22)
-
SENT status nibble pre-warning bit
Magnetic field conversion check (SM-01)
always
Monitoring
interval
1.04 ms
Output behavior
[1]
analog:
≤ 4 %VDD or ≥ 96 %VDD
SENT ESP:
801h
ASIL_FLAGS: 0001h
Inverted angle calculation check (SM-02)
always
2.08 ms
[1]
analog:
≤ 4 %VDD or ≥ 96 %VDD
SENT ESP:
802h
ASIL_FLAGS: 0002h
Data division check (SM-03)
always
2.08 ms
[1]
analog:
≤ 4 %VDD or ≥ 96 %VDD
SENT ESP:
804h
ASIL_FLAGS: 0004h
Data conversion check (SM-04)
always
2.08 ms
[1]
analog:
≤ 4 %VDD or ≥ 96 %VDD
SENT ESP:
808h
ASIL_FLAGS: 0008h
Adjusted angle calculation check (SM-05)
always
2.08 ms
[1]
analog:
≤ 4 %VDD or ≥ 96 %VDD
SENT ESP:
810h
ASIL_FLAGS: 0010h
Control signal check (SM-06)
always
160 µs
[1]
analog:
≤ 4 %VDD or ≥ 96 %VDD
SENT ESP:
820h
ASIL_FLAGS: 0020h
BIST completion check (SM-07)
always
2.08 ms
[1]
analog:
≤ 4 %VDD or ≥ 96 %VDD
SENT ESP:
820h
ASIL_FLAGS: 0040h
BIST encoding check (SM-08)
always
1.25 µs
[1]
analog:
≤ 4 %VDD or ≥ 96 %VDD
SENT ESP:
840h
ASIL_FLAGS: 0080h
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
26 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
Diagnostic block
Mode
SD-ADC range check (SM-09)
always
Monitoring
interval
10 µs
Output behavior
[1]
analog:
≤ 4 %VDD or ≥ 96 %VDD
SENT ESP:
880h
ASIL_FLAGS: 0100h
Data adder check (SM-10)
always
1.25 µs
[1]
analog:
≤ 4 %VDD or ≥ 96 %VDD
SENT ESP:
900h
ASIL_FLAGS: 020h
CORDIC range check (SM-11)
always
160 µs
[1]
analog:
≤ 4 %VDD or ≥ 96 %VDD
SENT ESP:
A00h
ASIL_FLAGS: 0400h
Angular range check (SM-12)
always
160 µs
[1]
analog:
≤ 4 %VDD or ≥ 96 %VDD
SENT ESP:
C00h
ASIL_FLAGS: 0800h
Upper oscillator frequency check (SM-13)
always
continuously
≤ 4 %VDD
Lower oscillator frequency check (SM-14)
always
continuously
≤ 4 %VDD
Oscillator stuck-at check (SM-15)
always
continuously
≤ 4 %VDD
[1]
Depending on the diagnostic level setting.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
27 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
10.7 Self-diagnostic validation support
To validate the correct function of self-diagnostics within the system, enable the
self-diagnostic validation support bit 10 in SYS_SETTING register. In case this bit is
logic 1 the device shows diagnostic modes based on the content of OEM_CODE1
register; see Table 36. In case this bit is logic 0 the device is in normal operating mode
which is the default mode.
Table 36. Self-diagnostic validation support
OEM_CODE1 value
Safety mechanism
Comment
001h
SM-01
magnetic field conversion check
002h
SM-02
inverted angle calculation check
004h
SM-03
data division check
008h
SM-04
data conversion check
010h
SM-05
020h
040h
080h
100h
200h
400h
800h
[1]
adjusted angle calculation check
SM-06
[1]
control signal check
SM-07
[1]
BIST completion check
SM-08
[1]
BIST encoding check
SM-09
[1]
SD-ADC range check
SM-10
[1]
data adder check
SM-11
[1]
CORDIC range check
SM-12
[1]
angular range check
Disable the corresponding ASIL mask bits in the ASIL_SETTING register.
11 Limiting values
Table 37. Limiting values
In accordance with the Absolute Maximum Rating System (IEC 60134).
Symbol
Parameter
VDD
supply voltage
VO
output voltage
Conditions
[1]
Min
Max
Unit
−0.3
+18
V
−0.3
+18
V
Vth(ov)
18
V
-
150
mA
VO(ov)
overvoltage output voltage
Tamb < 140 °C at t < 1 h
Ir
reverse current
Tamb < 70 °C
Tamb
ambient temperature
−40
+150
°C
Tamb(pr)
programming ambient temperature
10
70
°C
Tstg
storage temperature
−40
+125
°C
tdiag
diagnostic time
-
100
h
Tamb = 50 °C
17
-
year
Tamb(pr) = 70 °C
100
-
cycle
output voltage level ≤ 4 %VDD or ≥ 96 %VDD
Non-volatile memory
tret(D)
data retention time
Nendu(W_ER) write or erase endurance
[1]
Overvoltage on output and supply within the specified operating voltage range.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
28 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
12 Recommended operating conditions
Table 38. Operating conditions
In a homogenous magnetic field.
Symbol
Parameter
Conditions
Min
Typ
Max
Unit
4.5
5.0
5.5
V
[1]
VDD
supply voltage
Tamb
ambient temperature
−40
-
+150
°C
Tamb(pr)
programming ambient temperature
10
-
70
°C
Hext
external magnetic field strength
25
-
-
Cblock(ext)
external blocking capacitance
100
200
300
nF
kA/m
Analog
RL(ext)
CL(ext)
[2]
external load resistance
5
-
∞
kΩ
[1][3]
1.1
2.2
25.3
nF
[3][4]
1.1
2.2
10.1
nF
[5]
10
-
55
kΩ
[1][3][6]
1.1
2.2
6.8
nF
external load capacitance
SENT
RL(ext)
CL(ext)
[1]
[2]
[3]
[4]
[5]
[6]
external load resistance
external load capacitance
Normal operation mode.
Power-loss detection is only possible with a load resistance within the specified range connected to the supply or ground line.
Between ground and output.
Command mode.
Pull-up resistance between output and supply.
Part of capacitance is defined as input capacitor inside receiver circuit according to SENT specification; see application information in Section 19.2.
13 Thermal characteristics
Table 39. Thermal characteristics
Symbol
Parameter
Conditions
Rth(j-a)
thermal resistance from junction to ambient
Typ
Unit
155
K/W
14 Characteristics
Table 40. Supply current
Characteristics are valid for the operating conditions, as specified in Section 12.
Symbol
Parameter
Conditions
Min
Typ
Max
Unit
[1][2]
5
-
10
mA
[3][4]
-
-
13
mA
overvoltage switch-off current
[5]
-
-
8.5
mA
short-circuit output current
[6]
-
-
30
mA
Analog
IDD
Ioff(ov)
IO(sc)
supply current
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
29 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
Symbol
Parameter
Conditions
Min
Typ
Max
Unit
[1][2]
5
-
12
mA
[3][4]
-
-
14
mA
SENT
IDD
supply current
IDD(ripple)
Ioff(ov)
IO(sc)
[1]
[2]
[3]
[4]
[5]
[6]
ripple supply current
peak-to-peak value
-
1
2
mA
overvoltage switch-off current
[5]
-
-
9.5
mA
short-circuit output current
[6]
-
-
32
mA
Normal operation and diagnostic mode excluding overvoltage and undervoltage within the specified operating supply voltage range.
Without load current at the output.
Normal operation and diagnostic mode over full voltage range up to limiting supply voltage at steady state.
With minimum load resistance at the output.
Diagnostic mode for a supply voltage above the overvoltage threshold voltage up to the limiting supply voltage.
Supply current if the output OUT/DATA is shorted to GND or VDD, respectively.
Table 41. Power-on reset
Characteristics are valid for the operating conditions, as specified in Section 12.
Symbol
Parameter
Conditions
Min
Typ
Max Unit
Vth(on)
switch-on threshold voltage
if VDD > Vth(on), output switches on
-
4.3
4.45 V
Vth(off)
switch-off threshold voltage
if VDD < Vth(off), output switches off
3.9
4.1
-
V
Vhys
hysteresis voltage
Vhys = Vth(on) − Vth(off)
0.1
0.2
-
V
VPOR
power-on reset voltage
IC is initialized
-
3.3
3.6
V
Vth(ov)
overvoltage threshold voltage
if VDD > Vth(ov), output switches off
6.5
7.5
8
V
Vhys(ov)
overvoltage hysteresis voltage
0.1
0.3
-
V
Table 42. Performance
Characteristics are valid for the operating conditions, as specified in Section 12.
Symbol
Δϕlin
Δϕtemp
Parameter
[1][2]
linearity error
temperature drift error at
room temperature
Δϕhys
hysteresis error
Typ
Max
Unit
−0.95
-
+0.95
deg
-
-
0.55
deg
[2][3][5]
-
-
0.55
deg
referred to input
[1][2]
-
-
0.09
deg
referred to input
[1][2]
−0.1
-
+0.1
deg
angular error
[1][2][6]
−1.15
-
+1.15
deg
mang
slope of angular error
[1][2][6]
-
-
0.04
deg/deg
ZO(pl)
power-loss output
impedance
-
-
210
Ω
Δϕang
microlinearity error
Min
[1][2][3][4]
temperature drift error
Δϕtemp|RT
Δϕµlin
Conditions
KMZ80
Product data sheet
impedance to remaining
supply line in case of lost
supply voltage or lost ground
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
30 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
Symbol
Parameter
Conditions
Min
Typ
Max
Unit
Analog
angle resolution
[4]
-
-
0.04
deg
αmax
maximum angle
programmable angular range
for V(CL)u − V(CL)l ≥ 80 %VDD
[7]
6
-
180
deg
αref
reference angle
programmable zero angle
[7]
0
-
180
deg
VO(nom)
nominal output voltage
at full supply operating range
αres
5 %VDD
-
95 %VDD
V
96 %VDD
-
100 %VDD
V
VO(udr)
upper diagnostic range
output voltage
[1][8][9]
VO(ldr)
lower diagnostic range
output voltage
[1][8][9]
0 %VDD
-
4 %VDD
V
V(CL)u
upper clamping voltage
[1][9][10]
40 %VDD
-
95 %VDD
V
lower clamping voltage
[1][9][10]
V(CL)l
5 %VDD
-
30.5 %VDD V
−0.3 %VDD
-
+0.3 %VDD V
ΔV(CL)
clamping voltage variation deviation from programmed
value
[1][9]
Vn(o)(RMS)
RMS output noise voltage
[1][4]
-
0.4
2.5
mV
angle resolution
[11]
-
-
0.044
deg
Vn(o)(RMS)
RMS output noise voltage
equivalent power noise
[12]
-
-
1
LSB
VOH
HIGH-level output voltage
at 0.1 mA DC load current
4.1
-
4.7
V
VOL
LOW-level output voltage
at 0.5 mA DC load current
equivalent power noise
SENT
αres
-
-
0.5
V
−10
-
+10
°C
-
1
-
°C
Tsen(acc)
sensor temperature
accuracy
[13]
Tsen(res)
sensor temperature
resolution
[13]
Vsen(acc)
sensor voltage accuracy
−250
-
+250
mV
Vsen(res)
sensor voltage resolution
-
17.5
-
mV
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
At a low-pass filtered analog output with a cut-off frequency of 0.7 kHz.
Definition of errors is given in Section 15.
Based on a 3σ standard deviation.
At a nominal output voltage between 5 %VDD and 95 %VDD and a maximum angle of αmax = 180°.
Room temperature is given for an ambient temperature of 25 °C.
Graph of angular error is shown in Figure 14.
In steps of resolution < 0.0027°.
Activation is dependent on the programmed diagnostic mode.
Settling to these values is limited by 0.7 kHz low-pass filtering of analog output.
In steps of 0.02 %VDD.
At a maximum angle of αmax = 180°.
Based on 12 bit.
Sensor temperature refers to the on-chip temperature.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
31 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
aaa-029363
1.15
ang
(deg)
0.65
0
-20
-16 -13.5
-1 0 1
13.5 16
α1 - α0 (deg)
20
Figure 14. Envelope curve for the magnitude of angular error
Table 43. Dynamics
Characteristics are valid for the operating conditions, as specified in Section 12.
Symbol
Parameter
Conditions
ton
turn-on time
until first valid result
fupd
update frequency
ts
settling time
after an ideal mechanical angle step
of 45°, until 90 % of the final value is
reached
[1]
FTTI
fault tolerant time interval
time until the device will go into safe
state after internal error occurs
[2]
tcmd(ent)
enter command mode time after power-on
trec(ov)
overvoltage recovery time
after overvoltage
Min
Typ
Max
Unit
-
-
1
ms
kHz
5.5125
6.25
-
250
400
500
µs
-
-
5
ms
20
-
30
ms
-
-
1
ms
kHz
SENT
fupd
Tclk
tjit
update frequency
[3]
1.2
-
2.2
clock period
[4]
2.4
2.67
3
µs
SENT clock tick time = 3 µs
2.7
3
3.3
µs
SENT clock tick time = 4.5 µs
3.6
4.5
5.4
µs
SENT clock tick time = 6 µs
4.8
6
7.2
µs
Tclk = 2.7 µs
-
-
0.09
µs
Tclk = 3 µs
-
-
0.1
µs
Tclk = 4.5 µs
-
-
0.15
µs
Tclk = 6 µs
-
-
0.2
µs
jitter time
KMZ80
Product data sheet
SENT clock tick time = 2.7 µs
variation of maximum nibble time
(6σ) compared to the expected time
derived from the calibration pulse
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
32 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
Symbol
Parameter
Conditions
tf
fall time
from 3.8 V to 1.1 V output level
tr
rise time
tstab
[1]
[2]
[3]
[4]
stabilization time
Min
Typ
Max
Unit
slope time: 00b; Tclk = 2.7 µs
4.1
5.3
6.5
µs
slope time: 01b; Tclk = 3 µs
4.1
5.3
6.5
µs
slope time: 10b; Tclk = 4.5 µs
6.1
7.1
9.75
µs
slope time: 11b; Tclk = 6 µs
8.2
10.7
13
µs
slope time: 00b; Tclk = 2.7 µs
5.2
7.1
8.7
µs
slope time: 01b; Tclk = 3 µs
5.2
7.1
8.7
µs
slope time: 10b; Tclk = 4.5 µs
10.3
14.2
17.4
µs
slope time: 11b; Tclk = 6 µs
15.5
21.3
26.1
µs
Tclk = 2.7 µs
6
-
-
µs
Tclk = 3 µs
6
-
-
µs
Tclk = 4.5 µs
9
-
-
µs
Tclk = 6 µs
12
-
-
µs
from 1.1 V to 3.8 V output level
output level below 1.39 V (LOW) or
above 3.8 V (HIGH)
The mechanical angle step is not synchronized with the SENT frame. Thus the worst case settling time is extended with the length of a complete SENT
frame.
Refers to analog output; additional information including times for digital output is provided in the safety manual.
SENT update rate at Tclk = 3 µs, 6 DATA nibbles, and no PAUSE pulse.
12 bit fast mode.
Table 44. Digital interface
Characteristics are valid for the operating conditions, as specified in Section 12.
Symbol
Parameter
VIH
Min
Typ
Max
HIGH-level input voltage
80 %VDD
-
-
VIL
LOW-level input voltage
-
-
VOH
HIGH-level output voltage
IO = 2 mA
80 %VDD
-
VOL
LOW-level output voltage
IO = 2 mA
-
-
Iod
overdrive current
absolute value for overdriving the
output buffer
-
-
20
mA
tstart
start time
LOW level before rising edge
5
-
-
µs
tstop
stop time
HIGH level before falling edge
5
-
-
µs
Tbit
bit period
the load capacitance limits the
minimum period
10
-
100
µs
ΔTbit
bit period deviation
deviation between received clock and
sent clock
0.8Tbit
1Tbit
1.2Tbit
µs
tw0
pulse width 0
0.175Tbit
0.25Tbit
0.375Tbit µs
tw1
pulse width 1
0.625Tbit
0.75Tbit
0.825Tbit µs
KMZ80
Product data sheet
Conditions
[1]
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
Unit
V
20 %VDD V
-
V
20 %VDD V
© NXP B.V. 2020. All rights reserved.
33 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
Symbol
Parameter
Conditions
Min
Typ
Max
tto
time-out time
communication reset guaranteed
after maximum tto
250
-
-
µs
ttko(slv)
slave takeover time
duration of LOW level for slave
takeover
1
-
5
µs
ttko(mas)
master takeover time
duration of LOW level for master
takeover
0Tbit
-
0.5Tbit
µs
tprog
programming time
for a single memory address
20
-
-
ms
[1]
Unit
In SENT mode, the OUT/DATA pin must be kept HIGH for at least tto before sending the initial command sequence to enter the command mode.
15 Definition of errors
15.1 General
Angular measurement errors by the device result from linearity errors, temperature drift
errors, and hysteresis errors. Figure 15 shows the output signal of an ideal sensor,
where the measured angle ϕmeas corresponds ideally to the magnetic field angle α. This
curve represents the angle reference line ϕref(α) with a slope of 0.5 %VDD/degree and
22.75 LSB/degree for SENT mode respectively.
meas
(deg)
ref(α)
180
α (deg)
001aag812
Figure 15. Definition of the reference line
The angular range is set to αmax = 180° and the clamping voltages are programmed to
V(CL)l = 5 %VDD and V(CL)u = 95 %VDD for a valid definition of errors.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
34 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
15.2 Hysteresis error
The device output performs a positive (clockwise) rotation and negative (counter
clockwise) rotation over an angular range of 180° at a constant temperature.
The maximum difference between the angles defines the hysteresis error Δϕhys.
meas
(deg)
hys
α (deg)
180
001aag813
Figure 16. Definition of the hysteresis error
Equation (1) gives the mathematical description for the hysteresis value Δϕhys:
(1)
15.3 Linearity error
The device output signal deviation from a best straight line ΔϕBSL, with the same slope as
the reference line, is defined as linearity error. The magnetic field angle is varied at fixed
temperatures for measurement of this linearity error. The output signals deviation from
the best straight line at the given temperature is the linearity error Δϕlin. It is a function of
the magnetic field angle α and the temperature of the device Tamb.
meas
(deg)
BSL(α, Tamb)
ref(α)
lin(α, Tamb)
180
α (deg)
001aag814
Figure 17. Definition of the linearity error
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
35 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
15.4 Microlinearity error
α is the magnetic field angle. If Δα = 1°, the microlinearity error Δϕlin is the device output
deviation from 1°.
meas
(deg)
ref(α)
meas
µlin(α)
α (deg)
001aag815
Figure 18. Definition of the microlinearity error
15.5 Temperature drift error
The temperature drift Δϕtemp is defined as the envelope over the deviation of the angle
versus the temperature range. It is considered as the pure thermal effect.
meas
(deg)
Ty
Tx
temp
180
α (deg)
001aag816
Figure 19. Definition of the temperature drift error
Equation (2) gives the mathematical description for temperature drift value Δϕtemp:
(2)
With:
Tx: temperature for maximum ϕmeas at angle α
Ty: temperature for minimum ϕmeas at angle α
The deviation from the value at room temperature Δϕtemp|RT describes the temperature
drift of the angle, compared to the value, which the sensor provides at room temperature:
(3)
With:
TRT: room temperature (25 °C)
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
36 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
15.6 Angular error
The angular error Δϕang is the difference between mechanical angle and sensor
output during a movement from α0 to α1. Here α0 and α1 are arbitrary angles within the
angular range. The customer initially programs the angle measurement at α0 at room
temperature and zero hour upon production. The angle measurement at α1 is made at
any temperature within the ambient temperature range:
(4)
With:
α0, α1: arbitrary mechanical angles within the angular range
ϕmeas(α0, TRT): programmed angle at α0, TRT = 25 °C and zero hour upon production
ϕmeas(α1, Tamb): the sensor measures angle at α1 and any temperature within Tamb
This error comprises non-linearity and temperature drift related to the room temperature.
|
ang|
mang
|
|
µlin +
-α*
ang(peak)|
temp|RT|
α0 - 1° α0 + 1°
α0
+α*
α1
001aal766
Figure 20. Envelope curve for the magnitude of angular error
Figure 20 shows the envelope curve for the magnitude of angular error |Δϕang| versus α1
for all angles α0 and all temperatures Tamb within the ambient temperature range. If α1 is
in the range of ±1° around α0, |Δϕang| has its minimum. Here only the microlinearity error
Δϕµlin and the temperature drift related to the room temperature |Δϕtemp|RT| occurs. If α1
deviates from α0 by more than 1° in either direction, |Δϕang| can increase. Slope mang
defines the gradient.
Equation (5) to Equation (8), express the angular error:
For |α1 – α0| ≤ 1°
(5)
For 1° < |α1 – α0| < α*
(6)
For |α1 – α0| ≥ α*
(7)
With:
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
37 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
(8)
16 Programming
16.1 General description
The device provides an OWI to enable programming of the device which uses
pin OUT/DATA bidirectionally.
In general the device runs in analog or SENT mode, the normal operation mode. The
embedded programming data configures this mode. After a power-on reset once time
ton has elapsed, it starts. In this mode, the magnetic field angle is converted into the
corresponding output voltage.
A second mode, the command mode enables programming. In this mode, the customer
can adjust all required parameters (for example zero angle and angular range) to meet
the application requirements. Data is stored in the non-volatile memory. After changing
the contents of the memory, recalculate and write the checksum (see Section 16.4).
In order to enter the command mode keep pin OUT/DATA HIGH for at least tto and send
a specific command sequence after a power-on reset and during the time slot tcmd(ent).
The external source used to send the command sequence must overdrive the output
buffer of the device. In doing so, it provides current Iod.
During communication, the KMZ80 is always the slave and the external programming
hardware is always the master. Figure 21 illustrates the structure of the OWI data format.
write
IDLE
START COMMAND DATA BYTE 1 DATA BYTE 2 STOP
IDLE
read
IDLE
START COMMAND HANDOVER DATA BYTE 1 DATA BYTE 2 TAKEOVER STOP IDLE
001aag742
Figure 21. OWI data format
The master provides the start condition, which is a rising edge after a LOW level. Then a
command byte which can be either a read or a write command is sent. Depending on the
command, the master or the slave has to send the data immediately after the command
sequence. If there is a read command, an additional handover or takeover bit is inserted
before and after the data bytes. The master must close each communication with a stop
condition. If the slave does not receive a rising edge for a time longer than tto, a timeout
condition occurs. The bus is reset to the idle state and waits for a start condition and a
new command. This behavior can be used to synchronize the device regardless of the
previous state.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
38 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
All communication is based on this structure (see Figure 21), even for entering the
command mode. The customer can access the non-volatile memory, CTRL1, and
SIGNATURE registers (described in Section 16.5). Only a power-on reset leaves the
command mode. A more detailed description of the programming is given in the next
sections.
16.2 Timing characteristics
As described in the previous section, a start and stop condition is necessary for
communication. The LOW-level duration before the rising edge of the start condition
is defined as tstart. The HIGH-level duration after the rising edge of the stop condition
is defined as tstop. These parameters, together with all other timing characteristics are
shown in Table 44.
tstart
tstop
001aag817
Figure 22. OWI start and stop condition
Figure 23 shows the coding of a single bit with a HIGH level of VIH and a LOW level of
VIL. Here the pulse width tw1 or tw0 represents a logic 1 or a logic 0 of a full bit period Tbit,
respectively.
bit = 0
bit = 1
Tbit
0.175
Tbit
0.375
0.625
tw0
0.825
tw1
0.25
0.75
001aag818
Figure 23. OWI timing
16.3 Sending and receiving data
The master has to control the communication during sending or receiving data. The
command byte defines the address and type of command the master requests. Read
commands need an additional handover or takeover bit. Insert this bit before and after
the two data bytes (see Figure 21). However, the OWI is a serial data transmission,
whereas the MSB is sent at first.
Table 45. Format of command byte
KMZ80
Product data sheet
7
6
5
4
3
2
1
0
CMD7
CMD6
CMD5
CMD4
CMD3
CMD2
CMD1
CMD0
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
39 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
Table 46. Command byte description
Bit
Symbol
Description
7 to 1
CMD[7:1]
address bits
0
CMD0
0 = write
1 = read
A more detailed description of all customer accessible registers is given in Section 16.5.
Both default value and the complete command including the address and write or read
request are also listed.
16.3.1 Write access
To write data to the non-volatile memory, perform the following procedure for write
access:
1.
2.
3.
4.
Start condition: The master drives a rising edge after a LOW level
Command: The master sends a write command (CMD0 = 0)
Data: The master sends two data bytes
Stop condition: The master drives a rising edge after a LOW level
Figure 24 shows the write access of the digital interface. The signal OWI represents
the data on the bus from the master or slave. The signals: master output enable and
slave output enable indicate when the master or the slave output is enabled or disabled,
respectively.
START
CMD7
CMD0
WDATA15
WDATA0
STOP
IDLE
master
output
enable
OWI
(2)
slave
output
enable
(1)
001aag743
1. Missing rising edges generate a timeout condition and the written data is ignored.
2. If the master does not drive the bus, the bus-pull defines the bus.
Figure 24. OWI write access
Note: As already mentioned in Section 16.1, use the write procedure to enter the
command mode. If command mode is not entered, communication is not possible and
the sensor operates in normal operation mode. After changing an address, the time
tprog must elapse before changing another address. After changing the contents of the
non-volatile memory, recalculate and write the checksum (see Section 16.4).
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
40 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
16.3.2 Read access
To read data from the sensor, perform the following procedure:
1. Start condition: The master drives a rising edge after a LOW level
2. Command: The master sends a read command (CMD0 = 1)
3. Handover: The master sends a handover bit that is a logic 0 and disables the output
after a three-quarter bit period
4. Takeover: The slave drives a LOW level after the falling edge for ttko(slv)
5. Data: The slave sends two data bytes
6. Handover: The slave sends a handover bit that is a logic 0 and disables the output
after a three-quarter bit period
7. Takeover: The master drives a LOW level after the falling edge for ttko(mas)
8. Stop condition: The master drives a rising edge after a LOW level
Figure 25 shows the read access of the digital interface. The signal OWI represents
the data on the bus from the master or slave. The signals: master output enable and
slave output enable indicate when the master or the slave output is enabled or disabled,
respectively.
START
CMD7
CMD0
HANDSHAKE
RDATA15
master
output
enable
RDATA0
HANDSHAKE
STOP
IDLE
(3)
OWI
(5)
(1)
slave
output
enable
(2)
(2)
(4)
001aag744
1. Duration of LOW level for slave takeover ttko(slv).
2. The master output enable and the slave output enable overlap, because both drive a LOW
level. However this behavior ensures the independency from having a pull-up or pull-down on
the bus. In addition, it improves the EMC robustness, because all levels are actively driven.
3. Duration of LOW level for master takeover ttko(mas).
4. If the master does not take over, the pull-up generates the stop condition. Otherwise a
timeout is generated if there is a pull-down and the slave waits for a rising edge as start
condition.
5. If the master does not drive the bus, the bus-pull defines the bus.
Figure 25. OWI read access
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
41 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
16.3.3 Entering the command mode
After a power-on reset, the sensor provides a time slot tcmd(ent) for entering the command
mode. Send a specific command sequence (see Figure 26). If command mode is not
entered, the sensor starts in the normal operation mode. If the sensor stays in the
diagnostic mode, the master can write the signature without a power-on reset.
During the command mode sequence, the output is enabled. The external programming
hardware has to overdrive the output with current Iod. If command mode is activated, the
output is disabled and pin OUT/DATA operates as a digital interface.
tcmd(ent)
VDD
OWI
START
B4h
83h
command
64h
STOP
signature
aaa-028148
Figure 26. OWI command mode procedure
16.4 Cyclic redundancy check
As mentioned in Section 10.1, there is an individual 8-bit checksum for each non-volatile
memory area. Bit 8 of the CTRL1 register indicates a checksum error of customer area
1, 2 or 3 as well as the manufacturer area of the NVM including the traceability registers.
Generate the CRC with the MSB of the data word first over all corresponding addresses
in increasing order for the corresponding memory area, to calculate the checksums.
Read out all registers of the non-volatile memory area for calculating the checksum.
The LSB contains the previous checksum and must be overwritten with 0h before the
calculation can be started.
The generator polynomial for the calculation of the checksum is:
(9)
8
With a seed value of AAh and the data bits are XOR at the x point.
KMZ80
Product data sheet
All information provided in this document is subject to legal disclaimers.
Rev. 4 — 11 November 2020
© NXP B.V. 2020. All rights reserved.
42 / 71
KMZ80
NXP Semiconductors
Programmable angle sensor IC
16.4.1 Software example in C++
#include "stdafx.h"
#include "conio.h"
unsigned int calculate_crc(unsigned int crc, unsigned int
data_word)
{
const unsigned int gpoly = 0x107;
// generator polynomial
for (int i = 15; i >= 0; i--)
{
crc