SLVSBC4G May 2012 – June 2017 TPS65381-Q1
PRODUCTION DATA.
The device integrates an asynchronous-buck switch mode power-supply converter with an internal FET that converts the input battery voltage to a 6-V preregulator output, which supplies the integrated regulators.
A fixed 5-V linear regulator with an internal FET is integrated to be used as, for example, a CAN supply. A second linear regulator, also with an internal FET, regulates the 6 V to a selectable 5-V or 3.3-V MCU I/O voltage. A linear regulator controller with an external FET and resistor-divider regulates the 6 V to an externally adjustable core voltage of between 0.8 V and 3.3 V. A linear regulator with two different modes of operation (tracking mode and non-tracking mode) with adjustable voltage between 3.3 V and 9.5 V can be used as a supply for external sensor.
The device monitors undervoltage and overvoltage on all regulator outputs, battery voltage, and internal supply rails. A second band-gap reference, independent from the main band-gap reference used for regulation circuit, is used for undervoltage and overvoltage monitoring. In addition, regulator current-limits and temperature protections are implemented.
The device supports wakeup from IGNITION or wakeup from a CAN transceiver.
The purpose of the VDD6 buck switch-mode power supply is to reduce the power dissipation inside the device as a preregulator. The VDD6 supply regulates from the battery voltage (main supply) range to 6 V. The VDD6 output is used as the input voltage for the VDD5, VDD3/5, VDD1, and can also be used for VSOUT1 regulator depending on the required VSOUT1 output voltage. The VDD6 supply is intended as a preregulator, therefore the output accuracy of VDD6 is less than the other integrated regulators. The VDD6 current capability is set to supply the VDD5, VDD3/5, VDD1, and VSOUT1 regulators at their respective maximum output currents. Power dissipation and thermal analysis should be performed to ensure the PCB design and thermal management can support the required power dissipation in the application.
This switch-mode power supply operates with fixed-frequency adaptive on-time control PWM. The control loop is based on a hysteretic comparator. The internal N-channel MOSFET is turned on at the beginning of each cycle if the sensed voltage on the VDD6 pin is below the hysteretic comparator threshold. When the MOSFET is turned on, it is on for a minimum of 7% duty cycle (7% of fclk_VDD6). This MOSFET is turned off when the hysteretic comparator detects a voltage on the VDD6 pin above the threshold. The VDD6 regulator may skip pulses if the output voltage remains above the hysteretic comparator when the clock edge occurs. When the MOSFET is turned off, the external Schottky diode recirculates the energy stored in the inductor for the remainder of the switching period. The VDD6 regulator enters dropout mode (100% duty cycle) for a supply voltage below approximately 7 V on the VBATP pin.
The internal MOSFET is protected from excessive power dissipation by a current-limit circuit. The VDD6 regulator also shares an overtemperature protection circuit with the VDD3/5 regulator. When overtemperature is detected by this circuit, the device transitions to the STANDBY state (all regulators switched off).
Because the control loop of the VDD6 regulator is based on a hysteretic comparator, the effective capacitance on the output, and effective series resistance (ESR) of the output capacitance must be considered. The effective capacitance of the output capacitors at the operating voltage (6 V, DC bias derating), tolerance, temperature range, and lifetime must meet the effective capacitance range for VDD6 (CVDD6). The capacitor supplier should provide the necessary derating data to calculate the effective capacitance. The hysteretic comparator also requires a specified ESR to ensure balanced operation. Typically low-ESR ceramic capacitors are used for the output, so an external resistor is required to bring the total ESR into the specified ESR range for the CVDD6. A general guideline to achieve balanced operation is RESR = L / (15 × CEffective). Using a higher-effective output capacitance allows for a lower ESR, which leads to lower-voltage ripple. Additionally, the inductance influences the system: using a lower inductance value allows for lower ESR, however, the peak inductor current will be higher.
The VDD5 pin is a regulated supply of 5 V ±2% overtemperature and battery supply range. A low-ESR ceramic capacitor is required for loop stabilization. This capacitor must be placed close to the pin of the device. This output is protected against shorts to ground by a current-limit. This output also limits output-voltage overshoot during power up and during line or load transients.
On an initial IGN or CANWU power cycle, the soft-start circuit on this regulator is initiated, which is typically from 1 ms to 2 ms. This output can require a larger output capacitor to ensure that during load transients the output does not drop below the required regulation specifications.
The internal MOSFET is protected from excess power dissipation with junction-overtemperature protection. In case of an overtemperature condition in the VDD5 pin, only the VDD5 regulator switches off by clearing bit D4 in the SENS_CTRL register. To re-enable the VDD5 pin, bit D4 in the SENS_CTRL register must be set again.
The VDD3/5 pin is a regulated supply of 3.3 V or 5 V ±2% overtemperature and battery supply range. The output voltage level is selected with the SEL_VDD3/5 pin (open pin selects 3.3 V, grounded pin selects 5 V). The state of this selection pin is sampled and latched directly at the first initial IGN or CANWU power cycle. When latched, any change in the state of this selection pin after the first initial IGN or CANWU power cycle does not change the initially selected state of the VDD3/5 regulator.
A low-ESR ceramic capacitor is required for loop stabilization. This capacitor must be placed close to the pin of the device. This output is protected against shorts to ground by a current-limit. This output also limits output-voltage overshoot during power up or during line or load transients.
On an initial IGN or CANWU power cycle, the soft-start circuit on this regulator is initiated, which is typically from 1 ms to 2 ms. This output may require a larger output capacitor to ensure that during load transients the output does NOT drop below the required regulation specifications.
The internal MOSFET is protected from excess power dissipation with a current-limit circuit and junction overtemperature protection. In case of an overtemperature in the VDD3/5 pin, the TPS65381-Q1 device enters the STANDBY state (all regulators switched-off).
The VDD1 pin is an adjustable regulated supply from 0.8 V to 3.3 V. This regulator uses a ±2% reference (VDD1SENSE). The tolerance of the external feedback resistor divider resistors have an impact to the overall VDD1 regulation tolerance. To reduce on-chip power consumption, an external power NMOS is used. The regulation loop and the command gate drive are integrated. TI recommends applying a resistor with a value of 100 kΩ to 1 MΩ between the gate and source of the external power NMOS. The VDD1 gate output is limited to prevent gate-source overvoltage stress during power up or during line or load transients.
On an initial IGN or CANWU power cycle, the soft-start circuit on this regulator is initiated, which is typically from 1 ms to 2 ms. This soft-start is meant to prevent any voltage overshoot at start-up. The VDD1 output may require larger output capacitor to ensure that during load transients the output does not drop below the required regulation specifications.
The VDD1 LDO has no current-limit and no overtemperature protection for the external NMOS FET. Therefore, supplying the VDD1 pin from the VDD6 pin is recommended (see Section 5.2). In this way, the VDD6 pin current-limit acts as current-limit for the VDD1 pin and the power dissipation is limited also. To avoid damage in the external NMOS FET, selecting the current rating of the VDD1 pin well above the maximum-specified VDD6 current-limit is recommended.
If the VDD1 regulator is not used, leave the VDD1_G and VDD1_SENSE pins open. An internal pullup device on the VDD1_SENSE pin detects the open connection and pulls up the VDD1_SENSE pin. This forces the regulation loop to bring the VDD1_G output down. This mechanism also masks the VDD1_OV flag in VMON_STAT_2 register and therefore the ENDRV pin action from a VDD1 overvoltage (OV) condition is also masked. These actions are equivalent to clearing the NMASK_VDD1_UV_OV bit in the DEV_CFG1 register to 0. This internal pullup device on the VDD1_SENSE pin also prevents a real VDD1 overvoltage on the MCU core supply in case of an open connection to the VDD1_SENSE pin, as it brings the VDD1_G pin down. Therefore, in this situation, the VDD1 output voltage is 0 V.
By default, VDD1 monitoring is disabled. If the VDD1 pin is used in the application, TI recommends to set the NMASK_VDD1_UV_OV bit in the DEV_CFG1 register to 1 when the device is in the DIAGNOSTIC state. This setting enables driving and extending the reset to the external MCU when a VDD1 undervoltage event is detected.
The VSOUT1 regulator is a regulated supply with two separate modes: tracking mode and non-tracking mode. The mode selection occurs with the VTRACK1 pin. When the voltage applied on the VTRACK1 pin is above 1.2 V, the VSOUT1 pin is in tracking mode. When the VTRACK1 pin is shorted to ground, the VSOUT1 regulator is in non-tracking mode. This mode selection occurs during the first ramp-up of the VDDx rails and is latched after the first VDDx ramp-up is complete. Therefore, after completion of the VDDx ramp-up, any change on the VTRACK1 pin no longer affects the selected tracking or non-tracking mode.
In tracking mode, the VSOUT1 regulator tracks the input reference voltage on the VTRACK1 pin with a gain factor determined by the external resistive divider. The tracking offset between the VTRACK1 and VSFB1 pins is ±35 mV. This mode allows, for instance, the VSOUT1 output voltage to be 5 V while tracking the VDD3 (3.3-V) supply. In unity-gain feedback, the VSOUT1 output voltage can directly follow the VDD5 pin or the VDD3 pin.
In non-tracking mode, the VSOUT1 output voltage is proportional to a fixed reference voltage of 2.5 V at the VSFB1 pin, with a gain factor determined by the external resistive divider. This mode allows the VSOUT1 pin to be any factor of the internal reference voltage.
Both in tracking and non-tracking mode, the VSOUT1 output voltage must be 3.3 V or higher. The VSOUT1 regulator can track the VDD3/5 pin in 3.3-V setting within the specified limits.
The VSOUT1 regulator has a separate input supply to reduce the internal power dissipation. For an output voltage of 3.3 V or 5 V, for instance, the VDD6 supply can be used as the input supply. For an output voltage greater than 5 V, the VBATP pin can be used as the input supply. The maximum power dissipation for the internal FET must not exceed 0.6 W to avoid overtemperature (thermal shutdown).
A low-ESR ceramic capacitor is required for loop stabilization; this capacitor must be placed close to the pin of the device. This supply limits output-voltage overshoot during power up or during line or load transients.
This supply rail is intended for going outside the ECU and therefore is protected against shorts to external chassis ground by a current-limit. The supply rail can be shorted externally within the specified short circuit voltages, VSOUT1SH. If the output can be shorted to voltages outside the specified short circuit voltage range, additional external protection is required.
The VSOUT1 regulator is disabled by default on start-up. After the NRES pin release, the MCU can enable the VSOUT1 regulator through a SPI command by setting bit D0 in the SENS_CTRL register. After this SPI command, the soft-start circuit on this regulator is initiated, which is typically from 1 ms to 2 ms. This output may require a larger output capacitor to ensure that during load transients the output does NOT drop below the required regulation specifications. Regardless of tracking or non-tracking mode, the VSFB1 pin is ramped to the desired value after completion of the soft start.
The internal MOSFET is protected from excess power dissipation with a current-limit circuit and junction-overtemperature protection. In case of an overtemperature condition in the VSOUT1 pin, only the VSOUT1 regulator is switched off by clearing bit 0 in the SENS_CTRL register. To re-enable the VSOUT1 pin, first bit 2 in the SAFETY_STAT 1 register must be cleared on read-out, and afterwards bit 0 in the SENS_CTRL register must be set again.
The VSOUT1 pin voltage can be observed by the ADC input of the MCU through the DIAG_OUT pin (see Section 5.4.9), which allows the detection of a short to any other supply prior to enabling the VSOUT1 LDO.
NOTE
The VSOUT1_EN bit is in the SENS_CTRL register which is only reinitialized by a power-on reset (NPOR) event and not a transition through the RESET state. If the VSOUT1_EN bit was previously set to 1, it remains set to 1 and the VSOUT1 regulator remains enabled after events that cause a transition to the RESET state. In a fault case that would cause an undervoltage or overvoltage on the VSOUT1 pin, when a BIST runs automatically on the transition from the RESET to the DIAGNOSTIC state, the VSOUT1_UV or VSOUT1_OV condition during the BIST run would cause the device to go to the SAFE state because of the detected ABIST_ERR.
The charge pump is used to generate an overdrive voltage from the VBATP supply that is used for driving the gates of the internal NMOS FETs in the VDDx and VSOUT1 supply rails. The charge pump is a hysteretic architecture, when the VCP voltage is high enough, the CP_OV bit sets and the charge pump stops pumping until the VCP voltage drops below the threshold, the CP_OV bit clears and the charge pump starts pumping again. The charge pump overdrive is provided internally to the device through the linear regulators, VCP12 and VCP17. Furthermore, this overdrive voltage can drive the gate of an external NMOS FET acting as reverse-battery protection. Such reverse-battery protection allows for lower battery voltage operation compared to a traditional reverse battery-blocking diode. When using the charge pump (VCP) to drive the gate of an NMOS for reverse battery protection, a series resistance of about 10 kΩ must be connected between the VCP pin and the gate of the NMOS FET (see Section 5.2). This series resistance is required to limit any current out of the VCP pin when the gate of the NMOS FET is driven to a negative voltage, because the absolute maximum rating of the VCP pin is limited to –0.3 V because of a parasitic reverse diode to the substrate (ground).
The charge pump requires two external capacitors, one pumping capacitor (Cpump) and one storage capacitor (Cstore). To have sufficient overdrive voltage out of the charge pump even at low battery voltage, the external load current on the VCP pin must be less than 100 µA.
The TPS65381-Q1 device has two wake-up pins: IGN and CANWU. Both pins have a wake-up threshold level from 2 V to 3 V, and a hysteresis from 50 mV to 200 mV.
The IGN wake-up pin is level-sensitive and is deglitched with the IGN_deg deglitch (filter) time. The TPS65381-Q1 device provides a power-latch function (POST_RUN) for this IGN pin, allowing the MCU to decide when to power down the TPS65381-Q1 device through SPI command. For this, the MCU must set the IGN power-latch bit 4 (IGN_PWRL) in the SPI SAFETY_FUNC_CFG register, and read the unlatched status of the deglitched (filtered) IGN pin on the SPI register, DEV_STAT, bit 0 (IGN). To enter the STANDBY state, the MCU must clear the IGN_PWRL bit. For this, the TPS65381-Q1 device must be in the DIAGNOSTIC state because this SPI register is only writable in the DIAGNOSTIC state. The IGN_PWRL bit is also cleared after a detected CANWU wake-up event. Furthermore, the TPS65381-Q1 device provides an optional transition to the RESET state after a detected IGN wake-up during POST_RUN (see Figure 5-2).
The CANWU pin is level sensitive and is deglitched with CANWU_deg (filter) time. The deglitched (filtered) CANWU wake-up signal is latched, into CANWU_L, allowing the MCU to decide when to power down the TPS65381-Q1 device through the WR_CAN_STBY SPI command.
NOTE
The WR_CAN_STBY command should not be written to the device while the CANWU pin or IGN pin is still high. The device starts to transition to the STANDBY state and immediately transitions to the RESET state because of the wake-up request received on the CANWU or IGN pin. The registers are reinitialization according to post LBIST (because of a RESET transition) or according to NPOR (because of a STANDBY transition).
Both the IGN and CANWU pins are high voltage pins. If the pins are connected to lines with transients, the application should provide proper filtering and protection to ensure the pins stay within the specified voltage range.
NOTE
If the application does not require wake up from IGN (ignition or KL15) or wake up from CANWU (a CAN or other transceiver), but the device should wake up any time power is supplied, one method is to connect the IGN pin to the VBATP pin (and VBAT_SAFING) through a 10-kΩ or greater series resistor. When the VBATP supply is turned on, the IGN pin also goes high and allows the device to wake up (power up) as soon as the voltage levels allow the release of NPOR circuits for the VBATP and VBAT_SAFING pins, and the IGN pin is high.
During a power-up event, the TPS65381-Q1 device releases the reset to the external MCU through the NRES pin with a certain delay time (reset extension time) after the VDD3/5 and VDD1 pins have crossed the respective undervoltage thresholds.
This reset extension time is externally configurable with a resistor between the RESEXT pin and ground. When shorting the RESEXT pin to ground, the minimum reset extension time is typically 1.4 ms. For a 22-kΩ external resistor, the typical reset extension time is 4.5 ms.
Figure 5-1 shows the power-up and power-down behavior.
The TPS65381-Q1 device is intended for use in automotive and industrial safety-relevant applications. The following list of monitoring and protection blocks are those that improve the diagnostic coverage and decrease the undetected fault rate:
The VBAT supply voltage, all regulator outputs, and internally generated voltages are supervised by a voltage monitor module (VMON). An undervoltage or overvoltage condition is indicated by the corresponding VMON register status flag bits:
The monitoring occurs by undervoltage and overvoltage comparators. The reference voltage (BANDGAP_REF2) for the VMON module is independent of the system reference voltage (BANDGAP_REF1) used by the regulators. A glitch-filtering function ensures reliable monitoring without false setting of the VMON status flag bits. The complete VMON block is supplied by a separate supply pin, VBAT_SAFING.
The VMON comparator diagnostics are covered by the ABIST executed during device startup and power up or activated with the SPI command by the external MCU SPI request when the device is in the DIAGNOSTIC or ACTIVE state. Each monitored voltage rail is emulated for undervoltage and overvoltage conditions on the corresponding comparator inputs, therefore forcing the corresponding comparator to toggle multiple times (in a toggling pattern observed and checked by the ABIST controller). The monitored voltage rails themselves are not affected during this self-test, so no real undervoltage or overvoltage event occurs on any of these rails because of this self-test.
Table 5-1 lists an overview of the performed voltage monitoring. As listed in this table, an overvoltage protection is implemented for some of the internal supply rails.
Table 5-2 lists a useful overview of the TPS65381-Q1 device internal error signals and the impact of the signals on the device behavior.
DETECTIVE CONDITION (THRESHOLD LEVEL) | DEGLITCH TIME TO SET FLAG (µs) | DEVICE STATE WHEN FLAG IS SET | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
DMUX POS. NO. | SIGNAL NAME | DESCRIPTION | MIN | TYP | MAX | UNIT | ELEC. CHAR. NO. | MIN | TYP | MAX | ELEC. CHAR. NO. | NRES | ENDRV | DEVICE STATE | ||
D1.2 | NAVDD_UV | AVDD undervoltage comparator output (inverted) | 3.6 | V | 15 | 30 | LOW | LOW | STANDBY | |||||||
D1.3 | BG_ERR1 | VMON or main band gap is OFF (set to 1 when VMON band gap > main band gap) | Main band gap = 2.364 (VMON band gap = 2.477) | V | 15 | 30 | LOW | LOW | STANDBY | |||||||
D1.4 | BG_ERR2 | VMON or main band gap is OFF (set to 1 when VMON band gap < main band gap) | Main band gap = 2.617 (VMON band gap = 2.477) | V | 15 | 30 | LOW | LOW | STANDBY | |||||||
D1.5 | NVCP12_UV | VCP12 charge pump undervoltage comparator (inverted) | 7.43 | V | 15 | 30 | Not changed | Not changed | Not changed | |||||||
D1.6 | VCP12_OV | VCP12 charge-pump overvoltage comparator | 14.2 | V | 15 | 30 | LOW | LOW | STANDBY | |||||||
D1.7 | VCP17_OV | VCP17 charge-pump overvoltage comparator | 21 | V | 15 | 30 | LOW | LOW | STANDBY | |||||||
D1.8 | NVDD6_UV | VDD6 undervoltage comparator (inverted) | 5.2 | 5.4 | V | 6.22 | 10 | 40 | 6.18 | Not changed | Not changed | Not changed | ||||
D1.9 | VDD6_OV | VDD6 overvoltage comparator | 7.8 | 8.2 | V | 6.23 | 10 | 40 | 6.18 | Not changed | Not changed | Not changed | ||||
D1.10 | NVDD5_UV | VDD5 undervoltage comparator (inverted) | 4.5 | 4.85 | V | 6.8 | 10 | 40 | 6.18 | Not changed | Not changed | Not changed | ||||
D1.11 | VDD5_OV | VDD5 overvoltage comparator | 5.2 | 5.45 | V | 6.10 | 10 | 40 | 6.18 | Not changed | LOW | Not changed | ||||
D1.12 | NVDD3/5_UV | VDD3/5 undervoltage comparator; 3.3-V setting (inverted) | 3 | 3.17 | V | 6.12 | 10 | 40 | 6.18 | LOW | LOW | RESET | ||||
VDD3/5 undervoltage comparator; 5-V setting (inverted) | 4.5 | 4.85 | ||||||||||||||
D1.13 | VDD3/5_OV | VDD3/5 overvoltage comparator; 3.3-V setting | 3.43 | 3.6 | V | 6.14 | 10 | 40 | 6.18 | Not changed | LOW | Not changed | ||||
VDD3/5 overvoltage comparator; 5-V setting | 5.2 | 5.5 | ||||||||||||||
D1.14 | NVDD1_UV | VDD1 undervoltage comparator (inverted) | 0.94 | 0.98 | VDD1 | 6.16 | 10 | 40 | 6.18 | Not changed when NMASK_VDD1_UV_OV = 0 (default config) | Not changed when NMASK_VDD1_UV_OV = 0 (default config) | Not changed when NMASK_VDD1_UV_OV = 0 (default config) | ||||
When NMASK_VDD1_UV_OV = 1: NRES = LOW | When NMASK_VDD1_UV_OV = 1: ENDRV = LOW | When NMASK_VDD1_UV_OV = 1: RESET | ||||||||||||||
D1.15 | VDD1_OV | VDD1 overvoltage comparator | 1.03 | 1.06 | VDD1 | 6.17 | 10 | 40 | 6.18 | Not changed | Not changed (default config) | Not changed | ||||
When MASK_VDD1_UV_OV = 1: ENDRV = LOW | ||||||||||||||||
D1.16 | LOCLK | Loss-of-system-clock comparator | 0.742 | 2.64 | MHz | 0.379 | 1.346 | LOW | LOW | STANDBY | ||||||
D3.4 | CP_OV | Charge-pump overvoltage comparator | VBAT + 12 | V | N/A | N/A | N/A | Not changed | Not changed | Not changed | ||||||
D3.5 | NCP_UV | Charge-pump undervoltage comparator (inverted) | VBAT + 6 | V | N/A | N/A | N/A | Not changed | Not changed | Not changed | ||||||
D3.8 | CP_DIFF3V | Indicates VCP-VBATP > 3 V | VBAT + 3 | V | N/A | N/A | N/A | Not changed | Not changed | Not changed | ||||||
D3.10 | NVBAT_UV | VBAT undervoltage comparator (inverted) | 4.2 | 4.5 | V | 6.1 | 200 | 6.7 | LOW | LOW | STANDBY | |||||
D3.11 | VBATP_OV | VBAT overvoltage comparator | 34.7 | 36.7 | V | 6.5 | 200 | 6.7 | LOW (default config) | LOW (default config) | RESET (default config) | |||||
When MASK_VBATP_OV = 1: NRES unchanged | When MASK_VBATP_OV = 1: ENDRV unchanged | When MASK_VBATP_OV = 1: device state unchanged | ||||||||||||||
D3.12 | VDD5_OT | VDD5 overtemperature | 175 | 210 | °C | 3.13 | 45 | 64 | LOW | LOW | Device state depends on NMASK_VDD5_OT bit setting: | |||||
NMASK_VDD5_OT = 0 : no impact to device state | ||||||||||||||||
NMASK_VDD5_OT = 1 : VDD5 disabled → RESET | ||||||||||||||||
D3.13 | VDD3/5_OT | VDD3/5 overtemperature | 175 | 210 | °C | 2.13 | 45 | 64 | LOW | LOW | Device state depends on NMASK_VDD3/5_OT bit setting: | |||||
NMASK_VDD3/5_OT = 0 : VDD3/5 disabled → VDD3/5 UV event → RESET | ||||||||||||||||
NMASK_VDD3/5_OT = 1 : STANDBY | ||||||||||||||||
D3.14 | VSOUT1_OT | VSOUT1 overtemperature | 175 | 210 | °C | 5.13 | 45 | 64 | Not changed | Not changed | Not changed | |||||
D3.15 | VDD5_CL | VDD5 current-limit(1) | 350 | 650 | mA | 2.14 | 15 | 30 | Not changed | Not changed | Not changed | |||||
D3.16 | VDD3/5_CL | VDD3/5 current-limit | 350 | 650 | mA | 3.14 | 15 | 30 | Not changed | Not changed | Not changed | |||||
D4.2 | VSOUT1_CL | VSOUT1 current-limit | 100 | 500 | mA | 5.19 | 15 | 30 | Not changed | Not changed | Not changed | |||||
D4.3 | NVSOUT1_UV | VSOUT1 undervoltage comparator (inverted) | 0.88 | 0.94 | VSOUT1 | 6.19 | 10 | 40 | 6.21 | Not changed | Not changed | Not changed | ||||
D4.4 | VSOUT1_OV | VSOUT1 overvoltage comparator | 1.06 | 1.12 | VSOUT1 | 6.20 | 10 | 40 | 6.21 | Not changed | Not changed | Not changed | ||||
D4.5 | NDVDD_UV | DVDD undervoltage comparator (inverted) | 2.472 | V | 0 | LOW | LOW | STANDBY | ||||||||
D4.6 | DVDD_OV | DVDD overvoltage comparator | 3.501 | V | 0 | LOW | LOW | STANDBY | ||||||||
D4.8 | VS_TRK_MODE | VSOUT1 in track-mode indication | 1.2 | V | 5.3a | N/A | N/A | N/A | Not changed | Not changed | Not changed | |||||
D4.9 | VMON_TRIM_ERR | VMON trim error | Set when bit-flip in VMON trim registers is detected | 5 | 10 | LOW | LOW | STANDBY |
The LCMON detects internal oscillator failures including:
The LCMON is enabled during a power-up event after the power-on reset (NPOR) is released. The clock monitor remains active during device normal operation (STANDBY, RESET, DIAGNOSTIC, ACTIVE, and SAFE states). In case of a clock failure:
The LCMON has a self-test structure that is activated and monitored by an analog BIST (ABIST). The external MCU can recheck the LCMON any time when the device is in the DIAGNOSTIC state or ACTIVE state. The enabled diagnostics emulate a clock failure that causes the clock-monitor output to toggle. The clock-monitor toggling pattern is checked by the ABIST, while the external MCU can check that the loss-of-clock status bit is being set during active test. During this self-test, the actual oscillator frequency (4 MHz) is not changed because of this self-test.
The ABIST is the controller and monitor circuit for performing self-checking diagnostics on critical analog functions:
During the self-test on the VMON undervoltage and overvoltage comparators, the monitored voltage rails are left unchanged, so no real undervoltage or overvoltage event occurs on any of these rails because of these self-tests. Furthermore, also during the self-check on the clock monitor, the actual oscillator frequency (4 MHz) is not changed because of this self-test.
The ABIST is activated with every device power-up event or any transition to the RESET state. The ABIST can also be run by the external MCU by setting the ABIST_EN bit in the SAFETY_BIST_CTRL register. During an ABIST run, the device cannot monitor the state of the regulated supplies, and the ENDRV pin is pulled low. The ABIST run time is approximately 300 µs. The ABIST can be performed in the ACTIVE state on an MCU request, depending on system safety requirements (such as a system-fault response time), ENDRV pin will be low during ABIST run.
A running ABIST is indicated in the ABIST_RUN bit (bit D0) in the SAFETY_STAT_3 register. This bit is set to 1 during the ABIST run and is cleared to 0 when the ABIST is complete. In case of an ABIST failure while in the DIAGNOSTIC state, including power-up event, the device enters the SAFE state without asserting a reset to the external MCU and the ABIST_ERR status flag remains latched in the digital core until a successful ABIST run. This allows the external MCU to detect the ABIST failure by reading the ABIST_ERR bits in the SAFETY_STAT_3 register. In case of an ABIST failure while in the ACTIVE state, the device sets the ABIST_ERR status flag, but no state transition occurs.
The logic BIST (LBIST) tests the digital-core safety functions. The LBIST has these characteristics:
The BIST (LBIST with ABIST) is activated and run in the DIAGNOSTIC state with any transition out of the RESET state during power-up events. The BIST is also activated with any other transition out of the RESET state unless the AUTO_BIST_DIS bit in the SAFETY_BIST_CTRL register is set.
The MCU can run the LBIST (BIST) by setting the LBIST_EN bit in the SAFETY_BIST_CTRL register.
NOTE
In the ACTIVE state the following considerations must be considered if a manual run of the LBIST is initiated by setting the LBIST_EN bit to 1. The LBIST should only be run in the ACTIVE state if the system-safety timing requirements can allow the total 21-ms BIST time and ENDRV being low for the 21-ms time.
NOTE
In the ACTIVE or DIAGNOSTIC or SAFE state the following considerations must be considered if a manual run of the LBIST is initiated by setting the LBIST_EN bit to 1. After the LBIST is complete the WD_FAIL_CNT[2:0] counter is re-initialized to 5. The MCU should resynchronize to the TPS65381-Q1 watchdog by writing to the WD_WIN1_CFG or WD_WIN2_CFG register or by immediately causing a bad event. Both of these resynchronization options start a new watchdog sequence and increment the WD_FAIL_CNT[2:0] counter. If the WD_RST_EN bit is set to 1 (enabled), the watchdog service routine in the MCU must ensure good events are sent to the watchdog to start decrementing the WD_FAIL_CNT[2:0] counter before it reaches 7 +1 which cause a transition to the RESET state. After the LBIST is complete some of the registers are reinitialized. If the these configuration registers change from the initialized values, these registers must be reconfigured to the required setting for the application.
NOTE
In the DIAGNOSTIC state the following considerations must be taken into account if a manual run of the LBIST is initiated by setting the LBIST_EN bit to 1. Setting the LBIST_EN bit to 1 clears the DIAG_EXIT_MASK bit to 0. If the DIAG_EXIT_MASK bit is being used to hold the device in the DIAGNOSTIC state for software debug, it must be set again to 1 after LBIST completion to stay in the DIAGNOSTIC state. The DIAGNOSTIC state time-out counter stops only during the running of the LBIST. After the LBIST is complete, the time-out counter continues from the last value. For a transition from the DIAGNOSTIC state to the ACTIVE state, the DIAG_EXIT bit must be set to 1.
During the BIST run, the device cannot monitor the state of regulated supplies and cannot respond to any SPI command, and therefore cannot monitor the state of the MCU through the watchdog timer. During the BIST run, the ENDRV pin is pulled low and the watchdog fail counter reinitializes to 5. After the BIST is complete, the following functions and registers reinitialize:
A running LBIST is indicated in the LBIST_RUN bit (bit D1) in the SAFETY_STAT_3 register. This bit is set to 1 while the LBIST is running and is cleared to 0 when the LBIST is complete. After the LBIST run, completion of the whole BIST is confirmed by the MCU by reading 0 for both the LBIST_RUN and ABIST_RUN bits.
In case of an LBIST failure in the DIAGNOSTIC state, the device enters the SAFE state. The external MCU can detect the LBIST failure by reading the LBIST_ERR bit in the SAFETY_STAT_3 register. In case of an LBIST failure while in the ACTIVE state, the device sets the LBIST_ERR status flag, but no state transition occurs. Because the ABIST is run during the LBIST, the ABIST_ERR bit can also be monitored by the MCU.
Each LDO with an internal power FET has junction temperature monitoring with overtemperature protection (thermal shutdown). In case of an overtemperature condition, a regulated supply can re-enable only after the overtemperature condition is removed.
For the VSOUT1 regulator, the overtemperature condition disables the regulator and clears the enable bit (VSOUT1_EN), while all other regulators remain enabled. When the VSOUT1 overtemperature condition is gone, the external MCU must set the enable control bit again to re-enable the regulator.
The VDD3/5 and VDD6 regulators share an overtemperature protection circuit. A overtemperature event disables the VDD3/5 regulator. If the NMASK_VDD3/5_OT is set to 1 (default), the device transitions to the STANDBY state. If the NMASK_VDD3/5_OT bit is cleared to 0, the device transitions to the RESET state when the VDD3/5 output reaches the UV level for the VDD3/5 regulator. In both cases the NRES pin goes low and resets the external MCU and the ENDRV pin is low. TI recommends using the device with the NMASK_VDD3/5_OT bit set to 1.
For the VDD5 regulator, the overtemperature condition clears the VDD5_EN enable bit and transitions to the RESET state. NRES pin goes low and resets the MCU and the ENDRV pin is low. All other regulators remain enabled. When the VDD5 overtemperature condition is gone, the MCU must set the enable control bit again to re-enable the regulator.
The VDD6, VDD3/5, VDD5, and VSOUT1 regulators include a current-limit circuit for protection against excessive power consumption and thermal overstress.
Table 5-3 lists an overview of the overtemperature and overcurrent protections for the supply output rails.
Analog and digital critical signals, which are not directly connected to the MCU, are switched by a multiplexer to the external DIAG_OUT pin. The programming of the multiplexer is done with the DIAG_MUX_SEL register. The digital signals are buffered to have sufficient drive capabilities.
This multiplexer facilitates external pin-interconnect tests by feeding back the input pin state or feeding back internal module self-test status or safety comparator outputs.
In case the DIAG_OUT pin is connected to a mixed analog or digital input pin of the MCU, TI recommends configuring this MCU input pin and the DIAG_OUT pin simultaneously in accordance with the desired type of signal (analog or digital). The type of signal (analog or digital) on the DIAG_OUT pin can be configured with the MUX_CFG[1:0] bits in the DIAG_CFG_CTRL register. The DIAG_OUT multiplexer can be globally enabled and disabled with bit 7 in the DIAG_CFG_CTRL register. When disabled, the DIAG_OUT pin is in the high-ohmic state (tri-state).
NOTE
When enabling the DIAG_OUT MUX while using SPI communication, the SDO pin is not in the high impedance state while the NCS pin is high and the DIAG_OUT MUX is enabled. Software or hardware modification may be required in the application. For hardware modifications check the SDO threshold level and drive capability if resistors are used to adjust the voltage level of the SDO pin on the SPI bus or use a buffer gate with an enable and tri-state output such as the SN74AHC1G125 to allow the downstream SDO signal to be in the high impedance state if required in the application while the NCS pin is high even if the DIAG_OUT MUX is enabled.
Table 5-4 lists the selectable-analog internal signals on the DIAG_OUT pin. In the DIAG_CFG_CTRL register, the MUX_CFG[1:0] bits must be set to 10b for the analog MUX mode.
SIGNAL NUMBER |
VOLTAGE RAIL or SIGNAL NAME |
DESCRIPTION | SUPPLY RANGE(2) | DIVIDE RATIO |
DIVIDE RATIO ACCURACY(1) | OUTPUT RESISTANCE (kΩ) | DIAG_MUX_SEL[7:0] | ||
---|---|---|---|---|---|---|---|---|---|
MINIMUM | MAXIMUM | MINIMUM | MAXIMUM | ||||||
A.1 | VDD5 | Linear VDD5 regulator output | 5.8 to 34 V | 2 | –2.25 % | 0.75 % | 20 | 50 | 0x01 |
A.2 | VDD6 | Switch mode preregulator | 5.8 to 34 V | 3 | –3.75% | 0.5 % | 30 | 100 | 0x02 |
A.3 | VCP | Charge pump | 5.8 to 18V | 13.5 | –6.25 % | 2.25 % | 90 | 200 | 0x04 |
5.8 to 34 V | –6.25% | 4.75 % | |||||||
A.4 | VSOUT1 | Sensor supply voltage | 5.8 to 34 V | 4 | –0.5 % | 1.2 % | 40 | 100 | 0x08 |
A.5 | VBAT_SAFING | Battery (supply) input for monitoring (VMON) and BG2 functions | 5.8 to 18 V | 10 | –5 % | 0 % | 125 | 200 | 0x10 |
5.8 to 34 V | –5 % | 5.5 % | |||||||
A.6 | VBATP | Battery (supply), main power supply | 5.8 to 18V | 10 | –5 % | 0 % | 125 | 200 | 0x20 |
5.8 to 34 V | –5 % | 5.5 % | |||||||
A.7 | MAIN_BG | Regulators band-gap reference | 5.8 to 34 V | 1 | NA | 3 | 15 | 0x40 | |
A.8 | VMON_BG | Voltage-monitor band gap | 5.8 to 34 V | 1 | NA | 3 | 15 | 0x80 |
In case one of the AMUX signals after the divide ratio is at a voltage above the VDDIO voltage, a clamp becomes active to avoid any voltage level higher than the VDDIO voltage on the DIAG_OUT pin.
To achieve the fastest stabilization of the signal switched to the DIAG_OUT pin, following the AMUX switching order from A.1 up to A.8 is not recommended.
The recommendation is to switch the order from high-to-low voltage, starting with A.8. For example: A.8 – A.7 – A.1 – A.2 – A.3 – A.5 – A.6 – A.4.
NOTE
The sensor-supply output voltage (VSOUT1) is 0 V in this example. If the VSOUT1 voltage is higher, then the switching order described in the previous example must be changed.
NOTE
In the application, a series resistance of at least 100 kΩ is required on the input capacitor filter of the ADC input of the MCU.
The following tables list the selectable digital internal signals on the DIAG_OUT pin. In the DIAG_CFG_CTRL register, the MUX_CFG[1:0] bits must be cleared to 01b for the digital MUX mode.
Most of these signals are internal error signals that influence the device state and behavior of the NRES pin and the ENDRV pin. See Table 5-2 for a more detailed table listing the internal error signals and their impact on the device behavior.
SIGNAL NUMBER | SIGNAL NAME | DESCRIPTION | CHANNEL GROUP DIAG_MUX_SEL [6:4] |
CHANNEL NUMBER DIAG_MUX_SEL [3:0] |
---|---|---|---|---|
D1.1 | RSV | Reserved, logic 0 | 000b | 0000b |
D1.2 | NAVDD_UV | AVDD undervoltage comparator output (inverted) | 000b | 0001b |
D1.3 | BG_ERR1 | VMON or main band gap is OFF | 000b | 0010b |
D1.4 | BG_ERR2 | VMON or main band gap is OFF | 000b | 0011b |
D1.5 | NVCP12_UV | VCP12 charge-pump undervoltage comparator (inverted) | 000b | 0100b |
D1.6 | VCP12_OV | VCP12 charge-pump overvoltage comparator | 000b | 0101b |
D1.7 | VCP17_OV | VCP17 charge-pump overvoltage comparator | 000b | 0110b |
D1.8 | NVDD6_UV | VDD6 undervoltage comparator (inverted) | 000b | 0111b |
D1.9 | VDD6_OV | VDD6 overvoltage comparator | 000b | 1000b |
D1.10 | NVDD5_UV | VDD5 undervoltage comparator (inverted) | 000b | 1001b |
D1.11 | VDD5_OV | VDD5 overvoltage comparator | 000b | 1010b |
D1.12 | NVDD3/5_UV | VDD3/5 undervoltage comparator (inverted) | 000b | 1011b |
D1.13 | VDD3/5_OV | VDD3/5 overvoltage comparator | 000b | 1100b |
D1.14 | NVDD1_UV | VDD1 undervoltage comparator (inverted) | 000b | 1101b |
D1.15 | VDD1_OV | VDD1 overvoltage comparator | 000b | 1110b |
D1.16 | LOCLK | Loss-of-system-clock comparator | 000b | 1111b |
SIGNAL NUMBER | SIGNAL NAME | DESCRIPTION | CHANNEL GROUP DIAG_MUX_SEL [6:4] |
CHANNEL NUMBER DIAG_MUX_SEL [3:0] |
---|---|---|---|---|
D3.1 | RSV | Reserved, logic 0 | 010b | 0000b |
D3.2 | DFT | Signal reserved for production test | 010b | 0001b |
D3.3 | DFT | Signal reserved for production test | 010b | 0010b |
D3.4 | CP_OV | Charge-pump overvoltage comparator | 010b | 0011b |
D3.5 | NCP_UV | Charge-pump undervoltage comparator (inverted) | 010b | 0100b |
D3.6 | CP_PH1 | Charge-pump switching phase 1 | 010b | 0101b |
D3.7 | CP_PH2 | Charge-pump switching phase 2 | 010b | 0110b |
D3.8 | CP_DIFF3V | Indicates VCP-VBATP > 3 V | 010b | 0111b |
D3.9 | DFT | Signal reserved for production test | 010b | 1000b |
D3.10 | NVBAT_UV | VBAT undervoltage comparator (inverted) | 010b | 1001b |
D3.11 | VBATP_OV | VBAT overvoltage comparator | 010b | 1010b |
D3.12 | VDD5_OT | VDD5 overtemperature | 010b | 1011b |
D3.13 | VDD3/5_OT | VDD3/5 overtemperature | 010b | 1100b |
D3.14 | VSOUT1_OT | VSOUT1 overtemperature | 010b | 1101b |
D3.15 | VDD5_CL | VDD5 current-limit | 010b | 1110b |
D3.16 | VDD3_CL | VDD3 current-limit | 010b | 1111b |
SIGNAL NUMBER | SIGNAL NAME | DESCRIPTION | CHANNEL GROUP DIAG_MUX_SEL [6:4] |
CHANNEL NUMBER DIAG_MUX_SEL [3:0] |
---|---|---|---|---|
D5.1 | RSV | Reserved, logic 0 | 111b | 0000b |
D5.2 | TI_TEST_MODE | TI production test mode indication | 111b | 0001b |
D5.3-16 | DFT | Signal reserved for production test | 111b | 0010b-1111b |
A diagnostic check at the SDO digital-output pin is also possible in DMUX mode. For this diagnostic check, the following sequence is required:
During this SDO check at the SDO pin, the DIAG_OUT pin is kept low if no signal from the Digital MUX Selection table is selected.
For a diagnostic interconnect check between the DIAG_OUT pin and the MCU analog-digital input pin, the state of the DIAG_OUT pin is controlled with the SPI bit, MUX_OUT, in the DIAG_CFG_CTRL register. To use this mode, the MUX_CFG[1:0] bits must be set to 00b in the DIAG_CFG_CTRL register.
For performing a diagnostic interconnect check at the digital input pins (ERROR/WDI, NCS, SDI, and SCLK), the MUX_CFG[1:0] bits in the DIAG_CFG_CTRL register must be set to 11b. The INT_CON[2:0] bits in the DIAG_CFG_CTRL register can select which of these digital inputs to be multiplexed to the DIAG_OUT pin (see the description of DIAG_CFG_CTRL register in Section 5.5.1).
The watchdog monitors the correct operation of the MCU. This watchdog requires specific triggers, or messages, from the MCU in specific time intervals to detect correct operation of the MCU. The MCU can control the logic level of the ENDRV pin with the ENABLE_DRV bit when the watchdog detects correct operation of the MCU. When the watchdog detects incorrect operation of the MCU, the device pulls the ENDRV pin low. This ENDRV pin can be used in the application as a control signal to deactivate the power output stages, for example a motor driver, in case of incorrect operation of the MCU. This function is consequently referred to as the watchdog-enabled function.
The watchdog has two different modes, which are defined as follows:
To select the Q&A mode, the MCU must set the WD_CFG bit (bit 5) in the safety-function configuration register (SAFETY_FUNC_CFG) while in the DIAGNOSTIC state. When the watchdog operates in Q&A mode, the MCU error signal monitor (ESM) may be used.
The watchdog includes a watchdog fail counter (WD_FAIL_CNT[2:0]) which increments because of bad events or decrements because of good events. When the value of the watchdog fail counter is 5 or more, the watchdog status is out-of-range and the ENDRV pin is low (the watchdog-enabled function is disabled).
When the watchdog fail counter is 4 or less, the watchdog status is in-range and the watchdog no longer disables the watchdog-enabled function. In this case, the device pulls up the ENDRV pin when the ENABLE_DRV control bit (in the SAFETY_CHECK_CTRL register) is set and when the device detects no other errors that impact the level of the ENDRV pin.
The watchdog fail counter operates independently of the state of the watchdog reset configuration bit (bit 3), WD_RST_EN, in the SAFETY_FUNC_CFG register.
The watchdog fail counter responds as follows:
The definitions of good event, bad event and time-out event are listed Section 5.4.14 and Section 5.4.15.
WATCHDOG FAIL COUNTER WD_FAIL_CNT[2:0] |
000b THROUGH 100b | 101b THROUGH 111b | 111b |
---|---|---|---|
The watchdog status is based on the WD_FAIL_CNT[2:0] value. | Watchdog in-range | Watchdog is out-of-range | If the WD_RST_EN bit is set to 1, the NRES pin is pulled low, the device is in the RESET state on next "bad" or "time-out" event to the watchdog |
The watchdog fail counter is initialized to a count of 5 when the device enters the DIAGNOSTIC state (after going through the RESET state) and when the device transitions from the DIAGNOSTIC state to the ACTIVE state.
When the watchdog fail counter reaches a count of 7, another bad event does not change the counter: the counter remains at 7. However, if the watchdog reset is enabled (WD_RST_EN bit in the SAFETY_FUNC_CFG register is set to 1), on the next bad event or time-out event (7 + 1) the device enters the RESET state and resets the MCU by pulling the NRES pin low. In the RESET state, the watchdog fail counter reinitializes to 5. If the watchdog fail counter is at seven when the WD_RST_EN bit is set to 1, the device immediately enters the RESET state without requiring another bad event or time-out event.
Each watchdog sequence begins with a Window 1 followed by a Window 2. The MCU can program the time periods of Window 1 (tWIN1) and Window 2 (tWIN2) with the WD_WIN1_CFG and WD_WIN2_CFG registers respectively when the device is in the DIAGNOSTIC state. When the device goes from the RESET state to the DIAGNOSTIC state, the watchdog sequence begins with the default tWIN1 and tWIN2 time periods.
Use Equation 1 and Equation 2 to calculate the minimum and maximum values for the tWIN1 time period. Use Equation 3 and Equation 4 to calculate the minimum and maximum values for the tWIN2 time period.
where
where
where
where
If the MCU stops sending events, or stops feeding the watchdog during the watchdog sequence, the watchdog considers this lack of response from the MCU a time-out event (no response event). This sets the TIME_OUT status bit (bit 1 in the WD_STATUS register) and increments the watchdog fail counter. Immediately following a time-out event the next watchdog sequence is started.
Based on the Window 1 and Window 2 time periods, the watchdog sequence and time-out time periods are calculated as follows:
The watchdog uses the internal system clock of the device (±5% accuracy) as a time reference for creating the 0.55-ms watchdog time step. WINDOW 1 may be up to one 0.55-ms watchdog time step shorter than programmed as indicated by Equation 1.
NOTE
Because of the uncertainty in the Window 1 and Window 2 time periods, TI recommends using settings for Window 1 and Window 2 of two or higher. Window 2 could be set as low as one, assuming Window 1 is set to six or lower. The response from the MCU should be targeted to the mid point of known timing for Window 2. As Window 1 setting is increased above six, the device system-clock tolerance (±5%) becomes large compared to a setting of one in Window 2 not allowing for a known time range for a response in Window 2, so Window 2 setting must be scaled with Window 1 to allow timing margin.
To synchronize the MCU with the watchdog sequence, the MCU can write to either the WIN1_CFG or WIN2_CFG registers to start a new watchdog sequence. After a write access to the WIN1_CFG or WIN2_CFG register by the MCU (even when these registers are locked or when the device is in the ACTIVE or the SAFE state), the device immediately starts a new watchdog sequence and increments the watchdog fail counter. Therefore a write access to the WD_WIN1_CFG or WD_WIN2_CFG register only takes effect in this new watchdog sequence.
When the MCU is synchronized with the watchdog sequence, a good event from the MCU immediately starts a new watchdog sequence. In this way, the MCU stays synchronized with the watchdog sequence.
See Figure 6-11 for an example software flowchart of how to synchronize the MCU with the TPS65381-Q1 watchdog.
When the device goes from the RESET state to the DIAGNOSTIC state, the watchdog operates in trigger mode (default). The first watchdog sequence begins with the default tWIN1 and tWIN2 time periods. The watchdog receives the triggers from the MCU on the ERROR/WDI pin. A rising edge on the ERROR/WDI pin, followed by a falling edge on the ERROR/WDI pin after more than the required pulse time, tWD_pulse(max) (32 μs), is a trigger. Even a waveform with a longer duration high than low is counted as a trigger if the rising and falling edges meet this requirement.
Window 1, called a CLOSE window, is the first window in the watchdog sequence. A trigger received in Window 1 is a bad event and ends Window 1, starts a new watchdog sequence and sets ANSWER_EARLY flag.
Window 2, called an OPEN window, follows Window 1. At a minimum, Window 2 lasts until a trigger is received. At a maximum, Window 2 lasts until the programmed tWIN2 time. A trigger received in Window 2 (OPEN) is a good event. A new watchdog sequence begins immediately after the watchdog receives a trigger in Window 2.
If the MCU stops sending triggers during the watchdog sequence, the watchdog considers this lack of response from the MCU a time-out event (no response event). This sets the TIME_OUT status bit (bit 1 in the WD_STATUS register) and increments the watchdog fail counter. Immediately following a time-out event a new watchdog sequence is started.
The TIME_OUT flag can be useful for the MCU software to resynchronize the watchdog trigger pulse events to the required device watchdog timing. When resynchronizing in this way, the MCU detects the TIME_OUT flag being set. The TIME_OUT flag being set indicates the time-out event and the start of a new watchdog sequence. The MCU should send the trigger with timing so the trigger is in Window 2 (OPEN) of this new watchdog sequence.
NOTE
If an active SPI frame (nCS is low) is present when the time-out event occurs, the TIME_OUT flag is not latched (set) in the WD_STATUS register, but the watchdog fail counter still increments. Because the TIME_OUT flag is not latched, this impacts the resynchronization ability of the MCU and status monitoring. It is recommended to use the synchronization procedure outlined in section Section 5.4.13.
In trigger mode, the watchdog uses a deglitch filter with the tWD_pulse filter time and an internal system clock to create the internally generated watchdog pulse (see Figure 5-6 and Figure 5-7).
The rising edge of the trigger on the ERROR/WDI pin must occur at least the tWD_pulse(max) time before the end of Window 2 (OPEN) to generate a good event.
The window duration times of Window 1 (CLOSE) and Window 2 (OPEN) are programmed through the WD_WIN1_CFG and WD_WIN2_CFG registers when the device is in the DIAGNOSTIC state. In trigger mode, the window duration time are as follows:
where
where
where
where
Use Equation 1 and Equation 2 to calculate the minimum and maximum values for the tWIN1 = tWCW time period. Use Equation 3 and Equation 4 to calculate the minimum and maximum values for the tWIN2 = tWOW time period.
Writing a new Window 1 or Window 2 time to the WD_WIN1_CFG or WD_WIN2_CFG register immediately begins a new watchdog sequence and increments the watchdog fail counter. A new watchdog sequence is started by a write even when WD_WIN1_CFG register and the WD_WIN2_CFG SPI register are locked because the device is not in DIAGOSTIC state or the SPI command SW_LOCK is blocking a write update to the register values.
The watchdog trigger event is considered a good-event if received during a Window 2 (OPEN) window, and is considered a bad-event if received during Window 1 (CLOSE) window. A good-event ends the current watchdog sequence and starts a new watchdog sequence, therefore the MCU and device watchdog timing stay synchronized.
A good-event, bad-event, time-out event, power-up event, or power-down event ends the current watchdog sequence and starts a new watchdog sequence.
Setting the WD_CFG bit in the SAFETY_FUNC_REG register to 1 when the device is in the DIAGNOSTIC state configures the watchdog for Q&A (question and answer) mode. In Q&A mode, the device provides a question (or TOKEN) for the MCU in the WD_TOKEN_VALUE register. The MCU performs a fixed series of arithmetic operations on the question to calculate the required 32-bit answer. This answer is split into four answer bytes or responses. The MCU writes these answer bytes through SPI one byte at a time into the WD_ANSWER register. The device verifies that the MCU returned the answer bytes within the specified timing windows, and that the answer bytes are correct.
A good event occurs when the MCU sends the correct answer bytes calculated for the current question within the correct watchdog window and in the correct order.
A bad event occurs when one of the events that follows occur:
If the MCU stops sending answer bytes during the watchdog sequence, the watchdog considers this lack of response from the MCU a time-out event (no response event). This sets the TIME_OUT status bit (bit 1 in the WD_STATUS register) and increments the watchdog fail counter. Immediately following a time-out event a new watchdog sequence is started.
The TIME_OUT flag can be useful for the MCU software to resynchronize the watchdog answer timing to the required device watchdog timing. When resynchronizing in this way, the MCU detects the TIME_OUT flag being set. The TIME_OUT flag being set indicates the time-out event and the start of a new watchdog sequence. The MCU should send the answer bytes with timing so they will be in the correct windows of the new watchdog sequence.
NOTE
If an active SPI frame (nCS is low) is present when the time-out event occurs, the TIME_OUT flag is not latched (set) in the WD_STATUS register, but the watchdog fail counter is still incremented. Because the TIME_OUT flag is not latched this impacts the resynchronization ability of the MCU and status monitoring. It is recommended to use the synchronization procedure outlined in section Section 5.4.13.
NOTE
In Q&A mode, each watchdog sequence starts with Window 1 (OPEN) followed by Window 2 (CLOSE). The OPEN and CLOSE references for Q&A mode are reversed with respect to those of trigger mode, but the order of the Window 1 and Window 2 is the same as are the registers containing the setting for each window, WD_WIN1_CFG and WD_WIN2_CFG.
The Q&A mode definitions are:
The watchdog provides the question (token) to the MCU when the MCU reads the question (TOKEN[3:0]) from the WD_TOKEN_VALUE register.
The MCU can request each new question (token) at the start of the watchdog sequence, but this is not required to calculate the answer. The MCU can also generate the question by implementing the question generation circuit as shown in Figure 5-9. Nevertheless, the answer and, therefore the answer bytes, are always based on the question generated inside the watchdog of the device. So, if the MCU generates a wrong question and gives answer bytes calculated from a wrong question, the watchdog detects a bad event.
A new question (token) is generated only when a good event occurred in the previous watchdog sequence causing the token counter (internal counter) to increment and generate a new question (token) as shown in figure Figure 5-9.
The watchdog receives an answer byte when the MCU writes to the watchdog answer register (the WD_ANSW[7:0] bits in the WD_ANSWER register).
For each question, the watchdog requires four correct answer bytes from the MCU in the correct timing and order (sequence). Answer-3, Answer-2, and Answer-1 can be in Window 1 or Window 2 in the correct order, and Answer-0 must be in Window 2 to be detected as a good event.
The watchdog sequence in Q&A mode ends after the MCU writes the fourth answer byte, Answer-0 (WD_TOKEN_RESP_0), or after a time-out event. A new watchdog sequence starts after the previous watchdog sequence ends.
The window duration times of Window 1 (OPEN) and Window 2 (CLOSE) are programmed through the WD_WIN1_CFG and WD_WIN2_CFG registers when the device is in the DIAGNOSTIC state. In Q&A mode, the window duration time are as follows:
where
where
where
where
Use Equation 1 and Equation 2 to calculate the minimum and maximum values for the tWIN1 = tWOW time period. Use Equation 3 and Equation 4 to calculate the minimum and maximum values for the tWIN2 = tWCW time period.
Writing a new Window 1 or Window 2 time to the WD_WIN1_CFG or WD_WIN2_CFG register immediately begins a new watchdog sequence and increments the watchdog fail counter. A new watchdog sequence is started by a write even when WD_WIN1_CFG register and the WD_WIN2_CFG SPI register are locked because the device is not in DIAGOSTIC state or the SPI command SW_LOCK is blocking a write update to the register values.
The watchdog uses a 4-bit token counter (TOKEN_CNT[3:0] bits in Figure 5-9), and a 4-bit Markov chain to generate a 4-bit question (token). The MCU can read this question in the WD_TOKEN_VALUE register, TOKEN[3:0] bits. The watchdog generates a new question when the token counter increments, which only occurs when the watchdog detects a good event. The watchdog does not generate a new question when it detects a bad event or a time-out event. The watchdog does not generate a new question for a watchdog sequence that starts after the MCU writes to the WD_WIN1_CFG or WD_WIN2_CFG registers.
The token counter provides a clock pulse to the Markov chain when it transitions from 1111b to 0000b. The question counter and the Markov chain are set to the singular default value of 0000b when the device completes the LBIST (either a manual LBIST run or the automotive LBIST run initiated on the transition from the RESET to DIAGNOSTIC state). To leave the singular point, the feedback logic combination is implemented.
Figure 5-9 shows the logic combination for the question (token) generation. The question is in the WD_TOKEN_VALUE register, TOKEN[3:0] bits.
The logic combination of the token counter with the WD_ANSW_CNT[1:0] status bits (in the WD_STATUS register) generates the reference answer bytes as shown in Figure 5-9.
The 2-bit, watchdog-answer counter, WD_ANSW_CNT[1:0], in the WD_STATUS register counts the number of received answer bytes and controls the generation of the reference Answer-x byte as shown in Figure 5-10. At the start of each watchdog sequence, the default value of the WD_ANSW_CNT[1:0] is 11b to indicate that the watchdog expects the MCU to write Answer-3 (WD_RESP_3) in the WD_ANSWER register.
The sequence of the 2-bit, watchdog answer counter, WD_ANSW[1:0], is as follows for each counter value:
The watchdog sequence events are as follows for the different scenarios listed:
This block monitors the external MCU error conditions signaled from the MCU to the device through the ERROR/WDI input pin. The MCU ESM is configurable to monitor two different signaling options depending which functional safety architecture MCU family is being monitored and how the specific MCU family indicates on the error or fault output pin improper operation. The MCU ESM mode is selected through the ERROR_CFG bit in the SAFETY_FUNC_CFG register.
In TMS570 mode the ESM detects a low-pulse signal with a programmable low-pulse duration threshold (see Section 5.4.16.1). This mode is selected when the ERROR_CFG bit is set to 1. In PWM mode the ESM detecting a PWM signal with a programmable frequency and duty cycle (see Section 5.4.16.2). This mode is selected when the ERROR_CFG bit is cleared to 0 (default). PWM mode can be used as an external clock-monitor function.
The MCU ESM is deactivated by default. To activate it, clear the NO_ERROR bit to 0 in the SAFETY_CHECK_CTRL register.
NOTE
Activating the MCU ESM is only recommended when the watchdog is configured in Q&A mode, otherwise the ERROR/WDI pin is used both for watchdog trigger input and MCU error signaling.
The low-signaling duration threshold (for TMS570 mode) or the expected PWM low-pulse duration (for PWM mode) is set through the SAFETY_ERR_PWM_L register. The expected PWM high-pulse duration (for PWM mode) is set through the SAFETY_ERR_PWM_H register. A detected MCU signaling error is indicated when the ERROR_PIN_FAIL bit in the SAFETY_ERR_STAT register is set to 1.
NOTE
An update to a SAFETY_ERR_PWM_x register (only possible in the DIAGNOSTIC state) has an immediate effect. Therefore, if the MCU writes a new value to the SAFETY_ERR_PWM_x register which is less than the value of the current pulse-duration counter value, the MCU ESM immediately detects an error condition on the ERROR/WDI pin. The pulse duration counter then reinitializes to 0 and sets the ERROR_PIN_FAIL bit to 1.
When the TPS65381-Q1 device is in the DIAGNOSTIC state, the MCU can emulate a signaling error (emulated fault-injection) for a diagnostic check of the error-signal monitor by checking the status of the ERROR_PIN_FAIL bit while the NO_ERROR bit is cleard to 0 (MCU ESM enabled) without a transition to the SAFE state.
NOTE
To perform an MCU ESM diagnostic check of the pin while in the DIAGNOSTIC state the following procedure can be used. The ERROR/WDI pin is edge triggered.
When the TPS65381-Q1 device is in the ACTIVE state, a detected MCU signaling error causes a transition to the SAFE state. A dedicated 4-bit error counter, the DEV_ERR_CNT[3:0] bits in the SAFETY_ERR_STAT register, counts the transitions from the ACTIVE state to the SAFE state.
The module is covered by the logic BIST (LBIST).
An error condition is detected when the ERROR/WDI pin remains low longer than the programmed amount of time set by the SAFETY_ERR_PWM_L register. The programmable time range is 5 µs to 1.28 ms (typical), with 5-µs steps (±5%).
The SAFETY_ERR_PWM_L register must be set to the desired value based on the maximum required time for the TMS570 MCU to detect an error or fault and to potentially recover from or correct the error or fault.
The LOW duration time is as follows:
Use Equation 15 and Equation 16 to calculate the minimum and maximum values for the LOW duration, tTMS570_LOW. Figure 5-11 shows the error-detection case scenarios.
NOTE
The SAFETY_ERR_PWM_L register (PWML[7:0]) should be configured with a minimum of 1 (01h) in the register.
The low-pulse monitoring on the ERROR/WDI pin is implemented as follows:
The ERROR_PIN_FAIL bit in the SAFETY_ERR_STAT register is set within one system clock cycle (250 ns ± 5%) after detecting an MCU signaling error. When the device is in the ACTIVE state, a transition to the SAFE state occurs after one more system clock-cycle.
An error condition is detected when one of the following occurs on the ERROR/WDI pin:
The MCU ESM does NOT detect an MCU signaling error on the ERROR/WDI pin if both of the following occurs:
The programmable time range for the expected HIGH and LOW pulse duration is 15 µs to 3.8 ms (typical), with 15-µs resolution steps (±5%). The HIGH and LOW pulse duration times are programmed through the SAFETY_ERR_PWM_H and SAFETY_ERR_PWM_L registers when the device is in the DIAGNOSTIC state. The pulse duration time are as follows:
Use Equation 17 and Equation 18 to calculate the minimum and maximum values for the HIGH pulse duration, tPWM_HIGH. Use Equation 19 and Equation 20 to calculate the minimum and maximum values for the LOW pulse duration, tPWM_LOW.
NOTE
The SAFETY_ERR_PWM_H (PWMH[7:0]) and SAFETY_ERR_PWM_L (PWML[7:0]) register should be configured with a minimum of 1 (01h) in the registers.
The monitoring of the high-pulse duration and low-pulse duration is implemented as follows:
LOW pulse monitoring:
HIGH pulse monitoring:
NOTE
The ERROR/WDI pin is edge triggered, to synchronize the MCU to the MCU ESM module, while in the DIAGNOSTIC state the MCU should start sending the desired PWM signal. On the first falling or rising edge the MCU ESM detects the edge and starts the internal timers in sync with the edge so the MCU and MCU ESM are synchronized. The MCU ESM resynchronizes to the MCU on every rising and falling edge. While in the DIAGNOSTIC state, when synchronization has occurred the ERROR_PIN_FAIL flag should be cleared.
The ERROR_PIN_FAIL bit in the SAFETY_ERR_STAT register is set within one system clock cycle (250 ns ±5%) after detecting an MCU signaling error. When the device is in the ACTIVE state, a transition to the SAFE state occurs after one more system clock-cycle.
This function offers a mechanism to help protect safety SPI-mapped registers by means of SPI write-access protection and CRC check.
The register access protection includes two distinctive features:
A CRC occurs on safety data after a SPI write updates to verify the SPI register contents are correctly programmed. The CRC controller is a diagnostic module, which performs the CRC to verify the integrity of the SPI-mapped register space. A signature representing the content of the safety registers is obtained when the content is read into the CRC controller. The responsibility of the CRC controller is to calculate the signature for a set of data and then compare the calculated signature value against a predetermined good-signature value. The predetermined CRC signature value is stored in the SAFETY_CFG_CRC register. The external MCU uses the SAFETY_CHECK_CTRL register to enable a CRC check and the SAFETY_STAT_2 register to monitor the status. When enabled, a CRC check on the configuration registers is performed. In case of a detected signature error, the CFG_CRC_ERR flag is set in the SAFETY_STAT_2 SPI register. The device state and the ENDRV pin state remain unchanged. In case of a detected checksum error with the TPS65381-Q1 device in the DIAGNOSTIC state, clearing the CFG_CRC_EN bit to 0 brings the TPS65381-Q1 device into the SAFE state (the ENDRV pin is pulled low).
A standard CRC-8 polynomial is used: X8 + X2 + X1 + 1
The CRC monitor test is covered by a logic BIST.
A 64-bit string is protected by CRC. The following registers are protected:
Table 5-13 lists the CRC bus structure.
REGISTER NAME | 64-BIT BUS ORDERING |
---|---|
SAFETY_FUNC_CFG [6:0] | [63:57] |
DEV_REV [7:0] | [56:49] |
SAFETY_PWD_THR_CFG [3:0] | [48:45] |
SAFETY_ERR_CFG [7:0] | [44:37] |
WD_TOKEN_FDBK [7:0] | [36:29] |
WD_WIN2_CFG [4:0] | [28:24] |
WD_WIN1_CFG [6:0] | [23:17] |
SAFETY_ERR_PWM_L [7:0] | [16:9] |
DEV_CFG2 [7:0] | [8:1] |
DEV_CFG1 [6] | 0 |
In the external MCU, the CRC calculation must be performed byte-wise, starting with the lowest byte of the 64-bit bus ordering value. The most significant bit is first in the bit order. The resulting CRC of one calculation is the seed value for the next calculation. The initial seed value is FFh. The CRC result of the eighth byte-wise calculation is the CRC signature value, which must be stored in the SAFETY_CFG_CRC register (see Figure 5-13).
Table 5-14 lists some CRC calculation examples.
64-BIT BUS ORDERING VALUE | CRC-8 RESULT |
---|---|
0000 0000 0000 0000h | DBh |
FFFF FFFF FFFF FFFFh | 0Ch |
0A0A 0505 0A0A 0505h | D4h |
0505 0A0A 0505 0A0Ah | 17h |
A0A0 5050 A0A0 5050h | 2Bh |
0A23 E000 18FE 7B80h | 1Bh |
In case the CRC controller detects a signature error on the configuration registers, care must be used when performing an EEPROM CRC afterwards. In case of a detected signature error in the configuration registers, the device reports an EEPROM signature error when the CFG_CRC_EN bit in the SAFETY_CHECK_CTRL register is cleared to 0 first before performing the EEPROM CRC by setting the EE_CRC_CHK bit in the SAFETY_BIST_CTRL register to 1, even when the EEPROM bits do not have an error. Therefore, when performing an EEPROM CRC after a CRC on the configuration registers, the steps must always occur in the following order:
NOTE
A correct EEPROM CRC afterwards (as described in Step 5) clears this CFG_CRC_ERR bit. Therefore, TI recommends reading out this CFG_CRC_ERR bit before performing the EEPROM CRC.
NOTE
Returning to Step 1 is not required; returning to Step 2 is also an option.
NOTE
While in the DIAGNOSTIC state, a check can be performed to confirm the CFG_CRC_ERR bit is set to 1 on a mismatch between the value stored in the SAFETY_CFG_CRC register and the value that is calculated from the configuration registers covered by the CRC8. If the CFG_CRC_EN is cleared while the CFG_CRC_ERR bit is set to 1, then the device transitions to the SAFE state, set the EE_CRC_ERR bit and clear the CFG_CRC_EN bit. To avoid this transition to the SAFE state, the CFG_CRC_ERR bit must be cleared by running the EEPROM CRC by setting the EE_CRC_CHK bit. While the EPPROM CRC is running, the EE_CRC_ERR bit is set. Assuming the EEPROM CRC was good, both the EE_CRC_ERR and CFG_CRC_ERR bits are cleared. To check if the CFG_CRC_ERR bit is 0 for a matching CRC, the matching CRC value should be stored in the SAFETY_CFG_CRC register. Then the CFG_CRC_EN bit must be cleared to 0 and set again to 1 which reruns the CRC on the configuration registers, resulting in the CFG_CRC_ERR bit being 0.
Figure 5-14 shows the reset and enable circuit.
The ENDRV pin features a read-back circuit to compare the external ENDRV level with the internally applied ENDRV level. This feature detects any possible failure in the ENDRV pullup or pulldown components. A failure is detected by the MCU through the ENDRV_ERR bit (bit 1 in the SAFETY_STAT_4 register).
The ENDRV pin is pulled low for the ABIST duration time (approximately 300 µs) when activating the ABIST function after the ENDRV output is turned on and driven high. This is part of ENDRV diagnostics to validate all monitoring functions that disable the ENDDRV output and confirm that the ENDRV output is controllable by using the ENDRV read-back path.
The NRES pin features a readback of the external NRES level. The value is read on the DIAG_OUT pin and NRES_ERR bit (bit 5 in the SAFETY_STAT_3 register)..
For both the ENDRV pin and the NRES pin, the logic read-back threshold level is typically 400 mV.
Figure 5-15 shows the timing-response diagram for the NRES and ENDRV pins to any VDDx undervoltage or overvoltage condition.
The STANDBY state is the default state when the device is supplied by the VBATP and VBAT_SAFING supplies. This state has the characteristics that follow:
The RESET state has the characteristics that follow:
The DIAGNOSTIC state has the characteristics that follow:
NOTE
DIAGNOSTIC state time-out: When the DIAGNOSTIC state is entered, if the DIAG_EXIT_MASK or DIAG_EXIT bit is not set to 1 within 512 ms (typical), the DIAGNOSTIC state time-out interval expires, causing a transition to the SAFE state. This also sets both the ERROR_PIN_FAIL and WD_FAIL bits in the SAFETY_ERR_STAT register and sets the mirror bits, MCU_ERR and WD_ERR, in the SAFETY_STAT_4 register. The device error count (DEV_ERR_CNT[3:0]) is incremented. Only the DIAG_EXIT_MASK or DIAG_EXIT bit should be set in a single SPI write command to the SAFETY_CHECK_CTRL register. Setting the DIAG_EXIT bit to 1 causes a transition to the ACTIVE state. Setting the DIAG_EXIT_MASK bit to 1 causes the device to remain in the DIAGNOSTIC state (only recommended for software debug).
NOTE
DIAG_EXIT_MASK for software debug: When the DIAG_EXIT_MASK bit is set to 1 before the DIAGNOSTIC state time-out interval expires, the device stays in the DIAGNOSTIC state until the bit is cleared. The DIAGNOSTIC state time-out timer remains free running in the background, but does not cause a state transition. When the DIAGNOSTIC state time-out interval has expired, the DIAG_EXIT bit is set automatically (in addition to the DIAG_EXIT_MASK bit remaining set) and the device remains in the DIAGNOSTIC state. For a controlled transition to the ACTIVE state, TI recommends clearing the DIAG_EXIT_MASK bit and setting the DIAG_EXIT bit with a single SPI write command to the SAFETY_CHECK_CTRL register. If both the DIAG_EXIT_MASK bit and DIAG_EXIT bits are cleared at the same time, the device remains in the DIAGNOSTIC state until either the next DIAGNOSTIC state time-out interval expires causing a transition to the SAFE state or if the DIAG_EXIT bit is set to 1, prior to the DIAGNOSTIC state time-out, transitioning the device to ACTIVE state.
NOTE
In the DIAGNOSTIC state the following considerations must be considered if a manual run of the LBIST is initiated by setting the LBIST_EN bit to 1. Setting the LBIST_EN bit to 1 clears the DIAG_EXIT_MASK bit to 0. If the DIAG_EXIT_MASK bit is being used to hold the device in the DIAGNOSTIC state for software debug, it must be set again to 1 after LBIST completion to stay in the DIAGNOSTIC state. The DIAGNOSTIC state time-out counter stops only during the running of LBIST. After the LBIST completes, the time-out counter continues from the last value. For a transition from the DIAGNOSTIC state to the ACTIVE state, the DIAG_EXIT bit must be set to 1.
The ACTIVE state has the characteristics that follow:
NOTE
While in the DIAGNOSTIC state, the MCU must clear by writing a 0 to the ERROR_PIN_FAIL bit and the WD_FAIL bit in the SAFETY_ERR_STAT register before setting the DIAG_EXIT bit. Clearing these bits also clears their mirror bits, MCU_ERR and WD_ERR. Otherwise, a transition to the SAFE state occurs.
NOTE
In the ACTIVE state the following considerations must be considered if a manual run of the LBIST is initiated by setting the LBIST_EN bit to 1. The LBIST should only be run in the ACTIVE state if the system-safety timing requirements can allow the total 21-ms BIST time and the ENDRV pin being low for the 21-ms.
See Section 5.4.7 for additional system considerations if LBIST is run in the ACTIVE state.
The SAFE state has the characteristics that follow:
NOTE
The SAFE state time-out and device configuration settings are used by the device state machine to determine what the device does after a transition to the SAFE state. Depending on the NO_SAFE_TO, PWD_THR[3:0], SAFE_LOCK_THR[3:0], and DEV_ERR_CNT[3:0] bits, the device stays locked in the SAFE state, transitions to the RESET state, or transitions to STANDBY state. The SAFE state time-out duration is programable through SAFE_TO[2:0].
NO_SAFE_TO = 1 (Default)
NO_SAFE_TO = 0
If the PWD_THR[3:0] threshold is used, the device transitions from the SAFE state to the STANDBY state when DEV_ERR_CNT[3:0] ≥ PWD_THR[3:0]. This transition has higher priority (PRIORITY I) than the path from the SAFE state to the RESET state (PRIORITY II) so if PWD_THR[3:0] = SAFE_LOCK_THR[3:0] + 1 the device transitions to the STANDBY state not the RESET state.
For all global or possible double-state transitions, the following priorities hold true:
All other state transitions have a lower priority compared to any of the state transitions listed with priority numbers.
The device goes through a power on reset (NPOR) which reinitializes all registers. The events that cause an NPOR are:
The primary communication between the device and the external the MCU is through a SPI bus which provides full-duplex communications in a master-slave configuration. The external MCU is always a SPI master, which sends command requests on the SDI pin and receives device responses on the SDO pin. The TPS65381-Q1 device is always a SPI slave device, which receives command requests and sends responses (status, measured values) to the external MCU over the SDO line.
The SPI communication starts with the NCS falling edge, and ends with the NCS rising edge. The NCS high level keeps the SPI slave interface in the reset state, and the SDO output is in the tri-state.
Table 5-15 shows the transfer frame format of SPI data during a command (write or read command)..
BIT | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
---|---|---|---|---|---|---|---|---|
FUNCTION | CMD6 | CMD5 | CMD4 | CMD3 | CMD2 | CMD1 | CMD0 | PARITY |
The SPI does not support back-to-back SPI frame operation. After each SPI command or read access, the NCS pin must transition from low-to-high before the next SPI transfer can start. The minimum time (thlcs) between two SPI commands during which the NCS pin must remain high is 788 ns.
Table 5-16 shows the transfer frame format of SPI data during a write access.
BIT | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
---|---|---|---|---|---|---|---|---|
FUNCTION | DATA7 | DATA6 | DATA5 | DATA4 | DATA3 | DATA2 | DATA1 | DATA0 |
The SPI does not support back-to-back SPI frame operation. After each SPI transfer, the NCS pin must go from low to high before the next SPI transfer can start. The minimum time (thlcs) between two SPI commands during which the NCS pin must remain high is 788 ns.
Table 5-17 shows the response frame format of the SPI data status during a command (write or read access).
BIT | R7 | R6 | R5 | R4 | R3 | R2 | R1 | R0 |
---|---|---|---|---|---|---|---|---|
FUNCTION | STAT[7] | STAT[6] | STAT[5] | STAT[4] | STAT[3] | STAT[2] | STAT[1] | STAT[0] |
The status bits sent during the current SPI command are reflecting the status of the previous SPI command.
NOTE
If a reset to the MCU is asserted during a SPI frame transfer (causing a truncated SPI frame), these SPI error status bits are not cleared, but maintain the status according to the truncated previous SPI frame until a SPI read access.
NOTE
The SPI SDO error bit, STAT[2], may be inadvertently set when the NCS pin is high, the SDO pin is high, and a falling edge occurs on the SPICLK pin. This combination occurs most often when the device is used in a SPI bus with multiple SPI slaves. If all three of these conditions are met, the SDO error flag is set to 1 in the second SPI flag byte response of the following SPI communication with the TPS65381-Q1. The application software should mask out the SDO error flag if the device is used under these conditions. If a SPI SDO error is detected, the device accepts the SPI transfer because the detected error is on the output not the input for the SPI.
NOTE
For additional diagnostic coverage for SPI write transfers, the system software could perform a read of the register written and compare the returned value to the value that is expected after the write. Be aware some bits in some registers are not writable.
Table 5-18 shows the response frame format of the SPI device data during a write or read access.
BIT | R7 | R6 | R5 | R4 | R3 | R2 | R1 | R0 |
---|---|---|---|---|---|---|---|---|
FUNCTION | R7 | R6 | R5 | R4 | R3 | R2 | R1 | R0 |
Figure 5-17 shows an overview of a complete 16-bit SPI Frame:
The SW_LOCK command protects the SPI registers against write update access through MCU control. When the SW_LOCK command with data AAh is sent to the device, the listed registers are locked from updates through a write access. To unlock the SPI registers, the SW_UNLOCK command with data 55h is sent to the device.
NOTE
The SW_LOCK command is in addition to the automatic locking of specific SPI registers against write update access except while the device is in DIAGNOSTIC state. Please see the SPI Command Table and the register descriptions to determine if SW_LOCK and automatic locking except in DIAGNOSTIC state apply to specific write access registers.
The following sections list the SPI registers. For each SPI register, the bit names are given along with the initialized values (values after internal logic reset).
The values are initialized after each wake-up from the STANDBY state or after any other power-on reset (NPOR) event.
After a LBIST run is complete, including the LBIST run on the transition out of RESET state, the following functions and registers re-initialize:
The initialized value of the reserved bits (RSV) is indicated, however some of these bits are used for internal device operation and the application software should mask them as they may not remain at their initialized value.
The following sections also list an explanation of each bit function.
8-BIT HEX COMMAND CODE (WITH PARITY) | 7-BIT HEX COMMAND CODE (WITHOUT PARITY) |
7-BIT BINARY COMMAND CODE (WITHOUT PARITY) |
PARITY | WR SW LOCK PROTECT |
REGISTER COMMAND NAME(1) |
---|---|---|---|---|---|
BDh | 5Eh | 1011 110b | 1 | N/A | SW_LOCK with data AAh (to lock SPI WR access to listed registers) |
BBh | 5Dh | 1011 101b | 1 | N/A | SW_UNLOCK with data 55h (to unlock SPI WR access to listed registers) |
06h | 03h | 0000 011b | 0 | N/A | RD_DEV_ID |
0Ch | 06h | 0000 110b | 0 | N/A | RD_DEV_REV |
B7h | 5Bh | 1011 011b | 1 | YES | WR_DEV_CFG1 (SPI WR update can occur only in the DIAGNOSTIC state) |
AFh | 57h | 1010 111b | 1 | N/A | RD_DEV_CFG1 |
95h | 4Ah | 1001 010b | 1 | YES | WR_DEV_CFG2 (SPI WR update can occur only in the DIAGNOSTIC state) |
48h | 24h | 0100 100b | 0 | N/A | RD_DEV_CFG2 |
7Dh | 3Eh | 0111 110b | 1 | NO | WR_CAN_STBY (only valid with data 00h) |
24h | 12h | 0010 010b | 0 | N/A | RD_SAFETY_STAT_1 |
C5h | 62h | 1100 010b | 1 | N/A | RD_SAFETY_STAT_2 |
A3h | 51h | 1010 001b | 1 | N/A | RD_SAFETY_STAT_3 |
A5h | 52h | 1010 010b | 1 | N/A | RD_SAFETY_STAT_4 |
C0h | 60h | 1100 000b | 0 | N/A | RD_SAFETY_STAT_5 |
30h | 18h | 0011 000b | 0 | N/A | RD_SAFETY_ERR_CFG |
DBh | 6Dh | 1101 101b | 1 | YES | WR_SAFETY_ERR_CFG (SPI WR update can occur only in the DIAGNOSTIC state) |
A9h | 54h | 1010 100b | 1 | YES | WR_SAFETY_ERR_STAT (SPI WR update can occur only in the DIAGNOSTIC state) |
AAh | 55h | 1010 101b | 0 | N/A | RD_SAFETY_ERR_STAT |
39h | 1Ch | 0011 100b | 1 | N/A | RD_SAFETY_PWD_THR_CFG |
99h | 4Ch | 1001 100b | 1 | YES | WR_SAFETY_PWD_THR_CFG (SPI WR update can occur only in the DIAGNOSTIC state) |
44h | 22h | 0100 010b | 0 | N/A | RD_SAFETY_CHECK_CTRL |
93h | 49h | 1001 001b | 1 | NO | WR_SAFETY_CHECK_CTRL |
3Ch | 1Eh | 0011 110b | 0 | N/A | RD_SAFETY_BIST_CTRL |
9Fh | 4Fh | 1001 111b | 1 | YES | WR_SAFETY_BIST_CTRL |
2Eh | 17h | 0010 111b | 0 | N/A | RD_WD_WIN1_CFG |
EDh | 76h | 1110 110b | 1 | YES | WR_WD_WIN1_CFG (SPI WR update can occur only in the DIAGNOSTIC state) |
05h | 02h | 0000 010b | 1 | N/A | RD_WD_WIN2_CFG |
09h | 04h | 0000 100b | 1 | YES | WR_WD_WIN2_CFG (SPI WR update can occur only in the DIAGNOSTIC state) |
36h | 1Bh | 0011 011b | 0 | N/A | RD_WD_TOKEN_VALUE |
4Eh | 27h | 0100 111b | 0 | N/A | RD_WD_STATUS |
E1h | 70h | 1110 000b | 1 | NO | WR_WD_ANSWER |
11h | 08h | 0001 000b | 1 | N/A | RD_DEV_STAT |
12h | 09h | 0001 001b | 0 | N/A | RD_VMON_STAT_1 |
A6h | 53h | 1010 011b | 0 | N/A | RD_VMON_STAT_2 |
56h | 2Bh | 0101 011b | 0 | N/A | RD_SENS_CTRL |
7Bh | 3Dh | 0111 101b | 1 | N/A | WR_SENS_CTRL |
3Ah | 1Dh | 0011 101b | 0 | N/A | RD_SAFETY_FUNC_CFG |
35h | 1Ah | 0011 010b | 1 | YES | WR_SAFETY_FUNC_CFG (SPI WR update can occur only in the DIAGNOSTIC state) |
5Ah | 2Dh | 0101 101b | 0 | N/A | RD_SAFETY_CFG_CRC |
63h | 31h | 0110 001b | 1 | YES | WR_SAFETY_CFG_CRC (SPI WR update can occur only in the DIAGNOSTIC state) |
DDh | 6Eh | 1101 110b | 1 | N/A | RD_DIAG_CFG_CTRL |
CCh | 66h | 1100 110b | 0 | NO | WR_DIAG_CFG_CTRL |
ACh | 56h | 1010 110b | 0 | N/A | RD_DIAG_MUX_SEL |
C9h | 64h | 1100 100b | 1 | NO | WR_DIAG_MUX_SEL |
D7h | 6Bh | 1101 011b | 1 | N/A | RD_SAFETY_ERR_PWM_H |
D8h | 6Ch | 1101 100b | 0 | YES | WR_SAFETY_ERR_PWM_H (SPI WR update can occur only in the DIAGNOSTIC state) |
59h | 2Ch | 0101 100b | 1 | N/A | RD_SAFETY_ERR_PWM_L |
7Eh | 3Fh | 0111 111b | 0 | YES | WR_SAFETY_ERR_PWM_L (SPI WR update can occur only in the DIAGNOSTIC state) |
78h | 3Ch | 0111 100b | 0 | N/A | RD_WD_TOKEN_FDBK |
77h | 3Bh | 0111 011b | 1 | YES | WR_WD_TOKEN_FDBK (SPI WR update can occur only in the DIAGNOSTIC state) |
Initialization source: NPOR
Controller access: Read only (RD_DEV_REV)
Initialization source: NPOR, post LBIST reinitialization
Controller access: Read only (RD_DEV_STAT)
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
RSV | RSV | RSV | RSV | RSV | RSV | CANWU_L | IGN |
0b | 0b | 0b | 0b | 0b | 0b | X | X |
Initialization source: NPOR
Controller access: Read (RD_DEV_CFG1)
Write (WR_DEV_CFG1). Write update can only occur in the DIAGNOSTIC state. Write access locked through SW_LOCK command.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
VDD_3_5_SEL | NMASK_VDD1_UV_OV | RSV | RSV | RSV | RSV | RSV | RSV |
X | 0b | 0b | 0b | 0b | 0b | 0b | 0b |
Initialization source: NPOR
Controller access: Read (RD_DEV_CFG2)
Write (WR_DEV_CFG2). Write update can only occur in the DIAGNOSTIC state. Write access locked through SW_LOCK command.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
NMASK_VDD3/5_OT | NMASK_VDD5_OT | MASK_VBATP_OV | POST_RUN_RST | RSV | RSV | RSV | RSV |
1b | 1b | 0b | 0b | 0b | 0b | 0b | 0b |
Initialization source: NPOR
Controller access: Read only (RD_VMON_STAT_1)
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
VBATP_OV | VBATP_UV | VCP17_OV | VCP12_OV | VCP12_UV | AVDD_VMON_ERR | BG_ERR2 | BG_ERR1 |
0b | 0b | 0b | 0b | 0b | 0b | 0b | 0b |
Initialization source: NPOR
Controller access: Read (RD_VMON_STAT_2)
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
VDD6_OV | VDD6_UV | VDD5_OV | VDD5_UV | VDD3/5_OV | VDD3/5_UV | VDD1_OV | VDD1_UV |
0b | 0b | 0b | 0b | 0b | 0b | 0b | 0b |
Initialization source: NPOR
Controller access: Read (RD_SAFETY_STAT_1)
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
VDD5_ILIM | VDD3/5_ILIM | VSOUT1_UV | VSOUT1_OV | RSV | VSOUT1_OT | VDD5_OT | VDD_3_5_OT |
0b | 0b | 0b | 0b | 0b | 0b | 0b | 0b |
Initialization source: NPOR, post LBIST reinitialization
Controller access: Read only (RD_SAFETY_STAT_2)
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
RSV | RSV | CFG_CRC_ERR | EE_CRC_ERR | RSV | WD_FAIL_CNT[2] | WD_FAIL_CNT[1] | WD_FAIL_CNT[0] |
0b | 0b | 0b | 0b | 0b | 1b | 0b | 1b |
Initialization source: NPOR
Controller access: Read only (RD_SAFETY_STAT_3)
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
RSV | RSV | NRES_ERR | LBIST_ERR | ABIST_ERR | ABIST_ERR | LBIST_RUN | ABIST_RUN |
0b | 0b | 0b | 0b | 0b | 0b | 0b | 0b |
Initialization source: NPOR, post LBIST reinitialization
Controller access: Read only (RD_SAFETY_STAT_4)
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
SPI_ERR[1] | SPI_ERR[0] | LOCLK | RSV | MCU_ERR | WD_ERR | ENDRV_ERR | TRIM_ERR_VMON |
0b | 0b | 0b | 0b | 0b | 0b | 0b | 0b |
Initialization source: POR, post LBIST reinitialization
Controller access: Read only (RD_SAFETY_STAT_5)
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
RSV | RSV | RSV | RSV | RSV | FSM[2] | FSM[1] | FSM[0] |
0b | 0b | 0b | 0b | 0b | 0b | 1b | 1b |
D[2:0] | FSM[2:0]: Current device state | |||||||
– | Reflects the current device state (the bits will immediately update to reflect the current device state after an NPOR or post LBIST reinitialization) | |||||||
● | STANDBY state: 00h | |||||||
● | RESET state: 03h | |||||||
● | DIAGNOSTIC state: 07h | |||||||
● | ACTIVE state: 05h | |||||||
● | SAFE state: 04h |
Initialization source: NPOR
Controller access: Read (RD_SAFETY_ERR_CFG)
Write (WR_SAFETY_ERR_CFG). Write update can only occur in the DIAGNOSTIC state. Write access locked through SW_LOCK command.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
SAFE_TO
[2] |
SAFE_TO [1] |
SAFE_TO [0] |
SAFE_LOCK_THR [3] |
SAFE_LOCK_THR [2] |
SAFE_LOCK_THR [1] |
SAFE_LOCK_THR [0] |
CFG_LOCK |
0b | 0b | 0b | 0b | 0b | 0b | 0b | 0b |
Initialization source: NPOR
Controller access: Read (RD_SAFETY_BIST_CTRL)
Write (WR_SAFETY_BIST_CTRL). Write access locked through SW_LOCK command.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
BIST_DEG_CNT[1] | BIST_DEG_CNT[0] | AUTO_BIST_DIS | EE_CRC_CHK | RSV | LBIST_EN | ABIST_EN | ABIST_EN |
0b | 0b | 0b | 0b | 0b | 0b | 0b | 0b |
Initialization source: NPOR, post LBIST reinitialization
Controller access: Read (RD_SAFETY_CHECK_CTRL)
Write (WR_SAFETY_CHECK_CTRL). .
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
CFG_CRC_EN | RSV | ENABLE_DRV | RSV | RSV | NO_ERROR | DIAG_EXIT_MASK | DIAG_EXIT |
0b | 0b | 0b | 1b | 0b | 1b | 0b | 0b |
Initialization source: NPOR
Controller access: Read (RD_SAFETY_FUNC_CFG)
Write (WR_SAFETY_FUNC_CFG). Write update can only occur in the DIAGNOSTIC state. Write access locked through SW_LOCK command.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
NO_SAFE_TO | ERROR_CFG | WD_CFG | IGN_PWRL | WD_RST_EN | DIS_NRES_MON | RSV | VDD_3_5_SEL |
1b | 0b | 0b | 0b | 0b | 1b | 0b | X |
D[7] | NO_SAFE_TO | |||||||
– | Controls the enabling and disabling of the SAFE state time-out function | |||||||
– When set to 1: The SAFE state time-out is disabled. The device remains locked in the SAFE state when the DEV_ERR_CNT[3:0] counter reaches the SAFE_LOCK_THR[3:0] + 1 value. – When cleared to 0: The SAFE state time-out is enabled. The device transitions to the RESET state after 680 ms when the DEV_ERR_CNT[3:0] counter reaches the SAFE_LOCK_THR[3:0] + 1 value. |
||||||||
D[6] | ERROR_CFG: MCU ESM configuration bit | |||||||
– | When cleared to 0: PWM Mode is selected (can be used as an external clock monitor). The expected ERROR/WDI pin LOW and HIGH durations are controlled by the SAFETY_ERR_PWM_H and SAFETY_ERR_PWM_L registers (see Section 5.5.4.13 and Section 5.5.4.14, respectively). | |||||||
– | When set to 1: The TMS570 mode is selected. The ERROR pin low-duration threshold is set by the SAFETY_ERR_PWM_L register. | |||||||
– | Use the NO_ERROR bit in the SAFETY_CHECK_CTRL register to enable the MCU ESM function | |||||||
D[5] | WD_CFG: Watchdog function configuration bit | |||||||
– | When cleared to 0: Trigger mode (default) – watchdog trigger input through the ERROR/WDI pin | |||||||
– | When set to 1: Q&A mode – watchdog answers input through SPI | |||||||
D[4] | IGN_PWRL: Ignition-power latch control bit | |||||||
– | Controls the enabling of the ignition-power latch | |||||||
Note: This bit can only be changed when the device is in the DIAGNOSTIC state | ||||||||
– | When cleared to 0: With the IGN pin LOW, the device enters the STANDBY state. Cleared by a CANWU event | |||||||
– | When set to 1: The IGN pin can be pulled LOW, but the device remains powered up. | |||||||
D[3] | WD_RST_EN | |||||||
– | 1b = Enables a transition to the RESET state when a Watchdog failure is detected (the WD_FAIL_CNT[2:0] counter reaches the count of 7+1). | |||||||
– | 0b (default) = Disables a transition to the RESET state when watchdog failure events are detected (the WD_FAIL_CNT[2:0] counter reaches the count of 7 + 1). | |||||||
D[2] | DIS_NRES_MON | |||||||
– | When cleared to 0: In the ACTIVE state, a difference between the read-back level on the NRES pin and the NRES pin output driver state causes a transition to the SAFE state and the NRES_ERR bit is set. | |||||||
– | When set to 1 (default state): State transition because of a difference between the read-back NRES pin level and the NRES driver state is disabled. (default state) Note: The NRES_ERR bit is still set if a difference between the read-back NRES pin level and the NRES driver state is detected. | |||||||
D[1] | RSV, readable and writeable in the DIAGNOSTIC state with no impact to the device state or the ENDRV and NRES output | |||||||
D[0] | VDD_3_5_SEL: Status bit of VDD3/VDD5 selection at power up | |||||||
– | The SEL_VDD3/5 input pin is sampled and latched at power up | |||||||
● | 0b = 5-V setting (pin SEL_VDD3/5 connected to ground) | |||||||
● | 1b = 3.3-V setting (the SEL_VDD3/5 pin is not connected) | |||||||
● | Value in the RESET state depends on the state of the SEL_VDD3/5 pin at first power up | |||||||
– | This bit is read only | |||||||
Note: This bit is the same as the DEV_CFG1 bit, D7 |
Initialization source: NPOR
Controller access: Read (RD_SAFETY_ERR_STAT)
Write (WR_SAFETY_ERR_STAT). Write update can only occur in the DIAGNOSTIC state. Write access locked through SW_LOCK command.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
RSV | RSV | ERROR_PIN_FAIL | WD_FAIL | DEV_ERR_CNT[3] | DEV_ERR_CNT[2] | DEV_ERR_CNT[1] | DEV_ERR_CNT[0] |
0b | 0b | 0b | 0b | 0b | 0b | 0b | 0b |
Initialization source: NPOR
Controller access: Read (RD_SAFETY_ERR_PWM_H)
Write (WR_SAFETY_ERR_PWM_H). Write update can only occur in the DIAGNOSTIC state. Write access locked through SW_LOCK command.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
PWMH[7] | PWMH[6] | PWMH[5] | PWMH[4] | PWMH[3] | PWMH[2] | PWMH[1] | PWMH[0] |
1b | 0b | 1b | 0b | 1b | 0b | 0b | 0b |
D[7:0] | PWMH[7:0]: The ERROR/WDI pin high-phase duration in PWM mode (15-µs resolution) | |||||||
– | Controls the expected high-phase duration with 15-µs resolution | |||||||
Use Equation 17 and Equation 18 to calculate the minimum and maximum values for the HIGH pulse duration, tPWM_HIGH. | ||||||||
(15-µs time reference has 5% accuracy coming from 4-MHz internal oscillator) |
Initialization source: NPOR
Controller access: Read (RD_SAFETY_ERR_PWM_L)
Write (WR_SAFETY_ERR_PWM_L). Write update can only occur in the DIAGNOSTIC state. Write access locked through SW_LOCK command.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
PWML[7] | PWML[6] | PWML[5] | PWML[4] | PWML[3] | PWML[2] | PWML[1] | PWML[0] |
0b | 0b | 1b | 1b | 1b | 1b | 0b | 1b |
D[7:0] | PWML[7:0]: The ERROR/WDI pin low-phase duration | |||||||
– | Controls expected low-phase duration | |||||||
● | When the ERR_CFG bit is 0 (in PWM mode): PWM low-phase duration with 15-µs resolution | |||||||
Use Equation 19 and Equation 20 to calculate the minimum and maximum values for the LOW pulse duration, tPWM_LOW. | ||||||||
(15-µs time reference has 5% accuracy coming from 4-MHz internal oscillator) | ||||||||
● | When ERR_CFG bit is 1 (TMS570 mode): error low duration with 5-µs resolution | |||||||
Use Equation 15 and Equation 16 to calculate the minimum and maximum values for the LOW duration, tTMS570_LOW. | ||||||||
(5-µs time reference has 5% accuracy coming from 4-MHz internal oscillator) |
Initialization source: NPOR
Controller access: Read (RD_SAFETY_PWD_THR_CFG)
Write (WR_SAFETY_PWD_THR_CFG). Write update can only occur in the DIAGNOSTIC state. Write access locked through SW_LOCK command.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
RSV | RSV | RSV | RSV | PWD_THR[3] | PWD_THR[2] | PWD_THR[1] | PWD_THR[0] |
0b | 0b | 0b | 0b | 1b | 1b | 1b | 1b |
Initialization source: NPOR
Controller access: Read (RD_SAFETY_CFG_CRC)
Write (WR_SAFETY_CFG_CRC). Write update can only occur in the DIAGNOSTIC state. Write access locked through SW_LOCK command.
Initialization source: NPOR, post LBIST reinitialization
Controller access: Read (RD_DIAG_CFG_CTRL)
Write (WR_DIAG_CFG_CTRL)
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
MUX_EN | SPI_SDO | MUX_OUT | INT_CON[2] | INT_CON[1] | INT_CON[0] | MUX_CFG[1] | MUX_CFG[0] |
0b | 0b | 0b | 0b | 0b | 0b | 0b | 0b |
Initialization source: NPOR, post LBIST reinitialization
Controller access: Read (RD_DIAG_MUX_SEL )
Write (WR_DIAG_MUX_SEL)
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
MUX_SEL[7] | MUX_SEL[6] | MUX_SEL[5] | MUX_SEL[4] | MUX_SEL[3] | MUX_SEL[2] | MUX_SEL[1] | MUX_SEL[0] |
0b | 0b | 0b | 0b | 0b | 0b | 0b | 0b |
D[7:0] | MUX_SEL[7:0]: Diagnostic MUX channel select | |||||||
Note: The MUX channel table is dependent on the MUX_CFG[1:0] bit settings in the DIAG_CFG_CTRL register (see Section 5.5.4.17.1) |
Initialization source: NPOR
Controller access: Read (RD_WD_TOKEN_FDBK)
Write (WR_WD_TOKEN_FDBK). Write update can only occur in the DIAGNOSTIC state. Write access locked through SW_LOCK command.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
FDBK[3] | FDBK[2] | FDBK[1] | FDBK[0] | TOKEN_SEED[3] | TOKEN_SEED[2] | TOKEN_SEED[1] | TOKEN_SEED[0] |
0b | 0b | 0b | 0b | 0b | 0b | 0b | 0b |
Initialization source: NPOR
Controller access: Read (RD_WD_WIN1_CFG)
Write (WR_WD_WIN1_CFG). Write update can only occur in the DIAGNOSTIC state. Write access locked through SW_LOCK command.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
RSV | RT[6] | RT[5] | RT[4] | RT[3] | RT[2] | RT[1] | RT[0] |
0b | 1b | 1b | 1b | 1b | 1b | 1b | 1b |
D[7] | RSV | |||||||
D[6:0] | RT[6:0]: Watchdog Window 1 duration setting | |||||||
– | See Equation 1 and Equation 2 to calculate the minimum and maximum values for the tWIN1 time period. |
Initialization source: NPOR
Controller access: Read (RD_WD_WIN2_CFG)
Write (WR_WD_WIN2_CFG). Write update can only occur in the DIAGNOSTIC state. Write access locked through SW_LOCK command.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
RSV | RSV | RSV | RW[4] | RW[3] | RW[2] | RW[1] | RW[0] |
0b | 0b | 0b | 1b | 1b | 0b | 0b | 0b |
D[7:5] | RSV | |||||||
D[4:0] | RW[4:0]: Watchdog Window 2 duration setting | |||||||
– | See Equation 3 and Equation 4 to calculate the minimum and maximum values for the tWIN2 time period. |
Initialization source: NPOR, post LBIST reinitialization
Controller access: Read only (RD_WD_TOKEN_VALUE)
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
WD_FAIL_TH | RSV | RSV | RSV | TOKEN[3] | TOKEN[2] | TOKEN[1] | TOKEN[0] |
1b | 0b | 0b | 0b | 0b | 0b | 0b | 0b |
Initialization source: NPOR, post LBIST reinitialization
Controller access: Read only (RD_WD_STATUS)
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
WD_ANSW_CNT [1] |
WD_ANSW_CNT [0] |
ANSWER_ERR | WD_WRONG_CFG | WD_CFG_CHG | SEQ_ERR | TIME_OUT | ANSWER_EARLY |
1b | 1b | 0b | 0b | 0b | 0b | 0b | 0b |
Initialization source: NPOR
Controller access: Write only (WR_WD_ANSWER)
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
WD_ANSW[7] | WD_ANSW[6] | WD_ANSW[5] | WD_ANSW[4] | WD_ANSW[3] | WD_ANSW[2] | WD_ANSW[1] | WD_ANSW[0] |
0b | 0b | 0b | 0b | 0b | 0b | 0b | 0b |
D[7:0] | WD_ANSW[7:0]: answer bytes | |||||||
– | See Section 5.4.15.4 for details on answer bytes | |||||||
– | Only for Q&A mode |
Initialization source: NPOR
Controller access: Read (RD_SENS_CTRL)
Write (WR_SENS_CTRL)
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
RSV | RSV | RSV | VDD5_EN | RSV | RSV | RSV | VSOUT1_EN |
0b | 0b | 0b | 1b | 0b | 0b | 0b | 0b |