TMS320F2837xD/S And TMS320F2807x Safety Manual UG (Rev. B) TMS320F2837x DS

User Manual:

Open the PDF directly: View PDF PDF.
Page Count: 98

DownloadTMS320F2837xD/S And TMS320F2807x Safety Manual UG (Rev. B) TMS320F2837x DS
Open PDF In BrowserView PDF
User's Guide
SPRUI78B – July 2016 – Revised June 2018

Safety Manual for TMS320F2837xD/S and TMS320F2807x

This document is the Functional Safety Manual for the Delfino™ TMS320F2837xD/S and Piccolo™
TMS320F2807x MCU series from Texas Instruments C2000™ real-time microcontroller product line. The
C2000 product line utilizes a common safety architecture that is implemented for multiple products in
automotive and industrial applications.
Contents
1
Introduction ................................................................................................................... 2
2
System Integrator Development Interface Agreement .................................................................. 7
3
C2000 Development Process for Management of Systematic Faults ............................................... 10
4
TMS320F2837xD/S and TMS320F2807x MCU Architecture for Management of Random Faults ............. 18
5
Brief Description of Safety Elements .................................................................................... 31
6
Brief Description of Diagnostics .......................................................................................... 46
7
References .................................................................................................................. 69
Appendix A
Safety Architecture Configurations .............................................................................. 70
Appendix B
Terms and Definitions ............................................................................................ 73
Appendix C Summary of Safety Features and Diagnostics ................................................................ 75
List of Figures
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

.................................................................. 4
Functional Block Diagram of TMS320F2837xS MCU................................................................... 5
Functional Block Diagram of TMS320F2807x MCU .................................................................... 6
TI (Companywide) New Product Development Flow .................................................................. 12
TI Business Debrief Process Model ..................................................................................... 13
Application of fRMethodology Flow in C2000 Context ................................................................ 15
Software Development V Model.......................................................................................... 17
Definition of the C2000 MCU Used in a Compliant Item .............................................................. 18
E-GAS System Overview From Standard............................................................................... 19
VDA E-Gas Monitoring Concept Applied to C2000 MCU ............................................................. 20
Relationship Between DTI, Fault Reaction Time and FTTI ........................................................... 21
Illustration of FTTI .......................................................................................................... 21
Reciprocal Comparison Implementation ................................................................................ 23
C2000 MCU Delfino F2837xD With Safety Features .................................................................. 25
C2000 MCU Delfino F2837xD Device Block Diagram With Safety Partitioning ................................... 26
C2000 MCU Safe State Definition ....................................................................................... 27
C2000 MCU Device Operating States ................................................................................... 28
C2000 MCU CPU Start-Up Timeline .................................................................................... 29
Fault Response Severity .................................................................................................. 30
Generic Hardware of a System........................................................................................... 31
CLA Liveness Check....................................................................................................... 51
ePWM Fault Detection Using X-BAR .................................................................................... 58
Monitoring of ePWM by ADC ............................................................................................. 61
DAC to ADC Loopback .................................................................................................... 64
Opens/Shorts Detection Circuit........................................................................................... 64
Functional Block Diagram of TMS320F2837xD MCU

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

1

Introduction

www.ti.com

26

McBSP Reception Data Path ............................................................................................. 67

27

McBSP Transmission Data Path ......................................................................................... 67

28

ISO26262 Illustration of Item, System, Component, Hardware Part and Software Unit .......................... 73
List of Tables

1

Acronyms and Expansions ................................................................................................. 3

2

ADC Open-Shorts Detection Circuit Truth Table....................................................................... 65

3

Safety Architecture Configurations ....................................................................................... 70

4

Summary Table Legend ................................................................................................... 75

5

Summary of Safety Features and Diagnostic........................................................................... 76

Trademarks
Delfino, Piccolo, C2000, SafeTI are trademarks of Texas Instruments.
All other trademarks are the property of their respective owners.

1

Introduction
The products supported by this document are developed according to a quality managed (QM) process
and marketed as SafeTI-QM (http://www.ti.com/ww/en/functional_safety/safeti/SafeTI-QualityManaged.html) for use in functional safety related system designs. SafeTI component design package
(see Section 2.1) associated with this device includes documentation to support evaluation of suitability for
use in functional safety system designs. This Functional Safety Manual is part of the SafeTI design
package to aid customers who are designing systems in compliance with ISO26262 or IEC61508
functional safety standards.

1.1

About This Document
This Functional Safety Manual provides information needed by system developers to assist in the creation
of a functional safety system using a C2000 microcontroller (MCU). This document contains:
• Overview of Delfino TMS320F2837xD/S and Piccolo TMS320F2807x MCU product architectures
• Overview of the development process utilized to reduce systematic failures
• Overview of the safety architecture for management of random failures
• Details of architecture partitions and implemented safety mechanisms
It is expected that the user of this document should have a general familiarity with the Delfino
TMS320F2837xD/S and Piccolo TMS320F2807x MCU product family. More information can be found at
http://www.ti.com/C2000. This document is intended to be used in conjunction with the device-specific
data sheets, technical reference manuals, and other documentation for the products being supplied.

2

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Introduction

www.ti.com

1.2

Acronyms Used in This Document
Table terms and definitions ready for reference are listed in Table 1.
Table 1. Acronyms and Expansions
Acronyms

Expansion

ADC

Analog-to-Digital Converter

ASIL

Automotive Safety Integrity Level (ISO 26262)

CLA

Control Law Accelerator

CPU

Central Processing Unit

CRC

Cyclic Redundancy Check

DAC

Digital-to-Analog Converter

DTI

Diagnostic Test Interval

E/E/PE

Electrical/Electronic/Programmable Electronic

E2E

End-to-End Protocol

EMIF

External Memory Interface

ePIE

enhanced Peripheral Interrupt Expansion

ePWM

enhanced Pulse Width Modulator

eQEP

enhanced Quadrature Encoder Pulse

EUC

Equipment Under Control

FMEDA

Failure Mode Effects and Diagnostic Analysis

FPU

Floating Point Unit

FSA

Functional Safety Assessment

FSM

Functional Safety Manual

FTA

Fault Tree Analysis

FTTI

Fault Tolerant Time Interval

HARA

Hazard Analysis and Risk Assessment

HFT

Hardware Fault Tolerance

IEC

International Electro Technical Commission

ISO

International Organization for Standardization

MCU

Microcontroller Unit

MTBF

Mean Time Between Failure

OTP

One Time Configurable

PWM

Pulse Width Modulator

SIL

Safety Integrity Level

TI

Texas Instruments Inc.

TMU

Trigonometric Math Unit

VCU

Viterbi, Complex Math and CRC Unit

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

3

Introduction

1.3

www.ti.com

C2000 Architecture and Product Overview
The TMS320F2837xD/S and TMS320F2807x are powerful 32-bit floating-point microcontroller unit (MCU)
designed for advanced closed-loop control in automotive and industrial applications.

1.3.1

TMS320F2837xD Delfino MCU
TMS320F2837xD supports two instances of the C28x + CLA architecture (four processing elements) that
significantly boosts system performance. The integrated analog and control peripherals also let designers
consolidate control architectures and reduce multiprocessor use in some of the high-end systems.
The C28x CPUs are further boosted by the Trigonometric Math Unit (TMU) accelerator that enables fast
execution of algorithms with trigonometric operations common in transforms and torque loop calculations.
The Viterbi, Complex Math and CRC Unit (VCU) accelerator reduces the time for complex math
operations common in encoded applications. Users may refer to Accelerators: Enhancing the Capabilities
of the C2000™ MCU Family to see how the accelerators can be employed to increase the performance of
the MCU in many real-time applications.
The CLA is an independent 32-bit floating-point accelerator that runs at the same speed as the main C28x
CPU, responding to peripheral triggers with minimum event latency and executing code concurrently with
the main CPU.
The TMS320F2837xD supports up to 1MB (512KW) of onboard Flash memory with error correction code
(ECC) and up to 204KB (102KW) of SRAM. Two 128-bit secure zones are also available on each CPU for
code protection.
User-Configurable User-Configurable
DCSM
DCSM
OTP
OTP
1K x 16
1K x 16

PUMP
OTP/Flash
Wrapper

MEMCPU1
CPU1.CLA1 to CPU1
128x16 MSG RAM
CPU1 to CPU1.CLA1
128x16 MSG RAM

CPU1.CLA1

Flash
256K x 16
Secure

Flash
256K x 16
Secure

C28 CPU-1
FPU
VCU-II
TMU

OTP/Flash
Wrapper

PSWD
Dual
Code
Security
Module
+
Emulation
Code
Security
Logic
(ECSL)

CPU1.M0 RAM 1KX16

MEMCPU2

CPU1.M1 RAM 1KX16

C28 CPU-2

CPU1.M0 RAM 1KX16

FPU
VCU-II
TMU

CPU2.CLA1

CPU1.CLA1 to CPU1
128x16 MSG RAM
CPU1 to CPU1.CLA1
128x16 MSG RAM

CPU1 Local Shared
6x 2Kx16
LS0-LS5 RAMs

CPU1.M1 RAM 1KX16
CPU1 Local Shared
6x 2Kx16
LS0-LS5 RAMs

Secure Memories
shown in Red

Interprocessor
Communication
(IPC)
Module

CPU1.D0 RAM 2Kx16
CPU1.D1 RAM 2Kx16

A
B
C
D

B5:0
Analog
MUX

Config

ADCIN14
Data Bus
Bridge

ADCIN15

DAC
x3

Main PLL

CPU1.D1 RAM 2Kx16

CPU1 to CPU2
1Kx16 MSG RAM

CPU Timer 0
CPU Timer 1
CPU Timer 2

ePIE
up to (192
interrupts)

CPU1 to CPU2
1Kx16 MSG RAM

ePIE
up to (192
interrupts)

INTOSC2
External Crystal or
Oscillator

CPU1.CLA1 Data ROM
(4Kx16)
Aux PLL

AUXCLKIN
Secure-ROM 32Kx16
Secure
Boot-ROM 32Kx16
Nonsecure

CPU2.DMA

TRST
TCK
TDI
TMS
TDO

JTAG

Data Bus
Bridge

EMIF1

EMIF2

GPIO

GPIOn

RAM

Data Bus
Bridge

EM2Dx
EM2Ax
EM2CTLx

uPP

Data Bus
Bridge

EM1Dx
EM1Ax
EM1CTLx

McBSP-A/B

UPPAWT
UPPACLK

SPIA /B/C
(16 L FIFO)

MDXx
MRXx
MCLKXx
MCLKRx
MFSXx
MFSRx
UPPAD[7:0]
UPPAEN
UPPAST

CANA/B
(32-MBOX)

Peripheral Frame 2

SPISIMOx
SPISOMIx
SPICLKx
SPISTEx

USB
Ctrl /
PHY

CANTXx

SCII2C-A/B
A/B/C/D
(16 L FIFO)
(16 L FIFO)

CANRXx

Data Bus Bridge

USBDP

Data Bus Bridge

USBDM

Data Bus Bridge

SCLx

SDx_Cy

SDx_Dy

EQEPxB
EQEPxI
EQEPxS

ECAPx

EXTSYNCIN
EXTSYNCOUT

TZ1-TZ6

EPWMxB

EPWMxA

eCAP- eQEP-1/2/3 SDFM-1/2
1/../6

EQEPxA

ePWM-1/../12

INTOSC1

CPU2 Buses

Peripheral Frame 1

HRPWM-1/../8

Watchdog

WD Timer
NMI-WDT

CPU Timer 0
CPU Timer 1
CPU Timer 2

CPU1.DMA

GPIO MUX

CPU1 Buses

SDAx

Comparator
Subsystem
(CMPSS)

Secure-ROM 32Kx16
Secure
Boot-ROM 32Kx16
Nonsecure

SCITXDx

D5:0

ADC
Result
Regs

SCIRXDx

C5:2

CPU1.CLA1 Data ROM
(4Kx16)

16-/12-bit ADC
x4

CPU1.CLA1 Bus

A5:0

Low-Power
Mode Control

CPU1.D0 RAM 2Kx16

Global Shared
16x 4Kx16
GS0-GS15 RAMs

WD Timer
NMI-WDT

CPU1.CLA1 Bus

PSWD
Dual
Code
Security
Module
+
Emulation
Code
Security
Logic
(ECSL)

GPIO MUX, Input X-BAR, Output X-BAR

Copyright © 2016, Texas Instruments Incorporated

Figure 1. Functional Block Diagram of TMS320F2837xD MCU

4

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Introduction

www.ti.com

Performance analog and control peripherals are also integrated to further enable system consolidation.
Four independent 12/16-bit ADCs provide precise and efficient management of multiple analog signals,
which ultimately boosts system throughput. The new sigma-delta filter module (SDFM) works in
conjunction with the sigma-delta modulator to enable isolated current shunt measurements. The
Comparator Subsystem (CMPSS) with windowed comparators allows for protection of power stages when
current limit conditions are exceeded or not met. Other analog and control peripherals include the Digitalto-Analog Converter (DAC), Pulse Width Modulation (PWM), Enhanced Capture (eCAP), Enhanced
Quadrature Encoder Pulse (eQEP) and other peripherals. Peripherals such as External Memory Interface
(EMIF) and Controller Area Network (CAN) modules (ISO11898-1/CAN 2.0B-compliant) extend the
connectivity of the C2000 MCUs.
The device configurations supported by this safety manual for TMS320F2837xD MCUs is outlined in the
TMS320F2837xD Dual-Core Delfino™ Microcontrollers Data Sheet. Not all variants are available in all
packages or all temperature grades. To confirm availability, contact your local Texas Instruments sales
and marketing.
1.3.2

TMS320F2837xS Delfino MCU
TMS320F2837xS supports a single-instance of the C28x + CLA architecture (two processing elements).
The integrated analog and control peripherals also let designers consolidate control architectures and
bring down multiprocessor use in some of the high-end systems.
The TMS320F2837xS supports up to 1MB (512KW) of onboard Flash memory with error correction code
(ECC) and up to 164KB (82KW) of SRAM. Two 128-bit secure zones are also available on the CPU for
code protection.
Performance analog and control peripherals are also integrated on this C2000 MCU to further enable
system consolidation, similar to the TMS320F2837xD.
MEMCPU1
CPU1.CLA1 to CPU1
128x16 MSG RAM
CPU1 to CPU1.CLA1
128x16 MSG RAM

CPU1.CLA1

C28 CPU-1
PSWD

FPU
VCU-II
TMU

Dual
Code
Security
Module
+
Emulation
Code
Security
Logic
(ECSL)

CPU1 Local Shared
6x 2Kx16
LS0-LS5 RAMs

Secure Memories
shown in Red

CPU1.D0 RAM 2Kx16

Config

ADC
Result
Regs

ADCIN14
Data Bus
Bridge

INTOSC2

AUXCLKIN

TDI
TMS
TDO

CPU1.DMA

McBSP-A/B

uPP

RAM

Data Bus
Bridge

Data Bus
Bridge

EMIF1

EMIF2

GPIO

GPIOn

SPIA/B/C
(16L FIFO)

Data Bus
Bridge

EM2Dx
EM2Ax
EM2CTLx

CANTXx

CANA/B
(32-MBOX)

CANRXx

USBDP

USBDM

USB
Ctrl /
PHY

Peripheral Frame 2

EM1Dx
EM1Ax
EM1CTLx

Data Bus Bridge Data Bus Bridge

SCII2C-A/B
A/B/C/D
(16L FIFO)
(16L FIFO)

SCITXDx

SDx_Cy

SDx_Dy

EQEPxB
EQEPxI
EQEPxS

ECAPx

Main PLL

JTAG

Data Bus Bridge

eCAP- eQEP-1/2/3 SDFM-1/2
1/../6

EQEPxA

EPWMxB

EXTSYNCIN
EXTSYNCOUT

TZ1-TZ6

EPWMxA

INTOSC1

CPU1 Buses

Peripheral Frame 1

ePWM-1/../12

Watchdog

TRST
TCK

DAC
x3

HRPWM-1/../8

GPIO MUX

External Crystal or
Oscillator

CPU1.CLA1 Data ROM
(4Kx16)

SCLx

Comparator
Subsystem
(CMPSS)

Low-Power
Mode Control

Aux PLL

UPPAWT
UPPACLK

ADCIN15

(F28377S, F28375S only)
Flash Wrapper for
Bank 1

Global Shared
16x 4Kx16
GS0-GS15 RAMs

ePIE
up to (192
interrupts)

Secure-ROM 32Kx16
Secure
Boot-ROM 32Kx16
Nonsecure

SDAx

D5:0

CPU Timer 0
CPU Timer 1
CPU Timer 2

Flash Wrapper for
Bank 0

MDXx
MRXx
MCLKXx
MCLKRx
MFSXx
MFSRx
UPPAD[7:0]
UPPAEN
UPPAST

Analog
MUX

CPU1.M0 RAM 1Kx16
CPU1.M1 RAM 1Kx16

SCIRXDx

C5:2

16-/12-bit ADC
x4

WD Timer
NMI-WDT

(F28377S, F23875S only)
Flash Bank 1
256K x 16
Secure
PUMP

Flash Bank 0
256K x 16
Secure

SPISIMOx
SPISOMIx
SPICLKx
SPISTEx

A
B
C
D

B5:0

CPU1.CLA1 Bus

A5:0

CPU1.D1 RAM 2Kx16

User-Configurable
DCSM
OTP
1K x 16

GPIO MUX, Input X-BAR, Output X-BAR

Copyright © 2016, Texas Instruments Incorporated

Figure 2. Functional Block Diagram of TMS320F2837xS MCU
The device configurations supported by this safety manual for TMS320F2837xS MCUs is outlined in the
TMS320F2837xS Delfino™ Microcontrollers Data Sheet. Not all variants are available in all packages or
all temperature grades. To confirm availability, contact your local Texas Instruments sales and marketing.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

5

Introduction

1.3.3

www.ti.com

TMS320F2807x Piccolo MCU
The F2807x supports a single-instance of the C28x + CLA architecture (two processing elements). The
integrated analog and control peripherals also let designers consolidate control architectures and reduce
multiprocessor use in some of the high-end systems.
The F2807x device supports up to 512KB (256KW) of ECC-protected onboard Flash memory and up to
100KB (50KW) of SRAM with parity. Two independent security zones are also available for 128-bit code
protection of the main C28x.
MEMCPU1
CPU1.CLA1 to CPU1
128x16 MSG RAM
CPU1 to CPU1.CLA1
128x16 MSG RAM

CPU1.CLA1

C28 CPU-1
PSWD

FPU
VCU-II
TMU

Dual
Code
Security
Module
+
Emulation
Code
Security
Logic
(ECSL)

CPU1 Local Shared
6x 2Kx16
LS0-LS5 RAMs

Secure Memories
shown in Red

CPU1.D0 RAM 2Kx16

ADC
Result
Regs

ADCIN14
Data Bus
Bridge

TDI
TMS
TDO

CPU1.DMA

CANTXx

CANA/B
(32-MBOX)

CANRXx

USBDP

USB
Ctrl /
PHY

Peripheral Frame 2

SPIA/B/C
(16L FIFO)

McBSP-A/B

Data Bus
Bridge

Data Bus
Bridge

EMIF1

GPIO

GPIOn

Data Bus Bridge Data Bus Bridge

USBDM

SCII2C-A/B
A/B/C/D
(16L FIFO)
(16L FIFO)

SCLx

SDx_Cy

SDx_Dy

EQEPxB
EQEPxI
EQEPxS

ECAPx

AUXCLKIN

JTAG

Data Bus Bridge

eCAP- eQEP-1/2/3 SDFM-1/2
1/../6

EQEPxA

EPWMxB

EXTSYNCIN
EXTSYNCOUT

TZ1-TZ6

EPWMxA

Aux PLL

CPU1 Buses

Peripheral Frame 1

ePWM-1/../12

INTOSC2

TRST
TCK

DAC
x3

HRPWM-1/../8

Main PLL

PUMP
OTP/Flash
Wrapper

External Crystal or
Oscillator

CPU1.CLA1 Data ROM
(4Kx16)

SDAx

Comparator
Subsystem
(CMPSS)

INTOSC1

EM1Dx
EM1Ax
EM1CTLx

ADCIN15

Watchdog

Global Shared
16x 4Kx16
GS0-GS15 RAMs

ePIE
up to (192
interrupts)

Secure-ROM 32Kx16
Secure
Boot-ROM 32Kx16
Nonsecure

SCIRXDx

D5:0

Config

CPU Timer 0
CPU Timer 1
CPU Timer 2

GPIO MUX

MDXx
MRXx
MCLKXx
MCLKRx
MFSXx
MFSRx

Analog
MUX

CPU1.M0 RAM 1Kx16
CPU1.M1 RAM 1Kx16

SCITXDx

C5:2

16-/12-bit ADC
x4

WD Timer
NMI-WDT

Low-Power
Mode Control

Flash Bank 0
256K x 16
Secure

SPISIMOx
SPISOMIx
SPICLKx
SPISTEx

A
B
C
D

B5:0

CPU1.CLA1 Bus

A5:0

CPU1.D1 RAM 2Kx16

User-Configurable
DCSM
OTP
1K x 16

GPIO MUX, Input X-BAR, Output X-BAR

Copyright © 2016, Texas Instruments Incorporated

Figure 3. Functional Block Diagram of TMS320F2807x MCU
The performance analog subsystem of the TMS320F2807x MCUs consist of up to three 12-bit ADCs,
which enable simultaneous management of three independent power phases, and up to eight windowed
comparator subsystems (CMPSSs), allowing very fast, direct trip of the PWMs in overvoltage or
overcurrent conditions. In addition, the device has three 12-bit DACs, and precision control peripherals
such as enhanced pulse width modulators (ePWMs) with fault protection, eQEP peripherals, and eCAP
units. Connectivity peripherals such as dual CAN modules (ISO11898-1/CAN 2.0B compliant) add
connectivity to your application.
The device configurations supported by this safety manual for TMS320F2807x MCUs is outlined in the
TMS320F2807x Piccolo™ Microcontrollers Data Sheet. Not all variants are available in all packages or all
temperature grades. To confirm availability, contact your local Texas Instruments sales and marketing.

6

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

System Integrator Development Interface Agreement

www.ti.com

2

System Integrator Development Interface Agreement
You, as a system and equipment manufacturer or designer, are responsible to ensure that your systems
(and any TI hardware or software components incorporated in your systems) meet all applicable safety,
regulatory, and system-level performance requirements. All application and safety related information in
this document (including application descriptions, suggested safety measures, suggested TI products, and
other materials) is provided for reference only. You understand and agree that your use of TI components
in safety critical applications is entirely at your risk, and that you (as buyer) agree to defend, indemnify,
and hold TI harmless from any and all damages, claims, suits, or expense resulting from such use.
The products supported by this functional safety manual could be implemented as unique silicon designs
or may be shared silicon designs that have elements disabled or not guaranteed by specification, even if
present in silicon. Only the capabilities that are enabled in the device as specified in the device-specific
data sheet and technical reference manual are to be used for safety feature enhancements or safety
software implementation. Capabilities that are not part of the device, even though it is supported in the
superset of the device family, are not guaranteed to be present and operate.
The effectiveness of the hardware safety mechanisms is noted in the detailed safety analysis report. This
information should be used to determine the strategy for utilizing safety mechanisms. The technical and
implementation details of each safety mechanism can be found in the device-specific technical reference
manual. Depending on the safety standard and end equipment targeted, it may be necessary to manage
not only single point faults, but also latent faults. Many of the safety mechanisms described in this
document can be used as primary diagnostics, diagnostics for latent fault, or both. When considering
system design for management of latent faults, failure of execution resources for software diagnostics,
such as failure of CPU and memories need to be considered.

2.1

SafeTI™ Design Packages for Functional Safety Applications
SafeTI design packages for functional safety applications are used in a variety of safety-related
applications, including digital power, electric vehicles, industrial machinery, industrial process, medical,
automotive, rail, and aviation. SafeTI products help TI customers get to market quickly with safety critical
systems targeting compliance to safety standards such as ISO 26262, IEC 61508, and IEC 60730 (in
Europe)/ UL 1998 (in the United States). The C2000 MCUs TMS320F2837xD/S and TMS320F2807x are
being offered with SafeTI QM and SafeTI-60730 (UL 1998) design packages for functional safety
applications.
• SafeTI-QM design packages for functional safety applications include hardware, software, and tools
which are developed according to a quality managed (QM) process for use in functional safety related
system designs. These design packages include documentation to support easy evaluation of
suitability for use in functional safety system designs with application of appropriate system level
measures. The C2000 MCUs TMS320F2837xD/S and TMS320F2807x are automotive-qualified
products and comply with the quality management standards of ISO 9001 and ISO/TS16949. In
addition as SafeTI QM offerings, we provide additional documentation (functional safety manual and
safety analysis report) to assist customers in certifying their systems to ISO26262 and/or IEC61508
functional safety standards.
• SafeTI-60730 design packages for functional safety applications include software self-test libraries
developed in accordance with IEC 60730:2008 requirements to support safety systems of Class A,
Class B or Class C. These design packages help manufacturers of automatic controls for household
and similar use, to quickly and easily achieve applicable system certification. The TMS320F2837xD/S
and TMS320F2807x can be used by customers to achieve system level certification up to IEC 60730
Class C and/or UL 1998 Class 2 levels.

2.2

System Integrator Activities
The system integrator is responsible for carrying out a number of product development activities. These
activities carried out may include but are not limited to the information discussed in the following
subsections.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

7

System Integrator Development Interface Agreement

2.2.1
•

•

•
•
•
•

•
•
2.2.2
•

•
•
•
•
2.2.3

www.ti.com

Operational and Environmental Constraints
Verify that the implementation of the TI component in the system design is compliant to requirements
in TI documentation. This includes but is not limited to the requirements found in technical reference
manuals, data sheets, errata documents, safety manuals and safety analysis reports.
Verify that the system operational lifetime (power-on hours) does not exceed lifetime specifications for
the TI component, as specified in the device data sheet. If the operational lifetime (power-on hours) is
not specified in the data sheet, contact a TI quality/reliability engineering representative. For more
information, see [1].
Adhere to the device handling requirements based on JEDEC handling standards J-STD-020 [2] and JSTD-033 [3].
Define a mechanism for reporting of the field failures back to Texas Instruments.
Define system maintenance requirements. This C2000 MCU does not require maintenance.
Define system repair requirements. This C2000 MCU is non-repairable with respect to permanent
faults. A power-on reset of the C2000 MCU may be considered a repair activity for transient faults per
some definitions of system repair requirements.
Define system decommissioning requirements. This C2000 MCU has no specific decommissioning
requirements.
Define system disposal requirements. This C2000 MCU has no specific disposal requirements.
Safety Concept Definition
Define the safety functions and verify that the microcontroller behaves properly to support execution of
the defined safety function. This C2000 MCU is a generic product which is capable of supporting a
variety of safety functions.
Define the system-level safe state concept considering safe-state entry, maintenance of safe state, and
safe-state exit as appropriate to the application and verify correct implementation ( see Section 4.2.4).
Define the system-level error-handling concept and verify correct implementation.
Define appropriate overall timing requirements for safety metrics to be calculated for the application
(see Section 4.1.2).
Define appropriate safety metric targets for the application.

Safety Concept Implementation
Select and implement an appropriate set of diagnostics and safety mechanisms from the
TMS320F2837xD/S and TMS320F2807x MCU safety manuals necessary to satisfy the requirements of
the targeted functional safety standards and safety concept. Depending on the results of the system
level safety analysis, it may not be necessary to implement all of the diagnostic measures that the
TMS320F2837xD/S and TMS320F2807x MCU Development Team has identified.
• Ensure that any additional system level hardware or software diagnostics created or implemented by
the system integrator are developed with an appropriate process to avoid systematic faults and is
capable of detecting/preventing random faults.
• Define an appropriate Diagnostic Test Interval (DTI) per diagnostic to be implemented.
•

2.2.4

Verification of Safety Concept Including Safety Metric Calculation
Verify the behavior of the TMS320F2837xD/S and TMS320F2807x MCU outputs in the system when it
is in a fault condition.
• Both Functional Logic and Diagnostic Logic could fail. It is the responsibility of the system integrator to
evaluate both failure modes based on the specific application usage and the specific diagnostics
applied. C2000 MCU Development Team’s safety analysis for the C2000 MCU considers all fault
models noted in IEC 61508-2 Annex A [4] and ISO26262-5 Annex D [5] for both permanent and
transient failure modes.
• Ensure that the system design considers system level diagnostics recommended by the
TMS320F2837xD/S and TMS320F2807x MCU Development Team, such as external voltage
supervision, external watchdog, and so forth (see Section 4).
•

8

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

System Integrator Development Interface Agreement

www.ti.com

•
•

•
•
•
•
•

•

2.3

Product Safety Constraints
•
•
•

2.4

Verify that the implemented diagnostics meet the target diagnostic test interval for every diagnostic.
Estimate failure rates and diagnostic coverage per failure mode with respect to specific application
usage. The TMS320F2837xD/S and TMS320F2807x MCU Development team provides tools to
support this activity in the FMEDA.
Verify that environmental and operational constraints are properly modeled in the FMEDA to provide
failure rate estimates.
Verify that appropriate on-chip design elements are selected in the FMEDA for the specific safety
function under analysis.
Verify that targeted safety metrics are calculated and achieved.
Verify the diagnostic coverage achieved by the implemented system and software based diagnostics.
Verify that the safety analysis considers TMS320F2837xD/S and TMS320F2807x MCU elements that
are necessary to support the primary function, such as clock, power, and similar items. Many times the
focus of analysis is the functional data path but the elements necessary to support proper operation
should also be considered.
Execute a co-existence/freedom from interference analysis per the targeted standard to confirm that
implemented functionality can co-exist without interference.

The TMS320F2837xD/S and TMS320F2807x MCU family of C2000 MCUs are similar to Type B
devices, as defined in IEC 61508-2:2010, section 7.4.4.1.3.
This device claims no hardware fault tolerance, (for example, no claims of HFT > 0), as defined in IEC
61508:2010
For safety components developed according to many safety standards, it is expected that the
component safety manual will provide a list of product safety constraints. For a simple component or
more complex components developed for a single application, this is a reasonable response. However,
the TMS320F2837xD/S and TMS320F2807x MCU product family is both a complex design and is not
developed targeting a single, specific application. Therefore, a single set of product safety constraints
cannot govern all viable uses of the product.

Suggestions for Improving Freedom From Interference
The following steps may be useful for improving independence of function when using the
TMS320F2837xD/S and TMS320F2807x MCU:
1. Hold peripherals clocks disabled if the available peripherals are unused.
2. Hold peripherals in reset if the available peripherals are unused.
3. Power down the analog components cores if they are not used.
4. When possible, separate critical I/O functions by using non adjacent I/O pins/balls.
5. Partition the memory as per the application requirements to respective processing units and configure
the Access Protection Mechanism for Memories, for each memory instance such that only the
permitted masters have access to memory.
6. Dual Zone Code Security Module (DCSM) can be used for functional safety as firewall to protect
shared memories, where functions with different safety integrity levels can be executed from different
security zones (zone1, zone2 and unsecured zone) thus mitigating risk originating due to interference
among these.
7. Disabling of SOC Inputs to ADC can help avoid interference from unused peripherals to disturb
functionality of ADC.
8. Disabling of Unused CLA Task Trigger Sources and Disabling of Unused DMA Trigger Sources will
mitigate risk of interference caused due to the trigger events.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

9

System Integrator Development Interface Agreement

2.5

www.ti.com

Suggestions for Addressing Common Cause Failures
System Integrator needs to execute a dependent failure/common cause failure analysis to consider
possible dependent/common cause failures on the sub-elements of the TMS320F2837xD/S and
TMS320F2807x MCU, including pin level connections.
• Consider a relevant list of dependent failure initiators, such as the lists found in the draft ISO/PAS
19451 document, “Application of ISO 26262 to Semiconductors”.
• Verify that the dependent failure analysis considers the impact of the software tasks running on the
TMS320F2837xD/S and TMS320F2807x MCU, including hardware and software interactions.
• Verify that the dependent failure analysis considers the impact of pin/ball level interactions on the
TMS320F2837xD/S and TMS320F2807x MCU package, including aspects related to the selected I/O
multiplexing.
The following may be useful for addressing the common cause failures when using the C2000 MCU:
• External Watchdog
• External Voltage Supervisor
• External Clock Monitoring via XCLKOUT
• Using different voltage references and SOC trigger sources for ADC (see Section 6.5.9)
• To avoid common clock failure affecting Internal Watchdog(WD) and CPU, it is recommended to use
either INTOSC2 or X1/X2 as clock source to PLL
• Using PWM modules from different sync groups for implementing Hardware Redundancy
• Using GPIO pins from different groups when implementing Hardware Redundancy for GPIO pins

2.6

Support for System Integrator Activities
If you have any questions regarding usage of the TI documentation for system integration or if you have
questions regarding TMS320F2837xD/S and TMS320F2807x MCU level functional safety standard work
products not provided as part of the TI documentation package, contact TI support.

3

C2000 Development Process for Management of Systematic Faults
For Functional Safety critical systems it is necessary to manage both systemic faults and detect/prevent
random faults. Texas Instruments has created a development process for safety critical semiconductors
that greatly reduces probability of systematic failure. This process builds on a standard Quality Managed
(QM) development process as the foundation for safety critical development. A second layer of
development activities that are specific to safety critical developments targeting IEC 61508 and ISO 26262
then augments this standard QM process.
In 2007, TI first saw the need to augment this standard QM development process in order to develop
products according to IEC 61508. TI engaged with safety industry leader exida consulting to ensure the
development was compliant to the IEC 61508 standard. During 2008, a process for safety critical
development according to IEC 61508 first edition was implemented at TI. By mid-2009, it became clear
that the emerging IEC 61508 second edition and ISO 26262 functional safety standards would require
enhanced process flow capabilities. Due to the lack of maturity of these draft standards, it was not
possible to implement a development process that ensured compliance before final versions of the
standards were available.
TI joined the ISO 26262 working group in mid-2009 as a way to better understand and influence the
standard as applicable to microcontroller development. As part of the US Technical Advisory Group (TAG)
and international working group for ISO 26262, TI has notable contributions to:
• ISO 26262-5; Annex D - informative section describing failure modes and recommended diagnostics
for hardware components, enhanced by TI's detailed knowledge of silicon failure modes and
effectiveness of diagnostic methods
• ISO 26262-10; Clause 9 - informative section describing development of safety elements out of
context, a technique that legitimizes and enables the use of Commercial Off The Shelf (COTS) safety
critical components
• ISO 26262-10; Annex A - informative section describing how to apply ISO 26262 to microcontrollers,
influenced by TI's lessons learned in application of IEC 61508 to microcontroller development

10

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

C2000 Development Process for Management of Systematic Faults

www.ti.com

In mid-2010, TI started developing a process flow compliant to IEC 61508 2nd edition and ISO 26262 draft
baseline 18. TI worked with Yogitech in the ISO 26262 international working group and found that the
companies have complementary capabilities. A partnership for engineering services and safety consulting
services to accelerate new safety-related product development was formed between the two companies.
Yogitech's existing fRMethodology development process and TI's IEC 61508 development process were
merged and enhanced to create a new process addressing both ISO 26262 and IEC 61508 2nd edition.
This process has gone through a process of continual improvement as ISO 26262 standards development
continues.

3.1

TI's Hardware Development Process
The C2000 Development Team has been developing microcontrollers for real time control and energy
conversion applications for over 20 years. Many of the end applications of C2000 in the Industrial and
Automotive segments have stringent requirements on product quality management and reliability. Though
C2000 MCUs are not explicitly developed in compliance to a functional safety standard, the C2000 MCU
development process incorporates elements necessary to manage systematic faults. This quality
managed development methodology for design, test and manufacture of integrated circuits and systems
has been certified by Bureau Veritas Certification to be compliant with ISO 9001 and ISO 14001:2004
standards. Additionally, TI sites have participated in TS 16949 certification since 2004. The scope of TI’s
TS 16949:2009 certificate is "the design and manufacture of integrated circuits". All C2000 MCUs are
manufactured and tested at TS 16949 compliant facilities. For up-to-date information on TI quality process
certifications, see http://www.ti.com/quality.
• TI’s Standard HW development follows a phased stage-gate process that is illustrated in Figure 4. The
key elements of the flow are:
– Assess: New Product Development (NPD) opportunities are assessed for their viability
– Plan: Once NPD is past the assess phase, cross-functional teams develop a functional specification
and establish a Product Boundary Agreement.
• As shown in Figure 4, all aspects of the product development including design, design
verification, application level validation, post silicon characterization, qualification and whole
product requirements are documented and planned.
– Create: All pre-silicon steps from plan phase are executed. The create phase ends with mask
generation (first step of manufacturing the integrated circuit).
– Validate: product is characterized, qualified and whole product requirements are fulfilled before
releasing the product to market.
– Sustain: Product ramp is monitored and as needed product support is provided including but not
limited to customer notification in case of production offload to a different manufacturing site or
documentation/communication of issues (if any).

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

11

C2000 Development Process for Management of Systematic Faults

www.ti.com

Phase 1
Assess

Phase 2
Plan

Phase 3
Create

Phase 4
Validate

Identify New Product
Opportunities

Develop Project Plan and
Boundary Agreement

Design and Layout

Validate Product

Develop Product Proposal

Develop Project
Specification

Design Verification

Qualify Product

Sustain
(after NPDE)

Monitor
Ramp
Develop Test and Validation HW/SW

Release
Test HW/SW

Sample
Customers

Build Intial
Inventory

Develop Software

Develop Datasheet, Documentation and Marketing Colateral

Product
Support

Manage Execution and Risks

Release to
Market
Debrief Reviews

New Product Development Execution Reviews

Kickoff Review

Project Plan Review

Create Review

Ramp Review

Figure 4. TI (Companywide) New Product Development Flow

12

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

C2000 Development Process for Management of Systematic Faults

www.ti.com

•

Company wide required minimum best practices mandate a debrief model (shown in Figure 5) at all
stages of hardware and system development which further underscores C2000 MCU team’s
commitment to meeting the highest quality standards and continuously improving on them.
Project Teams Execute Debrief Reviews
‡ )XOO &URVV )XQFWLRQDO 7HDP 3DUWLFLSDWLRQ
‡ 5HIOHFW RQ $FFRPSOLVKPHQWV/Issues
‡ 'ULYH ,VVXHV 'RZQ WR 7UXH 5RRW &DXVH /HYHO
‡ (3 X 5 Why Understanding)
‡ ,GHQWLI\ $FWLRQV WKDW $GGUHVV 6\VWHPDWLF ,VVXHV
‡ with Clear Who, What and When Deliverables

New
Project
Project
Debrief
Kick-Off
Implement
Corrective/Preventive
Actions

Fan-Out
Across TI

Fan-Out Across TI
‡ 6KDUH ³1HZ´ %HVW 3UDFWLFHV ZLWK
‡ the Playbook Best Practice Team
‡ ,VVXH $OHUWV (Alert System Link)
‡ for Systematic Issues/Solutions
‡ $SSO\ /HVVRQV /HDQHG WR 1HZ 3URMHFWV...

Share Best
Practices/
Lessons Learned

Execution Review Focus
‡ %HVW 3UDFWLFHV DQG /HVVRQHG /HDUQHG &DSWXUHG
‡ (Business Debrief Lessons Leaned File)
‡ 2SHQ $FWLRQV 5HYLHZHG WKUX &ORVXUH
‡ %XVLQHVV /RRN-Across and Fan-out

Figure 5. TI Business Debrief Process Model

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

13

C2000 Development Process for Management of Systematic Faults

3.2

www.ti.com

Yogitech fRMethodology Enhanced Development Process
The C2000 MCU Development Team engaged with Yogitech in starting in 2014 to complete an
independent Safety Architecture Assessment of the C2000 MCU Family. This analysis completed by
Yogitech, addressed HW random failures and dependent failures. The aim of the analysis was to prepare
the Functional Safety Manual and FMEDA for the C2000 MCUs by clearly describing how to use the
C2000 MCU in safety critical applications including the description of the application level safety
mechanisms.
The C2000 MCU Development Team leveraged Yogitech’s fRMethodology to generate collateral (like this
Functional Safety Manual and Safety Analysis report – Quantitative FMEDA) needed by customers to get
their systems certified to the applicable Functional Safety Standards. Yogitech’s fRMethodology is a
systematic workflow for performing detailed safety analysis on integrated circuits using a patented white
box approach, allowing exploration/evaluation of design safety architecture.
• fRMethodology (proprietary to YOGITECH) mainly consists of:
– Dividing the component into elementary parts by using automatic tools to guarantee the
completeness of the analysis
– Computing the safety metrics by investigating the fault models of each elementary part, attributing
the failure rate, the safeness (Fsafe) and estimating the diagnostic coverage of the planned hardware
or software safety mechanism
– Verifying the safety metrics by fault injection campaign that involves simulating permanent, transient
and common cause faults

14

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

C2000 Development Process for Management of Systematic Faults

www.ti.com

•

The details of fRMethodology flow applied in the C2000 MCU development context is shown in
Figure 6.

Divide the IC in Parts

Estimate their failure rate:

O part

f ( O elem , S , DC )
No

What-if analysis

ASIL
targets
met?

Identify weak parts with
a criticality ranking

For weak parts, identify
HW/SW countermeasures

Yes

Re-estimate DC

Go to final
implementation
Figure 6. Application of fRMethodology Flow in C2000 Context

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

15

C2000 Development Process for Management of Systematic Faults

3.3

www.ti.com

TI’s Enhanced Safety Development Process
TI’s enhanced safety development process is a merger of TI’s standard HW development process and
Yogitech fRMethodology flow for functional safety compliant development. The goal of the process
development is to take the best aspects of each flow and collaborate, resulting in the best in class
capabilities to reduce systematic faults. The process flow targets compliance to IEC 61508 and ISO
26262, and is continuously improved to incorporate new features of emerging functional safety standards.
These functional safety standards are specifically targeted because TI believes they best represent the
state of the art in functional safety development for semiconductors. While not directly targeted at other
functional safety standards, it is expected that products developed to an industry state-of-the-art can be
readily utilized in other functional safety systems. This enhanced development process has been
assessed and certified by TUEV SUED for compliance to IEC 61508 and ISO 26262 The development
process applied to the C2000 silicon covered by this document incorporates all changes through IEC
61508-2:2010 (second edition) and the ISO 26262-5:2011 international standard release.
• During New Product Development, assumptions are made on system level design, functional safety
concepts, and requirements based on C2000 MCU development team’s expertise with systems.
Combined qualitative and quantitative or similar functional safety analysis techniques are used to
assess potential silicon failure modes and diagnostic techniques needed to detect/prevent random
fails. Failure and failure mode distribution estimations are based on multiple industry standards as well
as TI manufacturing data and field failure rate information.
• Decommissioning: The responsibility for any required decommission impact analysis, decommissioning
planning and reporting shall reside with the end equipment company branding the end application
product. Semiconductor components typically do not have functional safety related decommissioning
requirements. Depending on the type of hardware component produced, it may be necessary for the
C2000 MCU team to assist the end equipment developer in the plans for decommission or disposal of
deployed products.

3.4

C2000 Safety Diagnostics Library
Safety Diagnostics Libraries (SDLs) that are compliant to IEC 60730-1: 2010; Annex H are developed with
all necessary work products and best practices to minimize systematic faults. These software libraries can
also help assist customers develop applications compliant with the IEC 60335 and other standards.
• The software development model used is the “V” Model depicted in Figure 7 where each life cycle
phase ends with a cross-functional review called Checkpoint (CP) review.
• In some cases, the releases may have to iterate through the checkpoints multiple times. Approval to
proceed to next Checkpoint is obtained at the end of the Checkpoint review from identified
stakeholders. Verification methods like peer reviews are planned and conducted for work products as
per verification plan.
– Appropriate tailoring is adopted and documented based on the project requirements.
• Detailed supporting procedures are documented to ensure functional safety throughout the project life
cycle. Additional tools and techniques respecting the safety integrity levels of the targeted standards
are applied at each development phase.
• Functional safety audits and assessments are planned and conducted as per defined procedure.
Qualified personnel with adequate independence as required by the targeted standards and safety
levels do these audits and assessments.

16

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

C2000 Development Process for Management of Systematic Faults

www.ti.com

CP1
Commissioning

CP2
Safety
Requirements

CP3A
SWFMEA

CP4

CP2
Test Strategy

Req Testing

CP3A

Architecture
Design

CP3A

Closure

CP3B

Safety Test
Matrix

Integration
Testing

CP3B

Module
Design

CP5

SW Verification

CP3B

Integration
Test Matrix

Unit Testing

CP3B
Unit Test Plan

CP3A
Coding

Copyright © 2016, Texas Instruments Incorporated

Figure 7. Software Development V Model

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

17

TMS320F2837xD/S and TMS320F2807x MCU Architecture for Management of Random Faults

4

www.ti.com

TMS320F2837xD/S and TMS320F2807x MCU Architecture for Management of
Random Faults
The C2000 MCU product architecture includes many safety mechanisms, which can detect and respond to
random faults when used correctly. This section of the document describes the architectural safety
concept for the C2000 MCU family of devices.

4.1

Functional Safety Concept
To stay as general as possible, the safety concept assumes the MCU playing the role of a processing unit
(or part of it) and connected to remote controller(s) by means of a communication bus as shown in
Figure 8. The communication bus is directly or indirectly connected to sensor(s) and actuator(s).
(Reference: Yogitech Initial Safety Analysis Report - YT_D3).
IEC 61508:1 clause 8.2.12 defines a compliant item as any item (for example an element) on which a
claim is being made with respect to the clauses of IEC 61508 series. A system including
TMS320F2837xD/S or TMS320F2807x microcontroller as indicated by Figure 8 can be used in a
compliant item according to IEC61508.
Sensor

Processing
Element

Actuator

Sensor
S

Remote
Controller

Actuator
Remote
Controller

A

Remote
Controller

A

Processing Element
MCU
S

Remote
Controller

Figure 8. Definition of the C2000 MCU Used in a Compliant Item

18

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

TMS320F2837xD/S and TMS320F2807x MCU Architecture for Management of Random Faults

www.ti.com

4.1.1

VDA E-GAS Monitoring Concept
The standardized E-GAS monitoring concept [6] for engine management systems generated by the
German VDA working group “E-Gas-Arbeitskreis” is an example of a well-trusted safety-architecture that
may be used for applications other than engine management systems provided it fits the purpose of the
new application in terms of diagnosis feasibility, environment constraints, time constraints, robustness, and
so forth [7]. For more information, see Figure 9.
Power
Determining Output
Stages/
Safety-Relevant
Bus Communication

Level 1
Input
Signals

ECU Functions

Level 2
Enable

Function Monitoring
Program Flow Check

Level 3
Memory Test
Level 2

Fault Reaction
Linking

Function
Controller

Quest Spec.
Test Data

Function Spec
Instruction Test

Response
Contribution

Question
Monitoring
Controller

Answer
Monitor Modules

Enable

Figure 9. E-GAS System Overview From Standard

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

19

TMS320F2837xD/S and TMS320F2807x MCU Architecture for Management of Random Faults

www.ti.com

The TMS320F2837xD/S and TMS320F2807x MCU device family supports heterogeneous asymmetric
architecture and their functional safety features lend themselves to an E-GAS concept implementation at
system level as indicated in Figure 10. In the first level (Level 1), the functions required for the system
mission are computed. Second level (Level 2) checks the correct formation in first level based on selected
set of parameters. Third level (Level 3) implements an additional external monitoring element, for the
correct carrying out of the mission in the first level and/or monitoring in the second level. The exact
functional safety implementation and the modules used for realizing Level 1 and Level 2 and the external
monitoring device for realizing Level 3 are left to the system designer. Though Figure 10 indicates CLA
implementing Level1 and CPU(28x) implementing Level2 of the EGAS monitoring concept, both the
processing units are capable of implementing either of the levels. The application can determine the
partitioning based on the system requirements.
Real-Time Control

Diagnostics

Monitor

Fault-Response

C2000 C2000

Q&A

Verify Sequence

External
Monitor

Q&A Monitor

Monitor
Monitoring Sequence

Device Self-Test

28X

Q&A

Level 3

28X

Monitoring Function
Program Flow

Safe
State

Fault Detection

cross-check

Level 2

CLA

Main Function

Safety Related

Level 1
Primary
Input
Signals

Figure 10. VDA E-Gas Monitoring Concept Applied to C2000 MCU

20

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

TMS320F2837xD/S and TMS320F2807x MCU Architecture for Management of Random Faults

www.ti.com

4.1.2

Fault Tolerant Time Interval (FTTI)
Various safety mechanisms in the devices are either always-on (see SRAM ECC, CPU Handling of Illegal
Operation, Illegal Results and Instruction Trapping, and so forth) or executed periodically (see CPU
Hardware Built-In Self-Test (HWBIST), VCU CRC Check of Static Memory Contents, and so forth) by the
application software. The time between the executions of online diagnostic tests by a safety mechanism is
termed as Diagnostic test interval (DTI). Once the fault is detected, depending on the fault reaction of the
associated fault (for example, external system reaction to ERRORSTS pin assertion), the system will enter
in the safe-state. The time-span in which a fault or faults can be present in a system before a hazardous
event occurs is called Fault Tolerant Time Interval (FTTI) as defined in ISO26262. This is similar to
Process Safety Time (PST) defined in IEC61508. Figure 11 illustrates the relationship between DTI, Fault
Reaction Time and FTTI.

Fault
Detection

Fault

Hazard
Avoided
Normal Operation

Unsafe State
Safe State

Fault Reaction
Time
T <= DTI

FTTI
Figure 11. Relationship Between DTI, Fault Reaction Time and FTTI
Level2/Level3
function

Tcc + Td < FTTI

Level1
function

Check NOT OK

Check OK
Check OK

Cross check Period (Tcc)
Delay for MCU to
enter safe state,
Td
FTTI Budget for the MCU

Figure 12. Illustration of FTTI

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

21

TMS320F2837xD/S and TMS320F2807x MCU Architecture for Management of Random Faults

www.ti.com

The frequency and extent of each of the Level 2 and Level 3 checks should be consistent with the Fault
Tolerant Time Interval (FTTI). Figure 12 illustrates the frequency of the required checks. The checks
should be such that single point faults of the microcontroller should be detected and responded to, such
that the TMS320F2837xD/S and TMS320F2807x MCU enters a safe state within the FTTI budget. The
microcontroller on detection of a fault enters into one of the safe states as illustrated in Figure 16. An
example of a diagnostic for single point faults is ECC/Parity for memories.
The proposed functional safety concept, subsequent functional safety features and configurations
explained in this document are for reference purpose only. The system and equipment designer or
manufacturer is responsible to ensure that the end systems (and any Texas Instruments hardware or
software components incorporated in the systems) meet all applicable safety, regulatory and system-level
performance requirements.

4.2
4.2.1

TMS320F2837xD/S and TMS320F2807x MCU Safety Philosophy
TMS320F2837xD MCU Safety Philosophy
TMS320F2837xD class of devices have two CPU subsystems. The two CPU subsystems can work
independent of each other. Each CPU subsystem has a pair of diverse processing units (C28x and CLA)
with different hardware architecture, instruction set and software tools. All four processing units can be
used to execute main function (Level 1 of VDA E-gas concept). The hardware diagnostic capabilities for
the processing units (CPU Hardware Built-In Self-Test (HWBIST)), CPU Handling of Illegal Operation,
Illegal Results and Instruction Trapping, Software Test of CLA, CLA Handling of Illegal Operation and
Illegal Results, Internal Watchdog (WD) and so forth) can be used to implement the Level 2 monitoring as
per the VDA E-gas concept. This implementation results in four independent processing channels for
TMS320F2837xD.
Another possible option for TMS320F2837xD will be to dedicate the second processing unit of each CPU
subsystem for implementing Level 2 monitoring as illustrated in Figure 13. Due to diversity of the
processing units, we can implement a 1oo1D architecture using “reciprocal comparison by software in
separate processing units” providing high diagnostic coverage for the processing units (ISO26262-5, Table
D.4 and IEC61508-2, Table A.4). This implementation will have two independent processing channels for
TMS320F2837xD. Heterogeneous CPU cores minimize possibility of common mode failures while
implementing this reciprocal comparison thereby improving confidence in its Diagnostic Coverage. The
major safety features of TMS320F2837xD are shown in Figure 14.

22

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

TMS320F2837xD/S and TMS320F2807x MCU Architecture for Management of Random Faults

www.ti.com

Typical Flow
Main Function
CPU1

Safety Flow
Monitoring Function

Monitoring Function
Shut-Down
Control

Main Function Monitoring
+Non-Critical Mission Logic

Algorithm
Parameter Check

Input Check

CPU2

Main Function
Output
Enable

Output
Main Function
Input

Input

Copyright © 2016, Texas Instruments Incorporated

Figure 13. Reciprocal Comparison Implementation

4.2.2

TMS320F2837xS and TMS320F2807x MCU Safety Philosophy
TMS320F2837xS and TMS320F2807x class of devices have a single CPU subsystem. The CPU
subsystem has a pair of diverse processing units (C28x and CLA) with different hardware architecture,
instruction set and software tools. Both processing units can be used to execute main function (Level 1 of
VDA E-gas concept). The inherent diagnostic capabilities for the processing (CPU Hardware Built-In SelfTest (HWBIST), CPU Handling of Illegal Operation, Illegal Results and Instruction Trapping, CLA, CLA
Handling of Illegal Operation and Illegal Results, Internal Watchdog (WD) and so forth) can be used to
implement the Level 2 monitoring as per the VDA E-gas concept. This implementation results in having
two independent processing units for TMS320F2837xS/TMS320F2807x.
Another possible option for TMS320F2837xS/TMS320F2807x will be to dedicate the second processing
unit of the CPU subsystem for implementing Level 2 monitoring as illustrated in Figure 13. Due to diversity
of the processing units, a 1oo1D architecture can be implemented using “reciprocal comparison by
software in separate processing units” providing high diagnostic coverage for the processing units
(ISO26262-5, Table D.4 and IEC61508-2, Table A.4). Heterogeneous CPU cores minimize possibility of
common mode failures while implementing this reciprocal comparison thereby improving confidence in its
Diagnostic Coverage. This implementation will have a single independent processing channel for
TMS320F2837xS.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

23

TMS320F2837xD/S and TMS320F2807x MCU Architecture for Management of Random Faults

www.ti.com

The product safety philosophy is explained based on 1oo1D safety configuration implemented using
reciprocal comparison and other hardware diagnostics. Figure 15 illustrates safety partitioning based on
the diagnostics employed. The various layers implemented are:
• Reciprocal Comparison Layer (RED) – This is the region of logic used for all processing operations.
This logic has a one processing unit executing the main functionality (Level 1), second processing unit
with specific assumptions of use and other hardware diagnostic elements executing monitoring
functionality (Level 2). The memories closely coupled with C28x and CLA are protected with either
ECC or parity. This region with high diagnostic coverage for both single point faults and latent faults
can be used for performing software diagnostic on other design elements. The diverse processing
(C28x and CLA) have different hardware architecture, instruction set and software tools. However, they
share common power, clock, reset, bus and infrastructure elements. System integrator needs to
independently perform common cause failure analysis and freedom from interference analysis and
implement the necessary safety measures (for example, External Watchdog, Access Protection
Mechanism for Memories, and so forth) to address the concerns which may come up from the
analysis.
• Blended Layer (BLACK) – This is the region of logic that includes safety critical peripherals. This region
has a mix of (predominantly) software and hardware diagnostics. Application protocols (for example,
end-to-end Safeing techniques used in communication protocols) and application related checks (for
example, measured values falls within the safe operating limit) are used to support functionally safe
operation.
• Offline Layer (BLUE) – This region of logic has very limited or no integrated hardware diagnostics.
Many features in this layer (for example, debug, test, calibration functions, and so forth) are used for
production test or application debug and not used during regular operation. Techniques are employed
to avoid freedom from interference to main application by the logic elements in this layer.
Due to the inherent versatility of the device architecture, several software voting based safety
configurations are possible. Some of the safety configurations possible with TMS320F2837xD for
improving diagnostic coverage are explained in Table 3. While implementing these configurations, system
integrator needs to consider the potential common mode failures and address them in an appropriate
manner. This may suitably be modified to adapt to TMS320F2837xS and TMS320F2807x requirements
based on the availability of processing units. (As stated earlier, the device claims no hardware fault
tolerance, (for example, no claims of HFT > 0), as defined in IEC 61508:2010).

24

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

www.ti.com

TMS320F2837xD/S and TMS320F2807x MCU Architecture for Management of Random Faults

Figure 14. C2000 MCU Delfino F2837xD With Safety Features

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

25

TMS320F2837xD/S and TMS320F2807x MCU Architecture for Management of Random Faults

Dual
Code
Security
Module
+
ECSL

TI-OTP 1Kx16

TI-OTP 1Kx16

User OTP
1Kx16

User OTP
1Kx16

FLASH
256Kx16
Secure

FLASH
256Kx16
Secure

Dual
Code
Security
Module
+
ECSL

PUMP
PSWD

OTP/Flash
Wrapper

OTP/Flash
Wrapper

www.ti.com

PSWD

MEMCPU 1
CPU1.M0 RAM 1Kx16
C28 CPU-1
FPU-II
VCU-II
TMU

CPU1.CLA1 to CPU 1
128x16 MSG RAM

CPU2.M0 RAM 1Kx16

CPU1 to CPU1.CLA1
128x16 MSG RAM

CPU2 to CPU 2.CLA1
128x16 MSG RAM

CPU1 Local Shared 6x
2Kx16
LS0-5 RAMs

CPU2 Local Shared
6x 2Kx16
LS0-5 RAMs
HWBIST

HWBIST

CPU1.D0 RAM 2Kx16

CPU1.D0 RAM 2Kx16
WD Timer
NMI-WDT

CLA1 Bus

CPU1.D1 RAM 2Kx16

ADC x4
@ 4 msps

CLA Data ROM
(4Kx16)

C

B7:0
C5:0

Secure-ROM 32Kx16
Secure

Analog
Mux

D

CPU1.D1 RAM 2Kx16
CLA Data ROM
(4Kx16)

CPU Timer 0
CPU Timer 1
CPU Timer 2

CPU1 to CPU2
1Kx16 MSG RAM

ePIE
(up to 192
interrupts )

B

WD Timer
NMI-WDT

Global Shared
16x 4Kx16
GS0-15 RAMs

CPU Timer 0
CPU Timer 1
CPU Timer 2

A
A5:0

CPU2.CLA1

CPU2.CLA1 to CPU2
128x16 MSG RAM

CPU2.M1 RAM 1Kx16

X1
X2
XRSn

INTOSC
1,
INTOSC
2,
EXTOSC
,
PLL,

XCLKIN
LPM Wakeup
GPIO
Mux

7 Ext Interrupts

EMU0
EMU1

ePIE
(up to 192
interrupts)

CPU2 to CPU1
1Kx16 MSG RAM

CLA2 Bus

CPU1.CLA1

C28 CPU-2
FPU-II
VCU-II
TMU

CPU1.M1 RAM 1Kx16

Secure-ROM 32Kx16
Secure

TRSTn
TCK
TDI
TMS
TDO

JTAG

Boot-ROM 32Kx16
Non Secure

Boot-ROM 32Kx16
Non Secure

D5:0
DMA1

Comparator
SubSystem
(CMPSS)

DMA2

DFT subsystem

CPU2 Buses

DAC x3
CPU2 Buses

CPU2 Buses

Peripheral Bridge

GPIO

XCTLn

XDn

XDAn

UPPAST

UPPACLK

UPPAEN

EMIF1/2

UPPAWT

MVSRx

UPPAD[7:0]

UPP

EQEPxI

MCLKRx

MRXx

MDXx

MCLKXx

McBSP-A/B

SPISTEx

SPICLKx

SPISOMIx

CANTXx

SPI-A/B/C
(16L FIFO)

SPISIMOx

DCAN-A/B
(32-mbox)

CANRXx

USB0DP

USB-0 Ctrl /
PHY

USB0DM

SCLx

I2C-A/B
(16L FIFO)

SDAx

SCIRXDx

SCI-A/B/C/D
(16L FIFO)

SCITXDx

SDCx

SD-1/../ 8

SDDx

EQEPxI

EQEPxS

EQEP-1/2/3

EQEPxB

ESYNCI

ESYNCO

EPWMxB

TZ1-6

EPWMxA

ECAPx

ECAP1/../ 6

HRPWM-1/../8

EQEPxA

ETPWM-1/../ 12

GPIO MUX

Figure 15. C2000 MCU Delfino F2837xD Device Block Diagram With Safety Partitioning

4.2.3

Assumed Safety Requirements
The following requirements (assumed safety requirements) (at a minimum) need to be implemented by the
Level 3 checker (VDA E-gas concept) realized using external components.
• External voltage monitor to supervise the power supply provided to the TMS320F2837xD/S and
TMS320F2807x MCU
• External Watchdog timer that can be used for diagnostic purposes
• Components required for taking the system to safe state as per the TMS320F2837xD/S and
TMS320F2807x MCU safe state defined in Section 4.2.4.

4.2.4

C2000 MCU Safe State
Referring to Figure 16, the safe state of the C2000 MCU is defined as the one in which:
• TMS320F2837xD/S and TMS320F2807x MCU Reset is asserted
• Power supply to TMS320F2837xD/S and TMS320F2807x MCU is disabled using an external
supervisor as a result of Level 3 check failure. In general, a power supply failure is not considered in
detail in this analysis as it is assumed that the system level functionality exists to manage this
condition.

26

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

TMS320F2837xD/S and TMS320F2807x MCU Architecture for Management of Random Faults

www.ti.com

•

External system is informed using one of TMS320F2837xD/S and TMS320F2807x MCU’s IO pins as a
result of Level 2 check failure (for example, ERRORSTS pin is asserted).
Output of the TMS320F2837xD/S and TMS320F2807x MCU driving the actuator is forced to inactive
mode as a result of Level 2 check failure (for example, GPIO pins corresponding to the mission
function is tri-stated).

XRSn

Input

+

•

ERRORSTS
TMS320F2837xD
TMS320F2837xS
TMS320F2807x Output

1. Proper Operational State

+

-

+

XRSn

ERRORSTS

3. Safe state: MCU is
kept in reset

Input

ERRORSTS
TMS320F2837xD
TMS320F2837xS
TMS320F2807x

Output

2. Safe state: Power supply cut-off or
not in proper operating range.

+

Input

TMS320F2837xD
TMS320F2837xS
TMS320F2807x Output

XRSn

-

+

-

ERRORSTS

XRSn

Input

XRSn
TMS320F2837xD
TMS320F2837xS
TMS320F2807x Output

4. Safe state: ERRORSTS
pin is asserted

Input

ERRORSTS
TMS320F2837xD
TMS320F2837xS
TMS320F2807x

Output
Tristated

5. Safe state: MCU
Output is tristated
Copyright © 2016, Texas Instruments Incorporated

Figure 16. C2000 MCU Safe State Definition

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

27

TMS320F2837xD/S and TMS320F2807x MCU Architecture for Management of Random Faults

Device boot phase

Power removed

www.ti.com

XRSn = 0

Chip Pin Reset
released
Powered Off

Reset State

Cold Boot

Power applied
CPU1 Reset
released

Safe State
Operational

CPU2SS operation (optional
applicable to TMS320F2837xD only))

CPU1SS operation

e

t
Sta
fe s
a
S
n
ed ditio
fin
De con

Pre-Operational

Warm Boot

CPU2 Reset
released

Operational

PreOperational

Warm Boot

Figure 17. C2000 MCU Device Operating States

4.2.5

Operating States
The TMS320F2837xD/S and TMS320F2807x MCU products have a common architectural definition of
operating states. These operating states should be observed by the system developer in their software
and system level design concepts. The operating states state machine is shown in Figure 17. The
operating states can be classified into device boot phase and CPU1SS operation phase (applicable to all
the devices), and CPU2SS operation phase (applicable to TMS320F2837xD class of devices). CPU2SS
operation phase is initiated by CPU1SS operation phase. Any critical errors in either CPU1SS operation
phase or CPU2SS operation phase cause the device to enter into safe state.
The various states of the device operating states state machine are:
• Powered Off - This is the initial operating state of C2000 MCU. No power is applied to either core or
I/O power supply and the device is non-functional. An external supervisor can perform this action
(power-down the C2000 MCU) in any of the C2000 MCU states as response to a system level fault
condition or a fault condition indicated by the C2000 MCU.
• Reset State – In this state, the device reset is asserted either using the external pins or using any of
the internal sources.
• Safe State – In the Safe state, the device is either not performing any functional operations or an
internal fault condition is indicated using the device I/O pins.

28

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

TMS320F2837xD/S and TMS320F2807x MCU Architecture for Management of Random Faults

www.ti.com

•

Cold Boot - In the cold boot state, key analog elements, digital control logic, and debug logic are
initialized. The CPU remains powered but in reset. When the cold boot process is completed, the reset
of the master CPU is internally released, leading to the warm boot stage.
Warm Boot - The CPU begins execution from Boot ROM during the warm boot stage. CPU initializes
the device security (all memories come up as secure at the beginning of the warm boot and this stage
configures the security as needed for the particular system), exception handling and calibration of
analog components and initializes the peripheral boot mode if required. For more details regarding
boot process, see the device-specific boot ROM specification.
Pre-operational - Transfer of control from boot code to customer code takes place during this phase.
Application specific configurations (for example, clock frequency, peripheral enable, pinmux, and so
forth) are performed in this phase. Boot time self-test/proof-test required to ensure proper device
operation is performed during this phase.
Operational – This marks the system exiting the pre-operational state and entering the functional state.
The device is capable of supporting safety critical functionality during operational mode.

•

•

•

The device start-up timeline for both the CPUs are shown in Figure 18.
TI boot code execution. Can be characterized
based on device configuration

Customer code

Pre operational checks by
CPU1 (Verify RAM, Flash,
Watchdog, CPU, Y..)
Power Applied

Efuse autoload
(cold boot phase)

Reset Released

Boot ROM execution and
security initialization
(Warm boot phase)

Cold Boot

Pre Operational Phase

Warm Boot

Operational Phase

CPU1SS Start-up
Timeline
Boot ROM execution and
security initialization
(Warm boot phase)

CPU2 Reset released

CPU2 Execute

Application start handshake
Pre operational checks by
CPU2 (Verify RAM, Flash,
Watchdog, CPU, Y..)

CPU2SS Start-up
Timeline (optional)

Warm Boot

TI boot code

Pre Operational Phase

Operational Phase

Customer code

Figure 18. C2000 MCU CPU Start-Up Timeline

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

29

TMS320F2837xD/S and TMS320F2807x MCU Architecture for Management of Random Faults

4.2.6

www.ti.com

Management of Faults
The TMS320F2837xD/S and TMS320F2807x MCU product architecture provides different levels of fault
indication from internal safety mechanisms using CPU Interrupt, Non Maskable Interrupt (NMI), assertion
of ERRORSTS pin, assertion of CPU input reset and assertion of warm reset (XRSn). The fault response
is the action that is taken by the TMS320F2837xD/S and TMS320F2807x MCU or system when a fault is
indicated. Multiple potential fault responses are possible during a fault indication. The system integrator is
responsible to determine which fault response should be taken to ensure consistency with the system
safety concept. The fault indication ordered in terms of severity (device power down being the most
severe) is shown in Figure 19.
x
x
x
x
x

Device Powerdown
Assertion of XRSn pin
Assertion of CPU Reset
NMI and assertion of ERRORSTS pin
CPU Interrupt

Figure 19. Fault Response Severity
•

•

•

•

•

30

Device Powerdown: This is the highest priority fault response where the external component (see
Section 4.2.3) detects malfunctioning of the device or other system components and powers down the
TMS320F2837xD/S and TMS320F2807x MCU. From this state, it is possible to re-enter cold boot to
attempt recovery.
Assertion of XRSn: The XRSn reset could be generated from an internal or external monitor that
detects a critical fault having potential to violate safety goal. Internal sources generate this fault
response when the TMS320F2837xD/S and TMS320F2807x MCU is not able to handle the internal
fault condition by itself (for example, CPU1 (master CPU) is not able to handle NMI by itself). From this
state, it is possible to re-enter cold boot and attempt recovery.
Assertion of CPU Reset: CPU Reset changes the state of the CPU from pre-operational or operational
state to warm boot phase. The CPU Reset is generated from an internal monitor that detects any
security violations. On a properly working system, the security violations may be the secondary effect
due to a fault condition. In addition, CPU2 subsystem generates this fault response when it is not able
to handle the internal fault condition by itself (for example, CPU2 is not able to handle NMI by itself).
From this state, it is possible to re-enter warm boot phase and attempt recovery.
Non Maskable Interrupt (NMI) and assertion of ERRORSTS pin: C28x CPU supports a Non Maskable
Interrupt (NMI), which has a higher priority than all other interrupts. Each CPU subsystem is equipped
with a NMIWD module responsible for generating NMI to the C28x CPU. ERRORSTS pin will also be
asserted along with NMI. Depending on the system level requirements, the fault can be handled either
internal to the TMS320F2837xD/S and TMS320F2807x MCU using software or at the system level
using the ERRORSTS pin information.
CPU Interrupt: CPU interrupt allows events external to the CPU to generate a program sequence
context transfer to an interrupt handler where software has an opportunity to manage the fault. The
peripheral interrupt expansion (PIE) block multiplexes multiple interrupt sources into a smaller set of
CPU interrupt inputs.

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Safety Elements

www.ti.com

5

Brief Description of Safety Elements
This section contains a brief description of the elements on the TMS320F2837xD/S and TMS320F2807x
MCU device family, organized based on the classification of parts of generic hardware of a system [8] as
indicated in Figure 20. For a full functional description of any of these modules, see the device-specific
technical reference manual. The brief description of the hardware part is followed by the list of primary
safety mechanisms that can be employed to provide diagnostic coverage to the hardware part. Some
safety standards have the requirement to provide diagnostic coverage for the primary diagnostic measures
(for example, Latent Fault Metric requirement from ISO26262). These measures are called as test of
diagnostics. Primary diagnostics of type “Software” and “Hardware/Software” involves execution of the
software on the processing units viz. CPU and CLA and also use many of the MCU parts like
Interconnect, Memory (Flash, SRAM and ROM) and TMS320F2837xD/S and TMS320F2807x MCU
infrastructure components (Clock, Power, Reset and JTAG). In order to ensure integrity of the
implemented primary diagnostics and their associated diagnostic coverage values, measures to protect
execution of primary diagnostics on respective processing units needs to be implemented. Appropriate
combination of test of diagnostics is recommended to be implemented for parts of the MCU contributing
the successful operation of the processing units. For diagnostics for these parts, see the respective
sections in this safety manual. In case, separate test of diagnostic measures exist for a primary diagnostic
measure, they are mentioned along with the respective hardware part.
D.2 E/E System
D.9 Power Supply

D.11
Sensor

D.3
Connector

D.7 Digital I.

D.11
Sensor

D.3
Connector

D.7 Analogue I.

D.4
Processing Unit

D.3 Relay

D.3
Connector

D.12
Actuator

D.7 Digital O.

D.3
Connector

D.12
Actuator

D.7 Analogue O.

D.3
Connector

D.12
Actuator

D.8 Bus interface

D.6 RAM

D.5 ROM

D.10 Clock

D.2 E/E System

Figure 20. Generic Hardware of a System

5.1
5.1.1

C2000 MCU Infrastructure Components
Power Supply
The TMS320F2837xD/S and TMS320F2807x MCU device family requires an external device to supply the
necessary voltage and current for proper operation. Separate voltage rails are available for core (1.2 V),
Analog (3.3 V), Flash (3.3 V) and I/O logic (3.3 V). Following mechanisms can be used to improve the
diagnostic coverage of C2000 MCU power supply.
• External Voltage Supervisor
• External Watchdog (using GPIO or a serial interface)

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

31

Brief Description of Safety Elements

www.ti.com

NOTE:
•
•

•

•

5.1.2

Having independent voltage supervision at system level is an assumption used while
performing safety analysis.
Devices can be implemented with multiple power rails that are intended to be ganged
together on the system PCB. For proper operation of power diagnostics, it is
recommended to implement one voltage supervisor per ganged rail.
Common mode failure analysis of the external voltage supervisor along with
TMS320F2837xD/S and TMS320F2807x MCU is useful to determine dependencies in
the voltage generation and supervision circuitry.
Customer can consider using TI TPS6538x power supply and safety companion device
for voltage supervision at system level.

Clock
The C2000 MCU device family products are primarily synchronous logic devices and as such require clock
signals for proper operation. The clock management logic includes clock sources, clock generation logic
including clock multiplication by phase lock loops (PLLs), clock dividers, and clock distribution logic. The
registers that are used to program the clock management logic are located in the system control module.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Missing Clock Detect (MCD)
• Clock Integrity Check Using CPU Timer
• Clock Integrity Check Using HRPWM
• Internal Watchdog (WD)
• External Watchdog
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• PLL Lock Profiling Using On-Chip Timer
• Peripheral Clock Gating (PCLKCR)
The following tests can be applied as test-for-diagnostics on this module to meet Latent Fault Metric
Requirements:
• Software Test of Watchdog (WD) Operation
• Software Test of Missing Clock Detect Functionality
NOTE:
•
•

•

32

Higher diagnostic coverage can be obtained by setting tighter bounds when checking
clock integrity using Timer2.
TI recommends the use of an external watchdog over an internal watchdog for mitigating
the risk due to common mode failure. TI also recommends the use of a program
sequence, windowed, or question and answer watchdog as opposed to a single
threshold watchdog due to the additional failure modes that can be detected by a more
advanced watchdog.
Driving a high-frequency clock output on the XCLKOUT pin may have EMI implications.
The selected clock needs to be scaled suitably before sending out through IO.

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Safety Elements

www.ti.com

5.1.3

Reset
The power-on reset (PORn) generates an internal warm reset signal to reset the majority of digital logic as
part of the boot process. The warm reset can also be provided at device level as an I/O pin (XRSn) with
open drain implementation. Diagnostic capabilities like NMI watchdog and Watchdog are capable of
issuing a warm reset. For more information on the reset functionality, see the device-specific data sheet.
The following tests can be applied as diagnostics for this module to provide diagnostic coverage on a
specific function.
• External Monitoring of Warm Reset (XRSn)
• Reset Cause Information
• Glitch Filtering on Reset Pins
• NMIWD Shadow Registers
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• NMIWD Reset Functionality
• Peripheral Soft Reset (SOFTPRES)
The following tests can be applied as test-for-diagnostics on this module to meet Latent Fault Metric
Requirements:
• Software Test of Watchdig (WD) Operation
NOTE:
•
•

5.1.4

Internal watchdogs are not a viable option for reset diagnostics as the monitored reset
signals interact with the internal watchdogs.
Customer can consider using TI TPS6538x power supply and safety companion device
for reset supervision at system level.

System Control Module and Configuration Registers
The system control module contains the memory-mapped registers to configure clock, analog peripherals
settings and other system related controls. The system control module is also responsible for generating
the synchronization of system resets and delivering the warm reset (XRSn). The configuration registers
include the registers within peripherals that are not required to be updated periodically.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Multi-Bit Enable Keys for Control Registers
• Lock Mechanism for Control Registers
• Software Read Back of Written Configuration
• Periodic Software Read Back of Static Configuration Registers
• Online Monitoring of Temperature
• Peripheral Clock Gating (PCLKCR)
• Peripheral Soft Reset (SOFTPRES)
• EALLOW and MEALLOW Protection for Critical Registers
• Software Test of ERRORSTS Functionality
NOTE:
•
•

Review the Clock and Reset sections as these features are closely controlled by the
system control module.
Customer can consider using TI TPS6538x power supply and safety companion device
for ERRORSTS pin supervision at system level.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

33

Brief Description of Safety Elements

5.1.5

www.ti.com

Efuse Static Configuration
The TMS320F2837xD/S and TMS320F2807x MCU device family supports a boot time configuration of
certain functionality (such as trim values for analog macros) with the help of Efuse structures. The Efuses
are read automatically after power-on reset by an autoload function.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Efuse Autoload Self-Test
• Efuse ECC
• Periodic Software Read Back of Static Configuration Registers
The following tests can be applied as a test-for-diagnostic on this module:
• Efuse ECC Logic Self-Test

5.1.6

JTAG Debug, Trace, Calibration, and Test Access
The TMS320F2837xD/S and TMS320F2807x MCU device family supports debug, test, and calibration
implemented over an IEEE 1149.1 JTAG debug port. The physical debug interface is internally connected
to a TI debug logic (ICEPICK), which arbitrates access to test, debug, and calibration logic. Boundary
scan is connected in parallel to the ICEPICK to support usage without preamble scan sequences for
easiest manufacturing board test. The following tests can be applied as diagnostics for this module (to
provide diagnostic coverage on a specific function):
• Hardware Disable of JTAG Port
• Internal Watchdog (WD)
• External Watchdog

5.2
5.2.1

Processing Elements
C28x Central Processing Unit (CPU)
The CPU is a 32-bit fixed-point processor with Floating point, Viterbi, Complex Math and CRC Unit (VCU)
and Trigonometric Math Unit (TMU) co-processors. This device draws from the best features of digital
signal processing; reduced instruction set computing (RISC); and microcontroller architectures, firmware,
and tool sets. The CPU features include a modified Harvard architecture and circular addressing. The
RISC features are single-cycle instruction execution, and register-to-register operations. The modified
Harvard architecture of the CPU enables instruction and data fetches to be performed in parallel. The
CPU does this over six separate address/data buses. Its unique architecture makes it amenable to
integrate safety features external to CPU but on chip, to provide improved diagnostic coverage.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Reciprocal Comparison by Software
• CPU Hardware Built-In Self-Test (HWBIST)
• Software Test of CPU
• Periodic Software Read Back of Static Configuration Registers
• Access Protection Mechanism for Memories
• Hardware Disable of JTAG Port
• CPU Handling of Illegal Operation, Illegal Results and Instruction Trapping
• Internal Watchdog (WD)
• External Watchdog
• Information Redundancy Techniques
• Stack Overflow Detection

34

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Safety Elements

www.ti.com

The following tests can be applied as test-for-diagnostics on this module:
• CPU Hardware Built-In Self-Test (HWBIST) Auto Coverage
• CPU Hardware Built-In Self-Test (HWBIST) Fault Injection Capability
• CPU Hardware Built-In Self-Test (HWBIST) Timeout Feature
• VCU CRC Auto Coverage
NOTE: Measures to Mitigate Common Cause Failure in CPU Subsystem: Common-cause failures
are one of the important failure modes when a safety-related design is implemented in a
silicon device. The contribution of hardware and software dependent failures is estimated on
a qualitative basis because no general and sufficiently reliable method exists for quantifying
such failures. System Integrator should perform a detailed analysis based on the inputs from
ISO26262- 10, Table A.7 and IEC61508 ed2 PART 2 Annex E (BetaIC method).

5.2.2

Control Law Accelerator
The Control Law Accelerator (CLA) is an independent, fully-programmable, 32-bit floating-point math
accelerator with independent ISA and independent compiler and it helps concurrent control-loop
execution. The low interrupt-latency of the CLA allows it to read ADC samples "just-in-time." This
significantly reduces the ADC sample to output delay to enable faster system response and higher MHz
control loops.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Reciprocal Comparison by Software
• Software Test of CLA
• CLA Handling of Illegal Operation and Illegal Results
• Software Read Back of Written Configuration
• Periodic Software Read Back of Static Configuration Registers
• Information Redundancy Techniques
• CLA Liveness Check Using CPU
• Access Protection Mechanism for Memories
• Disabling of Unused CLA Task Trigger Sources

5.3
5.3.1

Memory (Flash, SRAM and ROM)
Embedded Flash Memory
The embedded Flash memory is a non-volatile memory that is tightly coupled to the C28x CPU. Each
CPUSS have its own dedicated flash memory. The Flash memory is not accessible by CLA or DMA. The
Flash memory is primarily used for CPU instruction access, though data access is also possible. Access
to the Flash memory can take multiple CPU cycles depending upon the device frequency and flash wait
state configuration. Flash wrapper logic provides prefetch and data cache to improve performance.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
The following tests can be applied as a test-for-diagnostic on this module:
• Bit Multiplexing in Flash Memory Array
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• Flash Program Verify and Erase Verify Check
• Software Test of Flash Prefetch, Data Cache and Wait-States
• Internal Watchdog (WD)
• External Watchdog

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

35

Brief Description of Safety Elements

•
•
•
5.3.2

www.ti.com

Data Scrubbing to Detect/Correct Memory Errors
CPU Handling of Illegal Operation, Illegal Results and Instruction Trapping
Hardware Redundancy
Embedded SRAM

The TMS320F2837xD/S and TMS320F2807x MCU device family has the following types of SRAMs with
different characteristics.
• Dedicated to each CPU (M0, M1, and Dx RAM)
• Shared between the CPU and its own CLA (LSx RAM)
• Shared between the CPU and DMA of both subsystems (GSx RAM)
• Used to send and receive messages between processors (MSGRAM)
All these RAMs are highly configurable to achieve control for write access and fetch access from different
masters. All dedicated RAMs are enabled with the ECC feature (both data and address) and shared
RAMs are enabled with the Parity (both data and address) feature. Each RAM has its own controller which
implements access protection, security related features and ECC/Parity features for that RAM.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• SRAM ECC
• SRAM Parity
• Software Test of SRAM
• Bit Multiplexing in SRAM Memory Array
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• Data Scrubbing to Detect/Correct Memory Errors
• Software Test of Function Including Error Tests
• Access Protection Mechanism for Memories
• Lock Mechanism for Control Registers
• Information Redundancy Techniques
• CPU Handling of Illegal Operation, Illegal Results and Instruction Trapping
• Internal Watchdog (WD)
• External Watchdog
• CLA Handling of Illegal Operation and Illegal Results
The following tests can be applied as a test-for-diagnostic on this module:
• Software Test of ECC Logic
• Software Test of Parity Logic
• VCU CRC Auto Coverage
5.3.3

Embedded ROM
The TMS320F2837xD/S and TMS320F2807x MCU device family has the following types of ROMs for
each CPU subsystem:
• Boot ROM helps to boot the device and contain functions for security initialization, device calibration
and support different boot modes
• CLA Data ROM contains math tables for CLA application usage

36

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Safety Elements

www.ti.com

The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• Software Test of Function Including Error Tests
• CPU Handling of Illegal Operation, Illegal Results and Instruction Trapping
• Internal Watchdog (WD)
• External Watchdog
• Power-Up Pre-Operational Security Checks
The following tests can be applied as a test-for-diagnostic on this module:
• VCU CRC Auto Coverage

5.4
5.4.1

On-Chip Communication Including Bus-Arbitration
Device Interconnect
The device interconnects links the multiples masters and slaves within the device. The device interconnect
logic comprises of static master selection muxes, dynamic arbiters and protocol convertors required for
various bus masters (CPU, CLA, DMA) to transact with the peripherals and memories.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Software Test of Function Including Error Tests
• Internal Watchdog (WD)
• External Watchdog
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• CPU Handling of Illegal Operation, Illegal Results and Instruction Trapping
• CLA Handling of Illegal Operation and Illegal Results

5.4.2

Direct Memory Access (DMA)
The direct memory access (DMA) module provides a hardware method of transferring data between
peripherals and/or memory without intervention from the CPU, thereby freeing up bandwidth for other
system functions. Additionally, the DMA has the capability to orthogonally rearrange the data as it is
transferred as well as “ping-pong” data between buffers. These features are useful for structuring data into
blocks for optimal CPU processing.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Information Redundancy Techniques
• Transmission Redundancy
• Software Read Back of Written Configuration
• Periodic Software Read Back of Static Configuration Registers
• Software Test of Function Including Error Tests
• Access Protection Mechanism for Memories
• DMA Overflow Interrupt
• Disabling of Unused DMA Trigger Sources

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

37

Brief Description of Safety Elements

5.4.3

www.ti.com

Inter Processor Communication (IPC)
The Inter-Processor Communications (IPC) module allows communication between the two CPU
subsystems. The module includes message RAMs, IPC flags and interrupts, command registers, flash
pump semaphore, clock configuration semaphore and a free running counter that are used to provide
reliable communication and synchronization between the two CPUs.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Information Redundancy Techniques Including End-to-End Safeing
• Transmission Redundancy
• Software Test of Function Including Error Tests
• Event Timestamping Using IPC Counter
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration

5.4.4

Enhanced Peripheral Interrupt Expander (ePIE) Module
The enhanced Peripheral Interrupt Expander (ePIE) module is used to interface peripheral interrupts to the
C28x CPU. It provides configurable masking on a per interrupt basis. The PIE module includes a local
SRAM that is used to hold the address of the interrupt handler per interrupt.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• PIE Double SRAM Hardware Comparison
• Software Test of SRAM
• Software Test of ePIE Operation Including Error Tests
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• Maintaining Interrupt Handler for Unused Interrupts
• Online Monitoring of Interrups and Events
The following tests can be applied as a test-for-diagnostic on this module:
• PIE Double SRAM Comparison Check

5.4.5

Dual Zone Code Security Module (DCSM)
The dual code security module (DCSM) is a security feature incorporated in this device. It prevents access
and visibility to on-chip secure memories (and other secure resources) to unauthorized persons. It also
prevents duplication and reverse engineering of proprietary code. Each CPU subsystem has its own dual
zone CSM for code protection.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Multi-Bit Enable Keys for Control Registers
• Majority Voting and Error Detection of Link Pointer
• Software Read Back of Written Configuration
• Periodic Software Read Back of Static Configuration Registers
• Software Test of Function Including Error Tests
• CPU Handling of Illegal Operation, Illegal Results and Instruction Trapping
• CLA Handling of Illegal Operation and Illegal Results
• VCU CRC Check of Static Memory Contents
• External Watchdog
• Power-Up Pre-Operational Security Checks

38

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Safety Elements

www.ti.com

5.4.6

CrossBar (X-BAR)
The crossbars (X-BAR) provide flexibility to connect device inputs, outputs, and internal resources in a
variety of configurations. The device contains a total of three X-BARs: Input X-BAR, Output X-BAR, and
ePWM X-BAR. The Input X-BAR has access to every GPIO and can route each signal to any (or multiple)
of the IP blocks (for example, ADC, eCAP, ePWM, and so forth). This flexibility relieves some of the
constraints on peripheral muxing by just requiring any GPIO pin to be available. The ePWM X-BAR is
connected to the Digital Compare (DC) submodule of each ePWM module for actions such as trip zones.
The GPIO Output X-BAR takes signals from inside the device and brings them out to a GPIO.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Software Test of Function Including Error Tests
• Hardware Redundancy
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• Software Check of X-BAR Flag

5.4.7

Timer
Each CPU subsystem is provided with three 32-bit CPU-Timers (TIMER0/1/2). The module provides the
Operating System (OS) timer for the device. The OS timer function is used to generate internal event
triggers or interrupts as needed to provide periodic operation of safety critical functions. The capabilities of
the module enable it to be used for clock monitoring as well.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• 1oo2 Software Voting Using Secondary Free Running Counter
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• Software Test of Function Including Error Tests

5.5
5.5.1

Digital I/O
General-Purpose Input/Output (GPIO) and Pinmuxing
The General Purpose Input/Output (GPIO) module provides software configurable mapping of internal
module I/O functionality to device pins. These pins can be individually selected to operate as digital I/O
(also called GPIO mode), or connected to one of several peripheral I/O signals.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Lock Mechanism for Control Registers
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• Software Test of Function Using I/O Loopback
• Hardware Redundancy

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

39

Brief Description of Safety Elements

5.5.2

www.ti.com

Enhanced Pulse Width Modulators (ePWM)
The enhanced Pulse Width Modulator (ePWM) peripheral is a key element in digital motor control and
power electronic systems. Some of the ePWM module instances support a High-Resolution Pulse Width
Modulator (HRPWM) mode to improve the time resolution. For more information on the ePWM instances
supporting the HRPWM mode, see the device-specific data sheet and reference manual.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Software Test of Function Including Error Tests
• Hardware Redundancy
• Monitoring of ePWM by eCAP
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• ePWM Fault Detection using XBAR
• ePWM Synchronization Check
• ePWM Safe State Assertion Using Trip Mechanism
• ePWM Application Level Safety Mechanism
• Online Monitoring of Interrupts and Events
• Monitoring of ePWM by ADC

5.5.3

High Resolution PWM (HRPWM)
HRPWM module extends the time resolution capabilities of the conventionally derived digital pulse width
modulator (PWM). HRPWM is typically used when PWM resolution falls below ~ 9-10 bits. The HRPWM is
based on micro edge positioner (MEP) technology. MEP logic is capable of positioning an edge very finely
by sub-dividing one coarse system clock of a conventional PWM generator. The time step accuracy is of
the order of 150 ps.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• HRPWM Built-In Self-Check and Diagnostic Capabilities
• Hardware Redundancy
• Monitoring of ePWM by eCAP
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration

5.5.4

Enhanced Capture (eCAP)
The enhanced CAPture (eCAP) module provides input capture functionality for systems where accurate
timing of external events is important. The eCAP module features include speed measurements of rotating
machinery (for example, toothed sprockets sensed via Hall sensors), elapsed time measurements
between position sensor pulses, period and duty cycle measurements of pulse train signals and decoding
current or voltage amplitude derived from duty cycle encoded current/voltage sensors.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Software Test of Function Including Error Tests
• Information Redundancy Techniques
• Monitoring of ePWM by eCAP
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• ECAP Application Level Safety Mechanism
• Hardware Redundancy

40

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Safety Elements

www.ti.com

NOTE: Use of a sensorless positioning algorithm can provide information redundancy through
plausibility checking of eCAP results.

5.5.5

Enhanced Quadrature Encoder Pulse (eQEP)
The enhanced Quadrature Encoder Pulse (eQEP) module is used for direct interface with a linear or rotary
incremental encoder to get position, direction, and speed information from a rotating machine for use in a
high-performance motion and position-control system. The following tests can be applied as diagnostics
for this module (to provide diagnostic coverage on a specific function):
• Software Test of Function Including Error Tests
• eQEP Quadrature Watchdog
• Information Redundancy Techniques
• Software Read Back of Written Configuration
• Periodic Software Read Back of Static Configuration Registers
• eQEP Application Level Safety Mechanisms
• Hardware Redundancy
The following tests can be applied as a test-for-diagnostic on this module:
• eQEP Software Test of Quadrature Watchdog Functionality
NOTE: Use of a sensorless positioning algorithm can provide information redundancy through
plausibility checking of eQEP results.

5.5.6

Sigma Delta Filter Module (SDFM)
Sigma Delta Filter Module (SDFM) is a four-channel digital filter designed specifically for current
measurement and resolver position decoding in motor control applications. Each channel can receive an
independent delta-sigma (ΔΣ) modulator bit stream. The bit streams are processed by four individuallyprogrammable digital decimation filters. The filter set includes a fast comparator for immediate digital
threshold comparisons for over-current and under-current monitoring.
• SDFM Comparator Filter for Online Monitoring
• Information Redundancy Techniques
• SD Modulator Clock Fail Detection Mechanism
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• Software Test of Function Including Error Tests
• Hardware Redundancy

5.5.7

External Interrupt (XINT)
Interrupts from external sources can be provided to the device using GPIO pins with help of XINT module.
The module allows configuring the GPIOs to be selected as interrupt sources. The polarity of the interrupts
can also be configured with this module.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Software Test of Function Including Error Tests
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• Hardware Redundancy

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

41

Brief Description of Safety Elements

5.6
5.6.1

www.ti.com

Analogue I/O
Analog-to-Digital Converter (ADC)
The Analog-to-Digital Converter (ADC) module is used to convert analog inputs into digital values. Results
are stored in internal registers for later transfer by CLA, DMA or CPU. The C2000 MCU device family
products implement up to four modules with shared channels used for fast conversion (ping-pong
method).
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Software Test of Function Including Error Tests
• DAC to ADC Loopback Check
• ADC Information Redundancy Techniques
• Opens/Shorts Detection Circuit for ADC
• Software Read Back of Written Configuration
• Periodic Software Read Back of Static Configuration Registers
• ADC Signal Quality Check by Varying Acquisition Window
• ADC Input Signal Integrity Check
• Monitoring of ePWM by ADC
• Hardware Redundancy
• Disabling Unused Sources of SOC Inputs to ADC
NOTE:
•
•

5.6.2

ADC module voltages should be supervised as noted in the device-specific data sheet.
To reduce probability of common mode failure, user should consider implementing
multiple channels (information redundancy) using non adjacent pins and different voltage
reference.

Buffered Digital to Analog Converter (DAC)
The buffered DAC module consists of an internal reference DAC and an analog output buffer that is
capable of driving an external load. An integrated pull-down resistor on the DAC output helps to provide a
known pin voltage when the output buffer is disabled. Software writes to the DAC value register can take
effect immediately or can be synchronized with PWMSYNC events.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Software Test of Function Including Error Tests
• DAC to ADC Loopback Check
• Lock Mechanism for Control Registers
• Software Read Back of Written Configuration
• Periodic Software Read Back of Static Configuration Registers
• DAC to Comparator Loopback Check
• Hardware Redundancy

42

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Safety Elements

www.ti.com

5.6.3

Comparator Subsystem (CMPSS)
The Comparator Subsystem (CMPSS) consists of analog comparators and supporting components that
are combined into a topology that is useful for power applications such as peak current mode control,
switched-mode power, power factor correction, and voltage trip monitoring. The comparator subsystem is
built around a pair of analog comparators and helps detection of signal exception conditions including
High/Low thresholds. The positive input of the comparator is always driven from an external pin, but the
negative input can be driven by either an external pin or by an internal programmable 12-bit DAC. Each
comparator output passes through a programmable digital filter that can remove spurious trip signals. A
ramp generator circuit is optionally available to control the internal DAC value for one comparator in the
subsystem.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Software Test of Function Including Error Tests
• Software Read Back of Written Configuration
• Periodic Software Read Back of Static Configuration Registers
• Lock Mechanism for Control Registers
• VDAC Conversion by ADC
• CMPSS Ramp Generator Functionality Check
• Hardware Redundancy

5.7
5.7.1

Data Transmission
Controller Area Network (DCAN)
The Controller Area Network (DCAN) interface provides medium throughput networking with event based
triggering, compliant to the CAN protocol. The DCAN modules requires an external transceiver to operate
on the CAN network. The following tests can be applied as diagnostics for this module (to provide
diagnostic coverage on a specific function):
• Software Test of Function Using I/O Loopback
• Information Redundancy Techniques Including End-to-End Safeing
• SRAM Parity
• Software Test of SRAM
• Bit Multiplexing in SRAM Memory Array
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• Transmission Redundancy
• DCAN Stuff Error Detection
• DCAN Form Error Detection
• DCAN Acknowledge Error Detection
• Bit Error Detection
• CRC in Message
• Hardware Redundancy
The following tests can be applied as a test-for-diagnostic on this module:
• Software Test of Parity Logic

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

43

Brief Description of Safety Elements

5.7.2

www.ti.com

Serial Peripheral Interface (SPI)
The Serial Peripheral Interface (SPI) modules provide serial I/O compliant to the SPI protocol. SPI
communications are typically used for communication to smart sensors and actuators, serial memories,
and external logic such as a watchdog device.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Software Test of Function Using I/O Loopback
• Information Redundancy Techniques Including End-to-End Safeing
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• Transmission Redundancy
• SPI Data Overrun Detection
• Hardware Redundancy

5.7.3

Serial Communication Interface (SCI)
The module provides serial I/O capability for typical asynchronous Serial Communication Interface (SCI)
protocols, such as UART. Depending on the serial protocol used, an external transceiver may be
necessary.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Software Test of Function Using I/O Loopback
• Parity in Message
• Information Redundancy Techniques Including End-to-End Safeing
• SCI Overrun Error Detection
• SCI Break Error Detection
• SCI Frame Error Detection
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• Transmission Redundancy
• Hardware Redundancy

5.7.4

Inter-Integrated Circuit (I2C)
The Inter-Integrated Circuit (I2C) module provides a multi-master serial bus compliant to the I2C protocol.
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Software Test of Function Using I/O Loopback
• Information Redundancy Techniques Including End-to-End Safeing
• I2C Data Acknowledge Check
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• Transmission Redundancy
• I2C Access Latency Profiling Using On-Chip Timer
• Hardware Redundancy

44

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Safety Elements

www.ti.com

5.7.5

Multi-Channel Buffered Serial Port (MCBSP)
This device provides up to two high-speed multichannel buffered serial ports (McBSPs) that allow direct
interface to codecs and other devices in a system. The McBSP consists of a data-flow path and a control
path connected to external devices by six pins. Data is communicated to devices interfaced with the
McBSP via the data transmit (DX) pin for transmission and via the data receive (DR) pin for reception.
Control information in the form of clocking and frame synchronization is communicated via the following
pins: transmit clock (CLKX ), receive clock (CLKR), transmit frame synchronization (FSX), and receive
frame synchronization (FSR).
The following tests can be applied as diagnostics for this module (to provide diagnostic coverage on a
specific function):
• Software Test of Function Using I/O Loopback
• Information Redundancy Techniques Including End-to-End Safeing
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• Transmission Redundancy
• McBSP Receiver Overrun Detection
• McBSP Transmitter Underflow Detection
• McBSP Receiver Sync Error Detection
• McBSP Transmitter Sync Error Detection
• Hardware Redundancy

5.7.6

External Memory Interface (EMIF)
The External Memory Interface (EMIF) is used to provide device access to off-chip memories or devices,
which support a memory interface. Support is provided for both synchronous (SDRAM) and asynchronous
(NOR Flash, SRAM) memories. The following tests can be applied as diagnostics for this module (to
provide diagnostic coverage on a specific function):
• Information Redundancy Techniques
• VCU CRC Check of Static Memory Contents
• Periodic Software Read Back of Static Configuration Registers
• Software Read Back of Written Configuration
• Transmission Redundancy
• EMIF Access Protection Mechanism
• Software Test of Function Including Error Tests
• EMIF Access Latency Profiling Using On-Chip Timer
• EMIF Asynchronous Memory Timeout Protection Mechanism
• Hardware Redundancy
NOTE: Safety critical data from external memories can be transferred or copied to internal memory
for higher integrity operations.

5.8

Not Safety Related Elements
The following elements are not recommended to be used in safety related applications implemented using
TMS320F2837xD/S and TMS320F2807x. If used in the end system, applicable measures listed in section
'Suggestions for Improving Freedom From Interference' should be implemented to avoid a cascading
failure from these elements adversely affecting implemented safety functions.
• Universal Serial Bus (USB)
• Controller Universal Parallel Port (uPP)

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

45

Brief Description of Diagnostics

6

www.ti.com

Brief Description of Diagnostics
This section provides a brief summary of the diagnostic mechanisms available on the TMS320F2837xD/S
and TMS320F2807x MCU device family. The diagnostic mechanisms are arranged as per the device
portioning given in Figure 20. At places where the safety mechanism is applicable for more than one
component, it is placed at an appropriate place based on the applicable use case scenario. For a detailed
description or implementation details for a diagnostic, see the device-specific technical reference manual.

6.1
6.1.1

C2000 MCU Infrastructure Components
Clock Integrity Check Using CPU Timer
It is recommended to use the CPU Timer module to detect incorrect clock frequencies and drift between
clock sources. CPU Timer2 has a programmable counter whose prescale value and clock source can be
selected. Using the system clock as reference time base and frequency relationship between selected
clock and system clock can be ascertained. For more information on the clock selection options
implemented, see the device-specific data sheet. Higher diagnostic coverage can be obtained by setting
tighter bounds when checking clock integrity using Timer2. Common cause failures can be reduced by
using different clock sources and different prescale values for the reference clock and measured clock.
The Timer diagnostic is not enabled by default and must be enabled via software. The cyclical check
applied by the Timer module provides an inherent level of self-checking (auto-coverage), which can be
considered for application in latent fault diagnostics.

6.1.2

Clock Integrity Check Using HRPWM
Calibration logic of OTTO (HRPWM) can be used to detect incorrect system clock (SYSCLK) frequencies.
The clock whose frequency needs to be measured is configured as the system clock and the autocalibration function is executed. The result obtained from the calibration function can be checked against
the predetermined range of value to detect incorrect clock frequency or frequency drift. Error response,
diagnostic testability, and any necessary software requirements are defined by the software implemented
by the system integrator.

6.1.3

EALLOW and MEALLOW Protection for Critical Registers
EALLOW (CPU, DMA) and MEALLOW (CLA) protection enables write access to emulation and other
protected registers. CPU (CLA) can set this bit using EALLOW (MEALLOW) instruction and cleared using
EDIS (MEDIS) instruction. The protection can be used to prevent data being written to the wrong place,
which would happen with conditions like boundary exceeding, incorrect pointers, stack overflow or
corruption, and so forth. Reads from the protected registers are always allowed. It is recommended to
disable the protection once write for the protected registers are complete.

6.1.4

Efuse Autoload Self-Test
Efuse provides a capability to ensure proper loading of the efuse values to all the registers. The capability
is enabled by default and configuration cannot be changed by software. Any error in this process will be
indicated via ERRORSTS. The device reset is asserted and autoload is re-attempted when the error
occurs.

6.1.5

Efuse ECC
The Efuse utilize a SECDED ECC diagnostic to detect (and correct in case of single bit errors) incorrect
configuration values fetched from the fuse ROM. Errors are indicated via ERRORSTS. This diagnostic is
ON by default and this configuration cannot be changed by software. It covers only data bits of the EFUSE
ROM. The device reset is asserted and autoload is re-attempted when the error occurs.

6.1.6

Efuse ECC Logic Self-Test
The Efuse controller has a self-test logic that executes automatically before the efuse operation. Error is
indicated via ERRORSTS and system control configuration register. The device will remain in reset state
as long as the error occurs.

46

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Diagnostics

www.ti.com

6.1.7

External Clock Monitoring via XCLKOUT
The TMS320F2837xD/S and TMS320F2807x MCU device family provides capability to export select
internal clocking signals for external monitoring. This feature can be configured via software by
programming registers in the system control module. To determine the number of external clock outputs
implemented and the register mapping of internal clocks that can be exported, see the device-specific
data sheet. Export of internal clocks on the XCLKOUT outputs is not enabled by default and must be
enabled via software. It is possible to disable and configure this diagnostic via software.

6.1.8

External Monitoring of Warm Reset (XRSn)
The XRSn warm reset signal is implemented as an open drain I/O pin. An external monitor can be utilized
to detect expected or unexpected changes to the state of the internal warm reset control signal and
ensuring proper signaling (for example, low duration) when it is asserted. Error response, diagnostic
testability, and any necessary software requirements are defined by the external monitor selected by the
system integrator.

6.1.9

External Voltage Supervisor
Texas Instruments highly recommends the use of an external voltage supervisor to monitor all voltage
rails. The voltage supervisor should be configured with overvoltage and under voltage thresholds matching
the voltage ranges supported by the target device (as noted in the device-specific data sheet). Error
response, diagnostic testability, and any necessary software requirements are defined by the external
voltage supervisor selected by the system integrator.

6.1.10

External Watchdog
External watchdog helps to reduce common mode failure, as it utilizes clock, reset, and power that are
separate from the system being monitored. Error response, diagnostic testability, and any necessary
software requirements are defined by the external watchdog selected by the system integrator.
Texas Instruments highly recommends the use of an external watchdog in addition to the internally
provided watchdogs. An internal or external watchdog can provide an indication of inadvertent activation of
logic which results in impact to safety critical execution. Any watchdog added externally should include a
combination of temporal and logical monitoring of program sequence [IEC61508-7, clause A.9.3] or other
appropriate methods such that high diagnostic effectiveness can be claimed.

6.1.11

Glitch Filtering on Reset Pins
Glitch filters are implemented on functional and JTAG reset of the device. These structures filter out noise
and transient signal spikes on the input reset pins in order to reduce unintended activation of the reset
circuitry. The glitch filters are enabled by default and operates continuously. Their behavior cannot be
changed by the software.

6.1.12

Hardware Disable of JTAG Port
The JTAG debug port can be physically disabled to prevent JTAG access in deployed systems. The
recommended scheme is to hold test clock (TCK) to ground and hold Test Mode Select (TMS) high.
Disabling of the JTAG port also provides coverage for inadvertent activation of many debug and trace
activities, since these are often initiated via an external debug tool that writes commands to the device
using the JTAG port.

6.1.13

Internal Watchdog (WD)
The internal watchdog has two modes of operation: normal watchdog (WD) and windowed watchdog
(WWD). The system integrator can select to use one mode or the other but not both at the same time. For
details of programming the internal watchdogs, see the device-specific technical reference manual. The
WD is a traditional single threshold watchdog. The user programs a timeout value to the watchdog and
must provide a predetermined WDKEY to the watchdog before the timeout counter expires. Expiration of
the timeout counter or an incorrect WDKEY triggers an error response. The WD can issue either a warm
system reset or a CPU maskable interrupt upon detection of a failure. The WD is enabled after reset.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

47

Brief Description of Diagnostics

www.ti.com

In case of WWD, user programs an upper bound and lower bound to create a time window during which
the software must provide a predetermined WDKEY to the watchdog. Failure to receive the correct
response within the time window or an incorrect WDKEY triggers an error response. The WWD can issue
either a warm system reset or a CPU maskable interrupt upon detection of a failure. Normal WD operation
is enabled by default after reset. Additional configuration need to be performed to enable the WWD
operation. For details of programming the internal watchdogs, see the device-specific technical reference
manual. The use of the time window allows detection of additional clocking failure modes as compared to
the WD implementation.
6.1.14

Lock Mechanism for Control Registers
The module contains a lock mechanism for protection of critical control registers. Once the associated
LOCK register bits are set, the write accesses to the registers are blocked. Locked registers cannot be
updated by software. Once locked, only reset can unlock the registers.

6.1.15

Missing Clock Detect (MCD)
The missing clock detector (MCD) is a safety diagnostic that can be used to detect failure of PLL
reference clock. MCD utilizes the embedded 10 MHz internal oscillator (INTOSC1). This circuit only
detects complete loss of PLL reference clock and does not do any detection of frequency drift. The MCD
circuit is enabled by default during the power-on reset state. The diagnostic can be disabled via software.

6.1.16

NMIWD Reset Functionality
On receiving an NMI, the software can attempt recovery from the NMI condition. Based on the severity
and type of the fault condition, recovery may not always be successful. In such a situation, an additional
protection is provided by having an independent watchdog monitoring the NMI recovery. If the attempted
recovery is not successful, a reset is issued. The timeout for reset can be configured (using NMIWDPRD)
based on the FTTI of the device.

6.1.17

NMIWD Shadow Registers
The use of a two stage cold and warm reset scheme on the device allows the implementation of NMIWD
shadow registers. Shadow registers are reset only by power-on/cold reset. These registers are used to
store the NMIFLG information before reset assertion. This information can be used by the application
software to provide additional information on the NMI status of the device before the last warm reset
operation.

6.1.18

Multi-Bit Enable Keys for Control Registers
This module includes features to support avoidance of unintentional control register programmation.
Implementation of multi-bit keys for critical control registers is one such feature (for example,
EPWM_REGS.EPWMLOCK and so forth). The multi-bit keys are particularly effective for avoiding
unintentional activation. For more details on the registers for which the diagnostic is applicable, see the
device-specific technical reference manual. The operation of this safety mechanism is continuous and
cannot be altered by the software. This mechanism can be tested by generating software transactions with
and without correct keys and observing the updated register value.

6.1.19

Online Monitoring of Temperature
The internal temperature sensor measures the junction temperature of the device. The output of the
sensor can be sampled with the ADC through an internal connection. This can be enabled on channel
ADCIN13 on ADCA by setting the ENABLE bit in the TSNSCTL register.
Micro Edge Positioning (MEP) block of HRPWM Built-In Self-Check and Diagnostic Capabilities can also
be used to detect variations in temperature and voltage.

48

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Diagnostics

www.ti.com

6.1.20

Periodic Software Read Back of Static Configuration Registers
Configuration registers are typically configured in the beginning and hold the value till the particular task
execution. Periodic read back of configuration registers can provide a diagnostic for inadvertent writes or
disturb of these registers.
The diagnostic coverage can be improved by extending the test to include read back of the flag registers
that are expected to remain constant (for example, PLL lock status, EQEP phase error flag, and so forth)
during the device operation as well. Error response, diagnostic testability, and any necessary software
requirements are defined by the software implemented by the system integrator.
The diagnostic coverage of some peripherals can be further enhanced by applying some module specific
tests as follows:
• For improving the enhanced peripheral interrupt expander (EPIE) coverage, the PIE flag registers can
be periodically checked to ensure that all pending interrupts are serviced by reading the PIE flag
registers (PIE_CTRL_REGS.PIEIFRx.all) and the peripheral interrupt flag registers.
• While serving the interrupt, the ISR routine can check for flag setting in peripheral as well as PIE to
ensure that correct interrupt is being serviced.
Since CLA configuration registers are accessible to C28x CPU only, this safety mechanism for CLA
module has to be executed by C28x CPU.

6.1.21

Peripheral Clock Gating (PCLKCR)
Peripherals can be clock gated on a per peripheral basis. This can be utilized to disable unused features
such that they cannot interfere with active safety functions. This safety mechanism is enabled after reset.
Software must configure and disable this mechanism to use a particular peripheral. It is possible to lock
the particular configuration to avoid inadvertent writes.

6.1.22

Peripheral Soft Reset (SOFTPRES)
Peripherals can be kept in reset on a per peripheral basis. This can be utilized to reset the unused
features such that they cannot interfere with active safety functions. These safety mechanisms are
disabled after reset. Software must configure and enable these mechanisms.

6.1.23

PLL Lock Profiling Using On-Chip Timer
Clock setup for the TMS320F2837xD/S and TMS320F2807x MCU device family includes selecting the
appropriate clock source, configuring the PLL multiplier, waiting for the lock status and switching the clock
to the PLL output once the internal lock status is set. The time required for the PLL lock sequence can be
profiled using on-chip timer to detect faults in the PLL wrapper logic. Once the PLL is locked, the
frequency of the output clock can be checked by using the following:
• Clock Integrity Check Using CPU Timer
• Clock Integrity Check Using HRPWM
• External Clock Monitoring via XCLKOUT to ensure proper clock output

6.1.24

Reset Cause Information
The system control module provides a status register (RESC) that latches the cause of the most recent
reset event. Application software executed during boot-up can check the status of this register to
determine the cause of the last reset event. This information can be used by the software to identify the
cause and manage failure recovery if required.

6.1.25

Software Read Back of Written Configuration
In order to ensure proper configuration of memory-mapped registers in this module, it is recommended for
software implement a test to confirm proper configuration of all control register by reading back the
contents. This test also provides diagnostic coverage for the peripheral bus interface and peripheral
interconnect bridges.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

49

Brief Description of Diagnostics

www.ti.com

Since CLA configuration registers are accessible to C28x CPU only, this safety mechanism for CLA
module has to be executed by C28x CPU.
6.1.26

Software Test of ERRORSTS Functionality
As indicated in Figure 16, ERRORSTS pin is an integral part of MCU safety concept used for indicating to
an external system about a critical error occurring within in the MCU. Proper functioning of ERRORSTS
pin and error handling of the system external to MCU can be checked by asserting ERRORSTS pin by
generating an error condition using one of the software provided ways (for example, asserting
CLOCLKFAIL NMIFLG by updating the NMIFLGFRC.bit.CLOCKFAIL). Error response, diagnostic
testability, and any necessary system requirements are defined by the system integrator.

6.1.27

Software Test of Missing Clock Detect Functionality
Proper operation of Missing Clock Detect (MCD) functionality can be checked by configuring
MCDCR.OSCOFF. The diagnostic test can check for issue of missing clock NMI and setting of missing
clock status flag (MCDCR.MCLKSTS).

6.1.28

Software Test of Reset
A software test for detecting basic functionality as well as errors for reset sources and reset logic can be
implemented. Each of the reset sources (including peripheral resets, DEV_CFG_REGS.SOFTPRESx)
except PORn can be generated internally and the basic reset functionality can be checked by ensuring the
correct setting of reset cause register and making sure only the intended logic is reset.
In order to confirm if individual peripherals have received the reset correctly, software can run a peripheral
specific test of functionality and confirm the expected state of the peripheral after reset. Depending on the
complexity of peripheral this software test of functionality can include testing of complex features of the
peripheral including error tests necessary to confirm correct propagation of reset. For peripheral specific
Software Test of Function including Error tests, see the device-specific safety mechanism listed for the
peripheral.

6.1.29

Software Test of Watchdog(WD) Operation
A basic test of the internal watchdog operation can be performed via software including checking of error
response by configuring the expected lower and higher threshold value for servicing WDKEY followed by
servicing or not servicing the WDKEY during the programmed threshold values. If reset is detrimental to
the system operation, the test can be performed by configuring the internal watchdog in Interrupt mode
(SCSR.WDENINT) and reverting back to reset mode after completion of the test.

6.2
6.2.1

Processing Elements
CLA Handling of Illegal Operation and Illegal Results
The CLA co-processor has built in mechanisms to detect execution of an illegal instruction (illegal
opcode), floating point underflow or overflow conditions. CLA will interrupt CPU under such conditions.
Any access to an invalid memory range will return 0x00000000 data. Access to an erased flash (default
state for a new device) will return 0xFFFFFFFF. Both 0x00000000 and 0xFFFFFFFF are decoded as
invalid instructions so that an erased flash, cleared memory, or an invalid address will generate an
interrupt to CPU. CPU can decode the interrupt cause by checking the required CLA flags. Error
response, diagnostic testability, and any necessary software requirements are defined by the software
implemented by the system integrator.

6.2.2

CLA Liveness Check Using CPU
CLA doesn’t have an independent watchdog of its own. Hence, it is recommended to perform liveness
check periodically by the CPU. Typically, sequential set of events is used to trigger the watchdog (for
example, completion of CPU Task1, CLA1 Task1, CPU1 Task2, and CLA1 Task2). The output of the CLA
liveness check can be used as one of the tasks to decide the watchdog triggering as indicated in
Figure 21. The liveness check can be based on application-specific parameters as illustrated in the VDA
Egas concept [6] to improve the diagnostic coverage.

50

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Diagnostics

www.ti.com

CLA1 Task1

CPU1 Task1

CLA1 Task1

CLA1 Task1

CPU1 Task2

CPU1 Task1

CLA1 Task1

CPU1 Task2

CPU Watchdog Function

Watchdog

Figure 21. CLA Liveness Check

6.2.3

CPU Hardware Built-In Self-Test (HWBIST)
The C2000 MCU device family has hardware logic to provide a very high diagnostic coverage on the
CPUs at a transistor level during start-up and application time. This logic utilizes Design for Test (DfT)
structures inserted into the device for rapid execution of high quality manufacturing tests, but with an
internal test engine rather than external automated test equipment (ATE). This technique has proven to be
effective in providing high coverage in less time.
The HWBIST tests must be triggered by the software. User may select to run all tests, or only a subset of
the tests based on the execution time allocated to the HWBIST diagnostic. This time sliced test feature
enables the HWBIST to be used effectively as a runtime diagnostic with execution of test in parallel with
the application. Execution of HWBIST results in a much higher level of transistor switching per clock cycle
than during normal software execution due to the high efficiency of the test. The special requirements for
HWBIST need to be understood and taken care by the system integrator. HWBIST execution failure will
trigger NMI to the same CPU and other CPUs (if available based on the device configuration). After
HWBIST execution, reset is issued to the CPU and the CPU context is restored.

6.2.4

CPU Hardware Built-In Self-Test (HWBIST) Auto-Coverage
The HWBIST diagnostic is based on a 512-bit signature capture. For a given test, only one code is valid
out of 2512 possibilities. Therefore, if there is a fault in the HWBIST logic, it is extremely unlikely that the
correct passing code will be generated via the fault. The cyclical check applied by the HWBIST module
provides an inherent level of self-checking (auto-coverage), which can be considered for application in
latent fault diagnostics.

6.2.5

CPU Hardware Built-In Self-Test (HWBIST) Fault Injection Capability
HWBIST diagnostic has capability helps to inject faults and check the correct functioning of the CPU
Hardware Built-In Self-Test (HWBIST) Auto-Coverage and CPU Hardware Built-In Self-Test (HWBIST)
Timeout feature. This can be used to provide latent fault coverage of the diagnostic logic.

6.2.6

CPU Hardware Built-In Self-Test (HWBIST) Timeout Feature
HWBIST module expects the self-test to be completed within a certain time frame. If the test is not
completed within this time frame, the test is stopped immediately, CPU is reset and NMI (and hence
ERRORSTS) is issued to recover from the indeterminate state. This feature is enabled by default once the
HWBIST module enters into self-test mode and cannot be disabled by software. After coming out from
reset, CPU can read the HWBIST status registers to understand the reset cause and take the required
action.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

51

Brief Description of Diagnostics

6.2.7

www.ti.com

CPU Handling of Illegal Operation, Illegal Results and Instruction Trapping
The C28x CPU includes diagnostics for illegal operations, illegal results (underflow and overflow
conditions) and instructions trapping (illegal opcode) that can serve as safety mechanisms. Any access to
an invalid memory range will return 0x00000000 data. Access to an erased flash (default state for a new
device) will return 0xFFFFFFFF. Both 0x00000000 and 0xFFFFFFFF are decoded as invalid instructions
so that an erased flash or cleared memory, or an invalid address will force the CPU to ITRAP. Installation
of software handlers to support the hardware illegal operation and instruction trapping is highly
recommended
Examples of CPU illegal operation, illegal results and instruction traps include:
• Illegal instruction
• TMS320C28x FPU Primer (SPRAAN9)

6.2.8

Reciprocal Comparison by Software
Each CPU subsystem has a pair of diverse processing units (C28 and CLA) with different architecture and
instruction set. This enables one processing unit to be used for handling the time critical portion code
(control CPU) and other processing unit (supervisor CPU) to execute non critical portion of the code,
perform diagnostic functions and supervise execution of the control CPU as indicated in Figure 13.
In case of identification of fault during diagnostic functions of the supervisor CPU, it can cause the
TMS320F2837xD/S and TMS320F2807x MCU to move to a safe state. This concept, “reciprocal
comparison by software in separate processing units” acts as a 1oo1D structure providing high diagnostic
coverage for the processing units as per ISO26262-5, Table D.4. The comparison need to be performed
several times during a FTTI. Reciprocal comparison is a software diagnostic feature and hence care
should be taken to avoid common mode failures. The final attained coverage will depend on quality of
comparison (determined by extend and frequency of cross checking). The proposed cross checking
mechanism allows for hardware and software diversity since different processors with different instruction
set and compiler is used for enabling this. The diversity can be further increased by having separate
algorithms being executed in both the cores. In case, failure is identified during reciprocal comparison,
NMI can be triggered by software and this in turn will assert ERRORSTS.

6.2.9

Software Test of CLA
It is possible to test the integrity of various CLA blocks (register bank, control unit, datapath, and so forth)
using software-based self-test library (STL). Based on the safety requirement, this test can be performed
at start-up or during application time. For details on implementing the particular test, see the safety
package delivered with the specific C2000 MCU device. Error response, diagnostic testability, and any
necessary software requirements are defined by the software implemented by the system integrator.

6.2.10

Software Test of CPU
It is possible to test the integrity of various CPU logic (FPU, VCU, TMU, and so forth) using CPU itself.
Based on the safety requirement, this test can be performed at start-up or during application time. For
details on implementing the particular test, check the safety package delivered with the specific
TMS320F2837xD/S and TMS320F2807x MCU device. Error response, diagnostic testability, and any
necessary software requirements are defined by the software implemented by the system integrator.

6.2.11

Stack Overflow Detection
A stack overflow in a safety application generally produces a catastrophic software crash due to data
corruption, lost return addresses, or both. Hence it is important to detect an impending stack overflow.
Capability exist on the C20TMS320F2837xD/S and TMS320F2807x00 MCU device family that, when
properly configured, allow for runtime detection of a stack overflow before it occurs. For more information,
see Online Stack Overflow Detection on the TMS320C28x DSP. Detection of an impending stack overflow
triggers a maskable interrupt. Programmed error response and any necessary software requirements are
defined by the system integrator.

52

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Diagnostics

www.ti.com

6.2.12

VCU CRC Check of Static Memory Contents
The TMS320F2837xD/S and TMS320F2807x MCU device family includes co-processor implementing
cyclic redundancy check (CRC) using standard polynomial. The CRC module can be used to test the
integrity of SRAM/Flash/OTP/external memory contents by calculating a CRC for all memory contents and
comparing this value to a previously generated "golden" CRC. The comparison of results, indication of
fault, and fault response are the responsibility of the software managing the test. The cyclical check
applied by the CRC logic provides an inherent level of self-checking (auto-coverage), which can be
considered for application in latent fault diagnostics.

6.2.13

VCU CRC Auto Coverage
The VCU CRC diagnostic is based on a 32-bit polynomial. For a given test, only one code is valid out of
232 possibilities. Therefore, if there is a fault in the VCU CRC logic or associated datapath, it is extremely
unlikely that the correct passing code will be generated via the fault.

6.2.14

Disabling of Unused CLA Task Trigger Sources
The CLA can receive input task triggers from various peripherals and software. To avoid interference from
unused trigger sources resulting in disturbance to CLA operation it is recommended to disable these in
application.

6.3
6.3.1

Memory (Flash, SRAM and ROM)
Bit Multiplexing in Flash Memory Array
The Flash modules implemented in the TMS320F2837xD/S and TMS320F2807x MCU device family have
a bit multiplexing scheme implemented such that the bits accessed to generate a logical (CPU) word are
not physically adjacent. This scheme helps to reduce the probability of physical multi-bit faults resulting in
logical multi-bit faults; rather they manifest as multiple single bit faults. As the SECDED Flash ECC can
correct a single bit fault and detect double bit fault in a logical word, this scheme improves the usefulness
of the Flash ECC diagnostic. Bit multiplexing is a feature of the flash memory and cannot be modified by
the software.

6.3.2

Bit Multiplexing in SRAM Memory Array
The SRAM modules implemented in the TMS320F2837xD/S and TMS320F2807x MCU device family have
a bit multiplexing scheme implemented such that the bits accessed to generate a logical (CPU) word are
not physically adjacent. This scheme helps to reduce the probability of physical multi-bit faults resulting in
logical multi-bit faults rather they manifest as multiple single bit faults. The SECDED SRAM ECC
diagnostic can correct a single bit fault and detect double bit fault in a logical word. Similarly, the SRAM
parity diagnostic can detect single bit faults. This scheme improves the usefulness of the SRAM ECC and
parity diagnostic. Bit multiplexing is a feature of the SRAM and cannot be modified by the software.

6.3.3

Data Scrubbing to Detect/Correct Memory Errors
For memories with ECC/Parity, data scrubbing can be used to provide latent fault diagnostic coverage.
Bus masters (CPU, CLA or DMA) can be configured to provide dummy reads to the memory (provided a
particular bus master has access to the memory) and the read data can be checked by the built-in
ECC/Parity logic. In the case of SRAMs with ECC protection, single bit errors are corrected and written
back. For both SRAMs and Flash, interrupt is issued once the count exceeds the preset threshold in the
case of correctable errors and NMI will be issued in the case of uncorrectable errors.
Since the contents of Flash memory are static, VCU CRC Check of Static Memory Contents provides
better diagnostic coverage compared to this diagnostic.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

53

Brief Description of Diagnostics

6.3.4

www.ti.com

Flash ECC
The on-chip Flash memory is supported by single error correction, double error detection (SECDED) error
correcting code (ECC) diagnostic. In this SECDED scheme, an 8-bit code word is used to store the ECC
of 64 bit data and corresponding address. The ECC decoding logic at the flash bank output checks the
correctness of memory content. ECC evaluation is done on every data/program read. The data/program
interconnects that connect the CPU and Flash memory is not protected by ECC. Detected correctable
errors can be corrected or not corrected, depending on whether correction functionality is enabled. Single
bit address ECC errors are flagged as uncorrectable errors. Errors that cannot be corrected will generate
an NMI and ERRORSTS pin is asserted. Count of the corrected errors (single bit data errors) is monitored
by the flash wrapper and an interrupt is generated once the count exceeds the programmed threshold.
The corrupted memory address of the last error location is also logged in flash wrapper.

6.3.5

Flash Program Verify and Erase Verify Check
Whenever any program and erase operation is done, the flash controller will perform program and erase
verify check. If the program and erase operation is failed, FSM status register (FMSTAT) will indicate the
error by setting the corresponding flags into the status register.

6.3.6

Software Test of ECC Logic
It is possible to test the functionality of the SRAM ECC by injecting single bit and double bit errors in test
mode and performing reads on locations with ECC errors, and checking for the error response. Flash ECC
logic can be checked with the help of ECC test registers (FECC_CTRL, FADDR_TEST, FECC_TEST,
FDATAH_TEST, FDATAL_TEST). Correct functioning of error counter and threshold interrupt associated
with single bit errors can also be verified using this technique. Error response, diagnostic testability, and
any necessary software requirements are defined by the software implemented by the system integrator.
For additional details on implementing this diagnostic for SRAM and FLASH memory, see the Application
Test Hooks for Error Detection and Correction and SECDED Logic Correctness Check sections in the
TMS320F2837xD Dual-Core Delfino Microcontrollers Technical Reference Manual.

6.3.7

Software Test of Flash Prefetch, Data Cache and Wait-States
Once enabled, Prefetch logic keeps fetching the next 128-bit row (4 x 32-bit words) from flash bank. On
detecting the discontinuity, the Prefetch buffer will be cleared. A software test can be performed to
ascertain the proper behavior of this logic. The following sequence of operation can be performed.
1. Disable the Prefetch mechanism, enable the timer and Watchdog. Execute a particular function which
might have linear code and code with multiple discontinuities. Store the time “time_1” (timer value)
taken for executing this function.
2. Enable the Prefetch mechanism and execute the same function again. Store the time “time_2” (timer
value) taken for executing this function. This value should be less than the time_1 (time_1 > time_2).
We can mark this timer value as a GOLDEN value and should expect the same timer values for each
run of the same function.
3. Since each flash bank row has 4 x32 bit words, number of rows fetched from the flash bank varies as
per the code alignment within the flash bank. Hence user needs to make sure that the Prefetch logic
test function should be aligned/located in particular location within flash to guarantee the same timing
behavior and does not vary compile to compile.
Similar timer-based profiling can be performed to ascertain proper functioning of the data cache and wait
states.

54

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Diagnostics

www.ti.com

6.3.8

Access Protection Mechanism for Memories
All volatile memory blocks (including external memories) except for M0/M1 on both subsystems have
different levels of protection. This capability allows the user to enable or disable specific access (for
example, Fetch, Write) to individual RAM blocks from individual masters (CPU1, CPU2, CPU1.CLA1,
CPU2.CLA1, CPU1.DMA1, CPU2.DMA1). There is no protection for read accesses, therefore, reads are
always allowed from all the masters which have access to that RAM block. To identify conditions when the
master access to an SRAM is blocked, see the device-specific technical reference manual. This
configuration can be changed during run-time and allows memory to block access from specific masters or
specific application threads within the same master. This capability helps support freedom from
interference requirements required by some applications.

6.3.9

SRAM ECC
Selected on-chip SRAMs support SECDED ECC diagnostic with separate ECC bits for data and address.
For the specific address ranges that support ECC, see the TMS320F2837xD/S and TMS320F2807x MCU
device-specific data sheet. In SECDED scheme, a 21-bit code word is used to store the ECC data
calculated independently for each 16 bit of data and for address. The ECC logic for the SRAM access is
located in the SRAM wrapper. The ECC is evaluated directly at the memory output and data is sent to
CPU after the data integrity check. The data and address interconnects from SRAM to the CPU is not
protected using ECC. Detected correctable errors are corrected and it is possible to monitor the number of
corrected errors. The SRAM wrapper can be configured to trigger an interrupt once the number of
corrected errors crosses a threshold. Uncorrectable SRAM errors trigger an NMI and the ERRORSTS pin
is asserted. The ECC logic for the SRAM is enabled at reset. For more information regarding memories
supporting ECC, see the TMS320F2837xD/S and TMS320F2807x MCU device-specific data sheet.

6.3.10

SRAM Parity
Selected on-chip SRAMs support parity diagnostic with separate parity bits for data and address. For the
specific address ranges that support parity, see the device-specific data sheet. In the parity scheme, a 3bit code word is used to store the parity data calculated independently for each 16 bit of data and for
address. The parity generation and check logic for the SRAM is located in the SRAM wrapper. The parity
is checked directly at the memory output and data is sent to CPU after the data integrity check. The data
and address interconnect from SRAM to the CPU is not protected using parity. SRAM parity errors trigger
an NMI and the ERRORSTS is asserted. The parity logic for the SRAM is enabled at reset. For more
information regarding memories supporting parity, see the TMS320F2837xD/S and TMS320F2807x MCU
device-specific data sheet.

6.3.11

Software Test of Parity Logic
It is possible to test the functionality of parity error detection logic by forcing a parity error into the data or
parity memory bits, and observing whether the parity error detection logic reports an error. Parity can also
be calculated manually and compared to the hardware calculated value stored in the parity memory bits.

6.3.12

Software Test of SRAM
It is possible to test the integrity of SRAM (bit cells, address decoder and sense amplifier logic) using the
CPU. Based on the safety requirement, this test can be performed at start-up or during application time. If
the SRAM contents are static, a CRC check using VCU can also be performed in place of destructive test
(test where memory contents need to be restored after the test). For details on implementing this
particular test, check the safety package delivered with this specific C2000 MCU device.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

55

Brief Description of Diagnostics

6.4
6.4.1

www.ti.com

On-Chip Communication Including Bus-Arbitration
1oo2 Software Voting Using Secondary Free Running Counter
The TIMER module contains three counters that can be used to provide an operating system time base.
While one counter is used as the operating system time base, it is possible to use one of the other
counters as a diagnostic on the first, using periodic check via software of the counter values in the two
timers. The second counter can be fed with a different clock source and a different prescale configuration
can be selected to avoid common mode errors. Error response, diagnostic testability, and any necessary
software requirements are defined by the software implemented by the system integrator.

6.4.2

DMA Overflow Interrupt
DMA supports latching one additional trigger event. Before DMA services this latched event if additional
event occurs DMA overflow interrupt is generated, such that, the CONTROL_REG.PERINTFLG is set and
another interrupt event occurs. The CONTROL_REG.PERINTFLG being set indicates a previous
peripheral event is latched and has not been serviced by the DMA

6.4.3

Event Timestamping Using IPC Counter
IPC has a 64-bit free-running IPCCOUNTERH/L that can be used for time stamping events between the
processors. The time stamp can be sent along with the payload and this information can be used by the
software running on the receiver CPU to determine the time required for completing the command. If the
message is not received within the expected time limit, the receiver CPU can initiate an error response.
The round trip delay can be estimated by the transmitter CPU based on the message acknowledge send
by receiver CPU.

6.4.4

Maintaining Interrupt Handler for Unused Interrupts
The C2000 MCU devices contain a large number of interrupts; a typical application only uses a very small
subset of all the available interrupts. Multiple configurations are possible for the unused interrupts. This
includes disabling of the unused interrupts, enabling the unused interrupts and return to the application in
the interrupt service routine (ISR), and so forth. Receiving of an interrupt not used in the application might
be an early indication of some faulty scenarios within the C2000 MCU. Hence, it is highly recommended to
enable all the interrupts and configure the ISR to a common routine for logging or error handling.

6.4.5

Majority Voting and Error Detection of Link Pointer
The link pointer OTP location is not protected by ECC. To provide better security to the customer code
and enable application safety, majority voting and data consistency based error detection is implemented.
The location of the zone select region in OTP is decided based on the value of three 29-bit link pointers
(Zx-LINKPOINTERx) programmed in the OTP of each zone of each CPU subsystems. The final value of
the link pointer is resolved in hardware when a dummy read is issued to all the link pointers by comparing
all the three values (bit-wise voting logic). Any error in the resolution of the final link pointer value will set
the Zx_LINKPOINTERERR register.

6.4.6

PIE Double SRAM Comparison Check
In order to check the PIE double SRAM comparison feature and the fault handling, it is possible to inject
different data to both the SRAMs. On accessing the particular location, in which there is data mismatch,
the CPU will jump to error management routine. For details for implementation of this check, see the
device-specific documentation.

6.4.7

PIE Double SRAM Hardware Comparison
PIE SRAM address space is duplicated and data is placed in two memories. During write operations both
the SRAMs are simultaneously updated and on reading the values from both the memories are compared.
In case of error during comparison, the CPU will branch to a pre-defined location based on the user
configuration. The location will have the routine for error management.

56

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Diagnostics

www.ti.com

6.4.8

Power-Up Pre-Operational Security Checks
During the device boot, it goes through various phases as indicated in Figure 17. In the pre-operational
phase (before starting the application), the application code is expected to perform a set of checks to
ensure correct initialization of device security which includes checks to confirm correct link-pointer
settings, CRC lock setting, correct partitioning of secure RAM blocks and Flash sectors (Grab Bits), setting
for execute only protection for secure RAM blocks and Flash sectors, correct partitioning of the CLA and
Flash Bank2 and correct settings for boot configuration. Before starting the execution of downloaded code
user should check the integrity of the code using CRC function. Once pre-operational checks are
successfully completed with expected results, the device can enter the application phase.

6.4.9

Software Check of X-BAR Flag
X-BAR flag registers are used to flag the inputs of the ePWM and output X-Bars to provide software
knowledge of the input sources which got triggered. This flag registers can be periodically read to
ascertain that no ePWM tripzones, ePWM syncing or GPIO output signaling is missed.

6.4.10

Software Test of ePIE Operation Including Error Tests
A software test for testing the basic functionality as well as failure modes such as continuous interrupts, no
interrupts, and crossover interrupts can be implemented. Such testing can be based on generating the
interrupts from the peripherals (using either software force capability, for example,
ECAP_REGS.ECFRC.CTROVF or creating the interrupt scenario functionally, for example, creating a
counter overflow condition in ECAP) and ensuring that the interrupt is serviced and serviced in proper
order. Error response, diagnostic testability, and any necessary software requirements are defined by the
software implemented by the system integrator.

6.4.11

Disabling of Unused DMA Trigger Sources
The unintended trigger of DMA transfers could corrupt critical data and that could be a potential source of
interference to safety critical applications. In order to avoid initiation of the unintended DMA transfers, it is
recommended that unused DMA channels and DMA trigger sources are disabled at source or by
configuring DMACHSRCSELx registers.

6.5
6.5.1

Digital I/O
ECAP Application Level Safety Mechanism
ECAP module outputs can be checked for saturation, zero width or out of range based on the application
requirement. While measuring the speed of rotating machinery, the application can set bounds on the
measured speed based on the operating profile. Similar bound settings are possible for other application
scenarios like period and duty cycle measurement, decoding current or voltage from the duty cycle of the
encoded current or voltage sensors, and so forth. Online monitoring of periodic interrupts can also be
performed for improved diagnostic coverage based on the application profile.

6.5.2

ePWM Application Level Safety Mechanism
ePWM is typically used in closed loop control applications where various control techniques (for example,
PID control) are employed. In such applications, it is possible to monitor various parameters of the control
algorithm (control parameters, interrupt frequency, and so forth) to ensure that the application is within the
safe operating range.

6.5.3

ePWM Fault Detection Using XBAR
A combination of ePWM outputs feedback to input X-BAR, GPIO inversion logic and Digital Compare (DC)
submodule of ePWM can be used for implementing simple (for example, signal cross over) but effective
anomaly checks on the PWM outputs. The feature can be used to trip the PWM and enter safe state if any
anomaly is detected.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

57

Brief Description of Diagnostics

www.ti.com

DC Event
DC
Event

EPWM1A
EPWM1A

TZ2
TZ2

TZ1
TZ1 &
& !TZ2
EPWM1A
EPWM1A&& !(!EPWM2B)
!(!EPWM2B)

TZ1
TZ1

TZ Event

EPWM1A
EPWM1A
GPIO
GPIO Logic
Logic
(Inverts
one
(Inverts onesignal)
signal)

InputX-BAR
X-BAR
Input
!EPWM2B
!EPWM2B

EPWM2B
EPWM2B

Figure 22. ePWM Fault Detection Using X-BAR

6.5.4

ePWM Safe State Assertion Using Trip Mechanism
ePWM safe state can be asserted based on the configuration (for example, pin-high, pin-low, pin-tristate)
using any of the GPIO pins which can be flexibly mapped to be the trip-zone input and/or trip inputs to the
trip-zone submodule and digital compare submodule. The digital compare (DC) submodule compares
signals external to the ePWM module (for instance, CMPSSx signals from the analog comparators) to
directly generate PWM events/actions which then feed to the event-trigger, trip-zone, and time-base
submodules. Additionally, blanking window functionality is supported to filter noise or unwanted pulses
from the DC event signals.

6.5.5

ePWM Synchronization Check
ePWM modules can be chained together via a clock synchronization scheme that allows them to operate
as a single system when required. In the synchronous mode of operation, it is critical to check the proper
synchronization of the various PWM instances to avoid catastrophic conditions. The synchronization of the
various PWMs can be checked by reading the reading TBSTS.SYNCI bit of ePWM module. The proper
phase relationship intended as a result of the sync operation can be crosschecked by comparing the
TBCTR register value.

6.5.6

eQEP Application Level Safety Mechanisms
eQEP is typically used in closed loop control applications to have direct interface with a linear or rotary
incremental encoder to get position, direction, and speed information from a rotating machine for use in
high-performance motion and position-control system. In such applications, it is possible to monitor eQEP
outputs for saturation, zero value or out of range based on the application requirement. While estimating
the speed/position of rotating machinery, the application can set bounds on the measured speed/position
based on the operating profile. Online monitoring of periodic interrupts from eQEP can also be performed
for improved diagnostic coverage based on the application profile.

6.5.7

eQEP Quadrature Watchdog
eQEP peripheral contains a 16-bit watchdog timer that monitors the quadrature-clock to indicate proper
operation of the motion-control system. The eQEP watchdog timer is clocked from SYSCLKOUT/64 and
the quadrate clock event (pulse) resets the watchdog timer. If no quadrature-clock event is detected until a
period match, then the watchdog timer will time out and the watchdog interrupt flag will be set. The
timeout value is programmable through the watchdog period register.

58

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Diagnostics

www.ti.com

6.5.8

eQEP Software Test of Quadrature Watchdog Functionality
A software test can be used to test for basic functionality of the quadrature watchdog as well as to inject
diagnostic errors and check for proper error response. Such a test can be executed at boot or periodically.
Software requirements necessary are defined by the software implemented by the system integrator.

6.5.9

Hardware Redundancy
Hardware redundancy techniques can be applied via hardware or as a combination of hardware and
software to provide runtime diagnostic. In this implementation, redundant hardware resources are utilized
to provide diagnostic coverage for elements within and outside (wiring harness, connectors, transceiver)
TMS320F2837xD/S and TMS320F2807x MCU.
In case of peripherals like GPIO, XBAR, PWM, OTTO, DAC, CMPSS, XINT and so forth, hardware
redundancy can be implemented by having multi-channel parallel outputs (where independent outputs are
used for transmitting information, and failure detection is carried out via internal or external comparators)
or input comparison/voting (comparison of independent inputs to ensure compliance with a defined
tolerance range (time, value)). In such scenarios, the system can be designed such that the failure of one
input/output does not cause the system to go into a dangerous state. While servicing the error conditions
(redundancy conditions) as in two redundant sources tripping the PWM, always read-back the status flags
and ensure that both sources are active while tripping and thus providing latent fault coverage for the trip
logic.
In case of peripherals like SDFM, ADC, ECAP, EQEP and so forth, hardware redundancy may be
implemented by having multiple instance of the peripheral sample the same input and simultaneously
perform the same operation followed by cross check of the output values.
In case of communication peripherals like DCAN, SPI, SCI, I2C, McBSP and so forth hardware
redundancy during signal reception can be implemented by having multiple instance of the peripheral
receive the same data followed by comparison to ensure data integrity. Hardware redundancy during
transmission can be employed by having complete redundant signal path (wiring harness, connectors,
transceiver) from the transmitter to receiver or by sampling the transmitted data by a redundant peripheral
instance followed by data integrity check.
Hardware Redundancy for device interconnect, External Memory Interface (EMIF) and flash
(bank/pump/pre-fetch and data buffer) can be implemented by simultaneous data storage/transmission
using two different module instances independently, fetched by independent processing units for
computation followed by comparison of the computed results. CPU1 fetching data using first EMIF
instance, CPU1.CLA1 fetching data using second EMIF instance and both interdependently processing
the inputs and implementing a reciprocal comparison is an example of Hardware Redundancy
implementation for EMIF and device interconnect.
While implementing hardware redundancy for ADC and DAC modules, additional care needs to be taken
to ensure common cause failures do not impact both instances in same way. Reference voltage sources
configured for redundant module instances should be independent. Additionally for ADC SOC trigger
sources used for redundant ADC instance should be configured to different PWM module instance. In
case of DAC module the comparator can be implemented using an external device.
While implementing hardware redundancy for the PWM module, it is recommended that PWM module
instance used is part of separate sync chains. This is to avoid common cause failure on sync signal
affecting both the PWM modules in same way.
While implementing hardware redundancy for GPIO module, it is recommended to use GPIO pins from
different GPIO groups to avoid common cause failures.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

59

Brief Description of Diagnostics

6.5.10

www.ti.com

HRPWM Built-In Self-Check and Diagnostic Capabilities
The micro edge positioner (MEP) logic in HRPWM is capable of placing an edge in one of 255 discrete
time steps. The size of these steps is of the order of 150 ps. For typical MEP step size, see the devicespecific data sheet. The MEP step size varies based on worst-case process parameters, operating
temperature, and voltage. MEP step size increases with decreasing voltage and increasing temperature
and decreases with increasing voltage and decreasing temperature. Applications that use the HRPWM
feature should use the TI-supplied MEP scale factor optimization (SFO) software function. The SFO
function helps to dynamically determine the number of MEP steps per EPWMCLK period while the
HRPWM is in operation.
The HRPWM module has built in self-check and diagnostic capabilities that can be used to determine the
optimum MEP scale factor value for any operating condition. TI provides a C-callable library containing
one SFO function that utilizes this hardware and determines the optimum MEP scale factor. For a given
System Clock frequency at a given temperature, a known MEP scale factor value is returned by the SFO
determination function. Proper System Clock frequency operation is verified by comparing the MEP scale
factor value returned with the expected value.

6.5.11

Information Redundancy Techniques
Information redundancy techniques can be applied via software as an additional runtime diagnostic. In
order to provide diagnostic coverage for network elements outside the C2000 MCU (wiring harness,
connectors, transceiver) end-to-end safety mechanisms are applied. These mechanisms can also provide
diagnostic coverage inside the C2000 MCU.
In the case of processing elements (CPU and CLA), this refers to multiple executions of the code and
software based cross checking to ensure correctness. The multiple execution and result comparison may
be based on either the same code executed multiple times or diversified software code implemented. For
details regarding the implementation, see the ISO26262-5, D.2.3.4. In the case of DMA, this refers to an
addition of information (SECDED codes, Parity codes, CRC, and so forth) to data (payload), enabling data
consistency check at the receiver side.
In the case of DMA and EMIF, this refers to the addition of information (SECDED codes, Parity codes,
CRC, and so forth) to data (payload), enabling data consistency check at the receiver side.
Typical control applications involve measuring three phase the voltage and current. These values are
either sampled directly using the on chip ADC or send to the TMS320F2837xD/S and TMS320F2807x
MCU by the sensors which are captured using ECAP, SDFM, and so forth. In such scenarios, the
correlation between input signals can be used to check the integrity (for example, if the three phase
voltage, V1, V2, V3 is being measured, the function V1 + V2 + V3 = 0 can be used to provide diagnostic
coverage for input signal integrity).
In the case of SRAM and FLASH memory, critical data, program, variables, and so forth can be stored
redundantly and compared before it is getting used. Care should be taken to avoid compiler optimizing
code containing redundant data/programs.

6.5.12

Monitoring of ePWM by eCAP
The ePWM outputs can be monitored for proper operation by an input capture peripheral, such as the
eCAP. The connection between ePWM output and eCAP input can be made either externally in the board
or internally using XBAR. Error response, diagnostic testability, and any necessary software requirements
are defined by the software implemented by the system integrator. Similarly eCAP can be tested by
periodically measuring ePWM pulse width. XINTxCTR (counter of XINT module), capture mode of eQEP
and DCCAP (PWM event filter unit) can also be used to detect rising/falling edges of the PWM and extract
the timestamping information. This information can be further used to build additional diagnostics.

60

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Diagnostics

www.ti.com

6.5.13

Monitoring of ePWM by ADC
The ePWM outputs can be monitored for proper operation by ADC using a board level feedback as
indicated in Figure 23. The technical details for implementing such a loopback like signal resolution, and
so forth is provided in the link [9]. Error response, diagnostic testability, and any necessary software
requirements are defined by the software implemented by the system integrator.

PWM1

A
B

ADC
A0
A1
A2
A3
A4

Figure 23. Monitoring of ePWM by ADC

6.5.14

Online Monitoring of Interrupts and Events
For interrupts and events, failure can be detected using information about the time behavior of the system.
The monitored signals can be either periodic or aperiodic.
For a typical closed loop control application, most of the critical events are periodic in nature and these
periodic events can be monitored and incoherence in the events can be used for fault detection. A few
places where online monitoring periodic interrupts and events can be employed include:
• Periodic generation of ADC start of conversion (SoC) (x): ADC SoC signal can be used to generate an
external interrupt (XINT) with the help of X-BAR. The occurrence of periodic interrupts can be
monitored.
• Periodic DMA trigger: Some of the DMA events may also be periodic in nature (for example, copy of
ADC results, updating of CMPA register, and so forth). DMA supports interrupt generation on the
completion of the DMA action and this capability can be used for online monitoring.
• Periodic occurrence of ECAP and EQEP interrupts
Monitoring of interrupts and events which are normally not expected during the correct operation can also
be used to improve the diagnostic coverage (e.g: ECC correctable error interrupt).

6.5.15

SDFM Comparator Filter for Online Monitoring
Comparator unit of SDFM can be used for online monitoring of primary filter’s operation. The comparator
filter has a configurable sinc filter whose output is compared with two programmed threshold levels to
detect over and under-value conditions. In case comparator filter’s data output crosses low or high
threshold limit, it will fire interrupt to the CPU.

6.5.16

SD Modulator Clock Fail Detection Mechanism
When SD modulator clock fails or goes missing for 256 continuous system clock cycles, clock fail
detection submodule in the input control unit of SD modulator detects the failure and generates an
interrupt to CPU. This mechanism can be used to detect missing modulator clock faults or any faults in
digital IO connecting modulator clock.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

61

Brief Description of Diagnostics

6.5.17

www.ti.com

Software Test of Function Including Error Tests
A software test can be utilized to test basic functionality of the module and to inject diagnostic errors and
check for proper error response. Such a test can be executed at boot or periodically. Software
requirements necessary are defined by the software implemented by the system integrator.
Ideas for creating some module specific tests functionality and error tests are given below:
• SDFM functionality can be checked by sending a known input test sequence to the C2000 MCU,
process it using the digital decimation filters and cross check the value against a known value. For
detecting faults in comparator interrupt generation logic, a test pattern can be created to configure the
high/low threshold register values to min/max values respectively. Interrupt should always be
generated with such a configuration.
• DMA functionality can be checked by transferring a known good data from a source memory to the
destination memory and checking for data integrity after the transfer. The transfer can be initiated
using the software trigger available (CONTROL.PERINTFRC). On chip timer can be used to profile the
time required for such a data transfer.
• EMIF functionality can be checked by moving a known good data from an external memory to the
internal memory and vice versa and checking for data consistency using CRC or other mechanisms.
The test should be repeated for all the masters having access to the external memories. In addition,
the test should provide coverage to all the interface pins used for connecting external memory to the
C2000 MCU.
• Software test of input and output X-BAR module can be performed by having a loop created (output XBAR can be used as stimulus to input X-BAR) using the input and output X-BAR, sending a known test
sequence at the input and observing it at the final output. Integrity of ePWM X-BAR can be checked by
sending the test stimulus and observing the response using ePWM trip or sync functionality.
• Software test of XINT functionality can be checked by configuring the input X-BAR and forcing the
corresponding GPIO register to generate an interrupt. The diagnostic coverage can be enhanced by
performing checks for the polarity (XINTxCR.POLARITY) and enable (XINTxCR.ENABLE) functionality
as well.
• IPC functionality can be checked by using interrupts or polling method by periodically sending test
commands and message as defined by software. Time stamping information using the
IPCCOUNTERH/L can be embedded along with the message to estimate the delay in communication.
• ECAP and EQEP functionality can be checked by looping back the PWM or GPIO outputs to the
respective module inputs, providing a known good sequence as required by the module and observing
the module output. In the case of ECAP, the test can be done internally with the help of input X-BAR.
• ROM prefetch functionality can be checked using similar techniques as given in Section 6.3.7.
• The PWM module consists of Time-Base (TB), Counter Compare (CC), Action Qualifier (AQ), DeadBand Generator (DB), PWM Chopper (PC), Trip Zone (TZ), Event Trigger (ET) and Digital Compare
(DC) sub-modules. The individual sub-modules can be tested by providing suitable stimulus using
PWM and observing the response using one of the capture (time stamping) modules (eCAP, XINT,
eQEP, etc.). It is recommended to cover the various register values associated with application
configuration while performing the software test. Due to the regular linear nature of the various submodules, it is possible to get high coverage using a software test.
• A software test of SRAM wrapper logic should provide diagnostic coverage for arbitration between
various masters having access to the particular SRAM and correct functioning of access protection.
This is in addition to the test used to provide coverage of SRAM bit cells (see Section 6.3.12).
• A software test function in DCSM can be implemented independently in zone1, zone2 and unsecured
zone to check DCSM functionality. Device security configurations are loaded from OTP to DCSM
during the device boot phase. The test function can implement access filtering checks (read-write and
execute permissions) to RAMs and flash sectors belonging to the same zone and different zone. An
additional check for EXEONLY configuration can also be implemented for the RAMs and flash sectors
to ensure that all access other than execute access is blocked.

62

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Diagnostics

www.ti.com

6.6
6.6.1

Analogue I/O
ADC Information Redundancy Techniques
Information redundancy techniques can be applied via software for providing runtime diagnostic coverage
on ADC conversions. Time redundancy technique can be applied where multiple conversions on same
ADC followed by comparison of results done in software. In addition, the correlation between input signals
can be used to check the integrity (for example, if the three phase voltage, V1, V2, V3 is being measured
using ADC, the function V1 + V2 + V3 = 0 can be used to provide diagnostic coverage for input signal
integrity and ADC conversion).
Error response, diagnostic testability, and any necessary software requirements are defined by the
software implemented by the system integrator.

6.6.2

ADC Input Signal Integrity Check
ADC input signal integrity can be checked using a mix of hardware and software runtime diagnostic on
ADC conversions. Filtering or plausibility check (for example, value fall in an expected range) of the
converted values can be performed using some of the built in hardware mechanisms available within the
device. Plausibility check of the input signal can be checked with the help of comparator by setting the
proper high and low threshold values. The plausibility check of converted results can be checked by using
ADC Post Processing Block.

6.6.3

ADC Signal Quality Check by Varying Acquisition Window
External signal sources vary in their ability to drive an analog signal quickly and effectively. In order to
achieve rated resolution, the signal source needs to charge the sampling capacitor in the ADC core to
within 0.5 LSBs of the signal voltage. The acquisition window is the amount of time the sampling capacitor
is allowed to charge and is configurable for SOCx by the ADCSOCxCTL.ACQPS register. This
configurable parameter can be also used to provide diagnostic coverage for the input signal path and ADC
sampling capacitor logic. The test can be done by redundant conversion of the same input signal by ADC
using the preset ACQPS configuration and an ACQPS configuration higher than the preset configuration.
The results thus obtained have to be within a pre-defined range determined by the application and ADC
specification parameters.

6.6.4

CMPSS Ramp Generator Functionality Check
CMPSS ramp generation functionality is used in certain control applications (for example, peak current
mode control). The functionality of ramp generator can be checked by reading back the contents of
DACHVALA register and ensuring that the register value is periodically updated based on the RAMPDLY,
RAMPDECVAL and RAMPMAXREF. Error response, diagnostic testability, and any necessary software
requirements are defined by the software implemented by the system integrator.

6.6.5

DAC to ADC Loopback Check
Integrity of DAC and ADC can be checked monitoring DAC output using ADC. DAC can be configured
using software to provide a set of predetermined voltage levels. These voltage levels can be measured by
the ADC and results thus obtained can be cross checked against the expected value to ensure proper
functioning of DAC and ADC. This technique can be applied during run time as well to ensure that proper
voltage levels are being driven from DAC.
For more information on the DAC channels that can be sampled by ADC without external board level
connections, see the device-specific data sheet or technical reference manual. While performing the
loopback checks for 16-bit differential input mode, two DACs should be used to provide input the ADC. To
avoid common cause failures, it is recommended to keep the references voltages of the ADC and DAC
different while performing the test. In addition, the input signal to ADC should not be driven by any other
sources while the test is being performed.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

63

Brief Description of Diagnostics

www.ti.com

12-bit
Buffered
DAC
VDAC

VREF

VREF1
Ax/DACy
0
1
.
.

ADC-A
12/16-bit

Figure 24. DAC to ADC Loopback

6.6.6

DAC to Comparator Loopback Check
The DAC outputs can be looped back to comparator inputs to check whether the outputs being driven are
at proper voltage levels. The connections need to be provided externally on the board to enable this
check. Higher diagnostic coverage can be obtained by configuring tighter limits to the comparator. This
technique can also be used to detect control flow errors which cause the DAC output to be set at a value
outside the applications safe operating range.

6.6.7

Opens/Shorts Detection Circuit for ADC
An opens/shorts detection circuit is provided to allow customers to detect faults in the ADC input channel.
This capability is valid only in single ended mode. For system integrator using differential mode, ADC
need to be configured in 12-bit single ended mode to perform this test. Error response, diagnostic
testability, and any necessary software requirements are defined by the software implemented by the
system integrator. This capability is deprecated in few part numbers. Confirm the feature availability before
using this diagnostic.
The following circuit and configuration selected by programmable register bits to control switches S1, S2,
S3, S4 allows controlling input ADC channel to test for Open/Shorts conditions.
CHSEL

Opens/Shorts Detection Circuit
VDDA

ADCIN0
ADCIN1
ADCIN2
ADCIN3
ADCIN4
ADCIN5
ADCIN6
ADCIN7
ADCIN8
ADCIN9
ADCIN10
ADCIN11
ADCIN12
ADCIN13
ADCIN014
ADCIN15

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

VSSA

S2

S1

5 kW
To S+H
7 kW

S3

VDDA

S4

VSSA

Figure 25. Opens/Shorts Detection Circuit

64

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Diagnostics

www.ti.com

Table 2. ADC Open-Shorts Detection Circuit Truth Table

6.6.8

ADCOSDETECT.DETEC
TCFG

Source Voltage

S4

S3

S2

S1

Drive Impedance

0

Off

Open

Open

Open

Open

Open

1

Zero Scale

Closed

Open

Open

Closed

5K || 7K

2

Full Scale

Open

Closed

Closed

Open

5K || 7K

3

5/12 VDDA

Open

Closed

Open

Closed

5K || 7K

4

7/12 VDDA

Closed

Open

Closed

Open

5K || 7K

5

Zero Scale

Open

Open

Open

Closed

5K

6

Full Scale

Open

Open

Closed

Open

5K

7

Zero Scale

Closed

Open

Open

Open

7K

VDAC Conversion by ADC
Reference voltage input to COMPDACs (VDAC) is double bonded with ADCB input. For detecting faults in
VDAC supply and corresponding analog I/O, it can be converted by ADC. The ADC result output can be
cross checked against the expected output to identify any faults. Programmed error response and any
necessary software requirements are defined by the system integrator.

6.6.9

Disabling Unused Sources of SOC Inputs to ADC
The start of conversion (SOC) signal input to the ADC module can be triggered by multiple sources,
mainly Software, CPU Timers, GPIO, and PWM module instances. In order to achieve freedom from
interference due to a fault originating from an peripheral not used in implementing the safety function and
cascading into ADC, it is recommended that application configures only the requires SOC triggers. This is
a way to avoid faults originating from an outside source to impact functionality of ADC.

6.7
6.7.1

Data Transmission
Bit Error Detection
When this module transmits information onto its Bus, it can also monitor the Bus to ensure that the
transmitted information is appearing as expected on the Bus. If the expected values are not read back
from the Bus, the hardware can flag the error and signal an interrupt to the CPU. This feature must be
enabled and configured in software.

6.7.2

CRC in Message
This module appends a CRC word along with the message. The CRC values are calculated and
transmitted by the transmitter, and then re-calculated by the receiver. If the CRC value calculated by the
receiver does not match the transmitted CRC value, a CRC error will be flagged. Error response and any
necessary software requirements are defined by the system integrator.

6.7.3

DCAN Acknowledge Error Detection
When a node on the CAN network receives a transmitted message, it sends an acknowledgment that it
received the message successfully. When a transmitted message is not acknowledged by the recipient
node, the transmitting DCAN will flag an Acknowledge Error. Error response and any necessary software
requirements are defined by the system integrator.

6.7.4

DCAN Form Error Detection
Certain types of frames in the DCAN have a fixed format per the CAN protocol. When a receiver receives
a bit in one of these frames that violate the protocol, the module will flag a Form Error. Error response and
any necessary software requirements are defined by the system integrator.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

65

Brief Description of Diagnostics

6.7.5

www.ti.com

DCAN Stuff Error Detection
In the CAN message protocol, several of the frame segments are coded through bit stuffing. Whenever a
transmitter detects five consecutive bits of identical value in the bit stream to be transmitted, it
automatically inserts a complementary bit into the actual transmitted bit stream. If a 6th consecutive equal
bit is detected in a received segment that should have been coded by bit stuffing, the DCAN module will
flag a Stuff Error. Error response and any necessary software requirements are defined by the system
integrator.

6.7.6

EMIF Access Latency Profiling Using On-Chip Timer
Each EMIF access takes fixed number of cycles for completing an access (read/write) to external memory.
Once the access latency is obtained, timer module can be used for profiling data transfers to both
asynchronous memories (with and without WAIT/READY handshake) and SDRAM memories.

6.7.7

EMIF Access Protection Mechanism
This mechanism provides code protection by preventing unauthorized fetch or writes access thus
identifying execution of unauthorized code or unwarranted corruption of external memory contents. The
feature enables freedom from interference for the software code and data.

6.7.8

EMIF Asynchronous Memory Timeout Protection Mechanism
Asynchronous memories have fixed write and read access timings achieved using wait states. Some
memories support handshake in addition to wait states configuration using WAIT/READY signal. Using
WAIT/READY signal and timeout counters message delays and hang conditions caused can be detected.
An error interrupt will be generated once timeout counters expire and current read/write access will be
discarded removing stall to the requested master.

6.7.9

I2C Access Latency Profiling Using On-Chip Timer
Each I2C message takes fixed number of system clock cycles for completing the transaction. The master
can detect the transaction completion based on message acknowledge signaling from the slave. On chip
timer module can be used for profiling the time required for completing each transaction.

6.7.10

Information Redundancy Techniques Including End-to-End Safeing
Information redundancy techniques can be applied via software as an additional runtime diagnostic. There
are many techniques that can be applied, such as read back of written values and multiple reads of the
same target data with comparison of results.
In order to provide diagnostic coverage for network elements outside the C2000 MCU (wiring harness,
connectors, transceiver) end-to-end safety mechanisms are applied. These mechanisms can also provide
diagnostic coverage inside the C2000 MCU. There are many different schemes applied, such as additional
message checksums, redundant transmissions, time diversity in transmissions, and so forth. Most
commonly checksums are added to the payload section of a transmission to ensure the correctness of a
transmission. These checksums are applied in addition to any protocol level parity and checksums. As the
checksum is generated and evaluated by the software at either end of the communication, the whole
communication path is safed, resulting in end-to-end safeing.
Any end-to-end communications diagnostics implemented should consider the failure modes and potential
mitigating safety measures described in IEC 61784-3:2010 and summarized in IEC 61784-3:2010, Table
1.

6.7.11

I2C Data Acknowledge Check
When a node on the I2C network receives a byte (address or data), it sends an acknowledgment that the
address is acknowledged or the data byte is received successfully. When a transmitted message is not
acknowledged by the recipient I2C, the transmitting I2C will flag NACK. Necessary software requirements
are defined by the system integrator. For example a function which needs to transfer 4 bytes of data and
can sent CRC as 5th byte. The device software can be designed such that the acknowledge is not
provided if the data and CRC doesn’t match.

66

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Brief Description of Diagnostics

www.ti.com

6.7.12

McBSP Receiver Overrun Detection
When McBSP is in receive mode, the Receive Shift Register (RSR) receives the data first, then transfers
the contents to the Receive Buffer Register (RBR), Data Receive Register (DRR) and subsequently gets
acted upon by the bus master (CPU or DMA). When the DRR is not read since the last data copy from the
RBR, the receiver does not copy a new word from the RBR to DRR and from the Receive Shift Register
(RSR) to the RBR. The RFULL = 1 flag indicates this error condition, wherein, any new serial data that
arrives will replace the contents of the RSR, and the previous received word is lost. RFULL = 1 flag
condition does not generate an interrupt and CPU has to periodically poll the signal to test the occurrence
of error.

Data Rx

RSR

RBR

Expand or
Justify and bit fill

To CPU
or DMA

DRR

Figure 26. McBSP Reception Data Path

6.7.13

McBSP Receiver Sync Error Detection
An unexpected receive frame-synchronization pulse is one that begins the next frame transfer before all
the bits of the current frame have been received. Such a pulse causes data reception to abort and restart.
The current word is lost and this is indicated by the RSYNCERR = 1 flag. This can generate an interrupt to
the CPU.

6.7.14

McBSP Transmitter Sync Error Detection
An unexpected transmit frame-synchronization pulse is one that begins the next frame transfer before all
the bits of the current frame have been transmitted. Such a pulse causes the current data transmission to
abort and restart. The current word is lost and this is indicated by the XSYNCERR=1 flag. This can
generate an interrupt to the CPU.

From CPU or
DMA

DXR

Compress or
do not modify

XSR

Data Tx

Figure 27. McBSP Transmission Data Path

6.7.15

McBSP Transmitter Underflow Detection
For McBSP transmission, CPU or DMA controller writes data to the Data Transmit Register (DXR). When
new data arrives in DXR, McBSP copies the content of the DXR to the Transmit Shift Register (XSR). On
reception of transmit frame-synchronization pulse, McBSP shifts data bits from the XSR to the transmit
pin. If new data is not loaded into the DXR before a new frame-synchronization signal arrives, the previous
data in the DXR is sent again. The XEMPTY = 0 flag indicates this error condition. This continues for
every new frame-synchronization pulse that arrives until the DXR is loaded with new data. XEMPTY = 0
flag condition does not generate an interrupt and CPU has to periodically poll the signal to test the
occurrence of error.

6.7.16

Parity in Message
This module supports insertion of a parity bit into the data payload of every outgoing message by
hardware. Evaluation of incoming message parity is also supported by hardware. Detected errors
generate an interrupt to the CPU.

6.7.17

SCI Break Error Detection
A SCI break detect condition occurs when the SCIRXD is low for ten bit periods following a missing stop
bit. This action sets the BRKDT flag bit (SCIRXST, bit 5) and initiates an interrupt.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

67

Brief Description of Diagnostics

6.7.18

www.ti.com

SCI Frame Error Detection
When receiving serial data, each byte of information on the SCI has an expected format. If the received
message does not match this, the SCI hardware can flag an error and generate an interrupt to the CPU.
This feature must be enabled and configured in software.

6.7.19

SCI Overrun Error Detection
If the SCI RX buffer receives new data before the previous data has been read, the existing data will be
overwritten and lost. If this occurs, the SCI hardware can flag the error and generate an interrupt to the
CPU. This feature must be enabled and configured in software.

6.7.20

Software Test of Function Using I/O Loopback
Most communication modules support digital or analog loopback capabilities for the I/Os. To confirm the
implemented loopback capabilities of the module, see the device-specific technical reference manual.
Digital loopback tests the signal path to the module boundary. Analog loopback tests the signal path from
the module to the I/O cell with output driver enabled. For best results any tests of the functionality should
include the I/O loopback.

6.7.21

SPI Data Overrun Detection
If SPI RX buffer receives new data before the previous data has been read, the existing data will be
overwritten and lost. If this occurs, SPI hardware can flag the error and generate an interrupt to the CPU.
This feature must be enabled and configured in software.

6.7.22

Transmission Redundancy
The information is transferred several times in sequence using the same module instance and compared.
When the same data path is used for duplicate transmissions, transmission redundancy will only by useful
for detecting transient faults. The diagnostic coverage can be improved by sending inverted data during
the redundant transmission.
In order to provide diagnostic coverage of device interconnects and EMIF, read back of written data (in
case of data writes) and multiple read backs of information (in case of data reads) can be employed.

68

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

References

www.ti.com

7

References
1. Calculating Useful Lifetimes of Embedded Processors
2. Moisture/Reflow Sensitivity Classification for Nonhermetic Solid State Surface Mount Devices,
https://www.jedec.org/standards-documents/docs/jesd-22-a112
3. Handling, Packing, Shipping and Use of Moisture/Reflow Sensitive Surface Mount Devices,
http://www.jedec.org/sites/default/files/docs/jstd033b01.pdf
4. IEC61508 Functional Safety of Electrical/Electronic/Programmable Electronic Safety-Related Systems,
International Electrotechnical Commission, 1998.
5. ISO26262–Road Vehicles-Functional Safety, International Standard ISO/FDIS, vol. 26262, 2011.
6. Standardized E-Gas Monitoring Concept for Gasoline and Diesel Engine Control Units
7. J. Astruc and N. Becker, Toward the Application of ISO 26262 for Real-Life Embedded Mechatronic
Systems, in International Conference on Embedded Real Time Software and Systems. ERTS2, 2010.
8. ISO26262–Road Vehicles-Functional Safety, Part 5: Product development at the hardware level,
Appendix D, International Standard ISO/FDIS, vol. 26262, 2011.
9. Using PWM Output as a Digital-to-Analog Converter on a TMS320F280x Digital Signal Controller
10. W. M. Goble and H. Cheddie, Safety Instrumented Systems Verification: Practical Probabilistic
Calculations. Isa, 2004.
11. TMS320C28x FPU Primer
12. Online Stack Overflow Detection on the TMS320C28x DSP
13. TMS320F2837xD Dual-Core Delfino™ Microcontrollers Data Sheet
14. TMS320F2837xS Delfino™ Microcontrollers Data Sheet
15. TMS320F2807x Piccolo™ Microcontrollers Data Sheet
16. TMS320F2837xD Dual-Core Delfino Microcontrollers Technical Reference Manual
17. IEC-60730 official website. Available online at http://www.iec.ch.
18. IEC-61784 official website. Available online at http://www.iec.ch.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Manual for TMS320F2837xD/S and TMS320F2807x
Copyright © 2016–2018, Texas Instruments Incorporated

69

Appendix A
SPRUI78B – July 2016 – Revised June 2018

Safety Architecture Configurations
A.1

Safety Architecture Configurations
The various redundancy architectures possible for the safety instrumented systems are indicated in
Table 3. For more information, see [10].
Table 3. Safety Architecture Configurations
Diagnostic Implementation

1

1oo1 Architecture

NA
+
Output Circuit

Sensor

Input
Circuit

Processing
Unit
Actuator
Final Element
-

2

1oo1D

Diagnostic channel is implemented using various hardware
diagnostic features like Watchdog, and so forth.

+

Diagnostic Circuit

Output Circuit
Sensor

Input
Circuit

Processing
Unit
Actuator
Final Element
-

3

1oo1D
Same figure as above.

4

1oo2

Diagnostic channel is implemented using reciprocal
comparison (uses two processing units for implementing
reciprocal comparison) and other hardware diagnostic
features.
+

Two different processing units are used to implement one
channel.

Output Circuit
Input
Circuit

Processing
Unit

Input
Circuit

Processing
Unit

Sensor
Output Circuit

Actuator
Final Element
-

70

Safety Architecture Configurations

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback
Copyright © 2016–2018, Texas Instruments Incorporated

Safety Architecture Configurations

www.ti.com

Table 3. Safety Architecture Configurations (continued)
Diagnostic Implementation
5

2oo2

+

Two different processing units are used to implement one
channel.

Output Circuit
Input
Circuit

Processing
Unit

Input
Circuit

Processing
Unit

Sensor
Output Circuit

Actuator
Final Element
-

6

2oo2D
+

Two 1oo1D structures of #2 wired together to implement a
safe channel.

Diagnostic Circuit

Output Circuit
Input
Circuit

Sensor

Processing
Unit

Diagnostic Circuit

Output Circuit
Input
Circuit

Processing
Unit
Actuator
Final Element
-

7

2oo2D
Same figure as above.

Two 1oo1D structures of #3 wired together.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Safety Architecture Configurations
Copyright © 2016–2018, Texas Instruments Incorporated

71

Safety Architecture Configurations

www.ti.com

Table 3. Safety Architecture Configurations (continued)
Diagnostic Implementation
8

1oo2D

Similar to 2oo2D implementation of #6 with additional
control lines wired to control one set of units using the other
unit

+

Diagnostic
Circuit

Output Circuit
Input
Circuit

Processing
Unit

Diagnostic
Circuit

Sensor

Output Circuit
Input
Circuit

Processing
Unit
Actuator
Final Element
-

9

1oo2D
Same figure as above.

Similar to 2oo2D implementation of #7 with additional
control lines wired to control one set of units using the other
unit.

10

2oo3

Use three different processing units to implement majority
voting. The fourth channel can be used either standalone or
with hardware diagnostic features.
Output Circuit 1
Input
Circuit

Processing
Unit
Output Circuit 2

Output Circuit 1
Sensor

Input
Circuit

Processing
Unit
Output Circuit 2

A

A

B

B

C

C

Voting Circuit

Output Circuit 1
Input
Circuit

Processing
Unit
Output Circuit 2

Actuator
Final Element
-

72

Safety Architecture Configurations

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback
Copyright © 2016–2018, Texas Instruments Incorporated

Appendix B
SPRUI78B – July 2016 – Revised June 2018

Terms and Definitions
B.1

Terms and Definitions
•

•

•
•

IEC60730: The IEC 60730 standard covers mechanical, electrical, electronic, EMC, and abnormal
operation of ac appliances. It is used in the design of design of white goods and other appliances to
improve customer safety using software test libraries developed in accordance with this standard.
IEC61508: Functional safety standard for E/E/PE safety-related systems. This is intended to be a basic
functional safety standard applicable to all kinds of industry. It defines functional safety as: “part of the
overall safety relating to the EUC (Equipment Under Control) and the EUC control system which
depends on the correct functioning of the E/E/PE safety-related systems, other technology safetyrelated systems and external risk reduction facilities” [4].
ISO13849: provides safety requirements and guidance for the design and integration of safety-related
parts of control systems (SRP/CS), including software design.
M out of N (MooN) architecture: A safety instrumented system where ‘M’ channels out of ‘N’ channels
are required for functionally safe operation. (for example, 2oo3, 2 out of 3 architecture, where majority
voting is used to implement a safety function).
Function
(e.g. Airbag)
Item

Item
(e.g. Airbag Controller)

Electric and Electronic
Part

System/Sub-system
(e.g. Actuator)

Component
(e.g. Application
software)

Component
(e.g. MCU)

Hardware Part
(e.g: CPU)

System/Sub-system
(e.g. Controller)

Mechanical Part

Element

System/Sub-system
(e.g. Sensor)

Communication

Software Unit
(e.g: SRAM test
module)

Figure 28. ISO26262 Illustration of Item, System, Component, Hardware Part and Software Unit
•
•

•

M out of N Channel Architecture with diagnostics (MooND).
Functional Safety: Part of the overall safety relating to the EUC and the EUC control system that
depends on the correct functioning of the E/E/PE safety-related systems and other risk reduction
measures
Item: system or array of systems to implement a function at the vehicle level, to which ISO 26262 is
applied (for example, power steering of a car).

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Terms and Definitions
Copyright © 2016–2018, Texas Instruments Incorporated

73

Terms and Definitions

•
•
•
•
•
•
•
•
•
•
•

•
•
•
•

•

•

•

•

•
•

74

www.ti.com

Element: System or part of a system including components, hardware, software, hardware parts, and
software units.
System: set of elements that relates at least a sensor, a controller and an actuator with one another
Component: Non-system level element that is logically and technically separable and is comprised of
hardware parts and software units.
Hardware part: Hardware that cannot be subdivided (for example, CPU).
Software unit: Atomic level software component of the software architecture that can be subjected to
stand-alone testing (for example, SRAM test module).
Failure: termination of the ability of an element, to perform a function as required.
Failure mode: manner in which an element or an item fails.
Single Point Fault: Fault in an element that is not covered by a safety mechanism and that leads
directly to the violation of a safety goal.
Single-point failure: Failure that results from a single-point fault and that leads directly to the violation
of a safety goal.
Multiple-point fault: Individual fault that, in combination with other independent faults, leads to a
multiple-point failure.
Multiple-point failure: Failure resulting from the combination of several independent faults, which leads
directly to the violation of a safety goal. For a multiple-point failure to directly violate a safety goal,
presence of all independent faults is necessary.
Multiple-point fault detection interval: time span to detect multiple-point fault before it can contribute to
a multiple-point failure.
Latent fault: multiple-point fault whose presence is not detected by a safety mechanism nor perceived
by the driver within the multiple-point fault detection interval.
Functional Safety Assessment: Investigation, based on evidence, to judge the functional safety
achieved by one or more E/E/PE safety-related systems and/or other risk reduction measures.
Functional Safety Audit: Systematic and independent examination to determine whether the
procedures specific to the functional safety requirements to comply with the planned arrangements are
implemented effectively and are suitable to achieve the specified objectives.
Hazard and Risk Analysis (IEC61508)/Hazard Analysis and Risk Assessment (ISO26262): An end
equipment level functional safety analysis that is used to identify safety functions and/or functional
safety goals. This process also establishes the SIL (IEC61508) or ASIL (ISO26262), which defines the
level of risk reduction necessary per safety function and/or functional safety goal.
Process Tailoring: The act of changing a development process or functional safety lifecycle to match
needs of a business engagement. Requirements can be moved from phase to phase or performed by
other developers, but removal of process requirements is not allowed.
Quality Managed: Describes a design element which is developed compliant to applicable quality
standards but is not developed compliant to applicable functional safety standards. It may be possible
to use a quality managed design element in a specific functional safety design contingent upon results
of a functional safety qualification.
Safety Requirement Decomposition: Safety requirements decomposition is the process in which safety
requirements are split into a series of redundant safety requirements at a lower level of abstraction in
order to support tailoring of the SIL (ISO26262)/ASIL (ISO26262) compliance requirements of design
elements at the lower level of abstraction. For example, a requirement for a peripheral function with
high safety integrity might be addressed by redundant instances of a peripheral with lower safety
integrity.
For the full list of applicable terms and their definitions for ISO26262, see the ISO26262-1:2011, Road
vehicles — Functional safety — Part 1: Vocabulary.
For the full list of applicable terms and their definitions for IEC61508, see the IEC61508, Functional
safety of electrical/electronic/programmable electronic safety-related systems – Part 4: Definitions and
abbreviations.

Terms and Definitions

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback
Copyright © 2016–2018, Texas Instruments Incorporated

Appendix C
SPRUI78B – July 2016 – Revised June 2018

Summary of Safety Features and Diagnostics
C.1

Summary of Safety Features and Diagnostics
Table 4. Summary Table Legend

Unique Identifier

Identifier used to reference the contents.

Safety Feature or
Diagnostic

Safety feature

Usage

Each test listed in this chart can be one of two types. A "diagnostic" test or a "test for diagnostic".
Diagnostic: Provides coverage for faults on a primary function of the device. It may, in addition, provide fault
coverage on other diagnostics, and can therefore be also used as a test-for-diagnostic in certain cases
Test-for-Diagnostic Only: Does NOT provide coverage for faults on a primary function of the device. It's only
purpose is to provide fault coverage on other diagnostics

Diagnostic Type

Hardware - A diagnostic which is implemented by TI in silicon and can communicate error status upon the
detection of failures. It may require software to enable the diagnostic and/or to take action upon the detection of
a failure.
Software - A test recommended by TI which must be created by the software implementer. This test may use
additional hardware implemented on the device by TI.
Hardware / Software - A test recommended by TI which requires both, diagnostic hardware which has been
implemented in silicon by TI, and which requires software that must be created by the software implementer.
System - A diagnostic implemented externally of the microcontroller

Diagnostic Operation

This can be one among the following:
(i) Bootup (enabled by default)
(ii) Continuous - Enabled at reset: Hardware safety mechanism that is enabled by default at reset.
(iii) Continuous - Enabled by software: Hardware safety mechanism that needs to be enabled by software.
(iv) On demand (Software defined): Software or Hardware-software safety mechanism that gets activated in the
diagnostic test interval by the software
(v) System defined: Implemented by the system.

Test Execution Time

This column lists the time required for this diagnostic to complete.

Action on Detected Fault

The response this diagnostic takes when an error is detected.
For software-driven tests, this action is often software implementation-dependent.

Error Reporting Time

Typical time required for diagnostic to indicate a detected fault to the system. For safety mechanisms where
fault detection time is known, this value is indicated. For software-driven tests, this time is often software
implementation-dependent.

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Summary of Safety Features and Diagnostics
Copyright © 2016–2018, Texas Instruments Incorporated

75

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic
Device Partition
Power Supply

Clock

Reset

76

Unique
Identifier

Safety Feature or Diagnostic

Usage

Diagnostic Type

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

PWR1

External Voltage Supervisor

Diagnostic

System defined

Continuous Enabled at reset

Zero or very low
overhead

System defined

System defined

PWR2

External Watchdog

Diagnostic

System defined

System defined

System defined

System defined

System defined

0.8 2ms

CLK1

Missing Clock Detect (MCD)

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

NMI with
ERRORSTS
assertion
Clock switch to
internal oscillator

CLK2

Clock Integrity Check Using CPU
Timer

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CLK3

Clock Integrity Check Using
HRPWM

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CLK5

External Clock Monitoring via
XCLKOUT

Diagnostic

System defined

System defined

System defined

System defined

System defined

CLK6

Internal Watchdog (WD)

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Device reset or
interrupt as per
configuration

Software defined

CLK7

External Watchdog

Diagnostic

System defined

System defined

System defined

System defined

System defined

CLK8

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CLK9

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CLK10

Software Test of Watchdog (WD)
Operation

Test for
diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CLK12

Software Test of Missing Clock
Detect Functionality

Test for
diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CLK13

PLL Lock Profiling using On-Chip
Timer

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CLK14

Peripheral Clock Gating (PCLKCR)

Diagnostic

Hardware

On demand
(Software defined)

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

RST1

External Monitoring of Warm Reset
(XRSn)

Diagnostic

System defined

System defined

System defined

System defined

System defined

RST2

Reset Cause Information

Diagnostic

Hardware Software

On demand
(Software defined)

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

RST3

Software Test of Reset

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

RST4

Glitch Filtering on Reset Pins

Diagnostic

Hardware

Continuous Enabled at reset

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

Summary of Safety Features and Diagnostics

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback
Copyright © 2016–2018, Texas Instruments Incorporated

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition
Reset (cont)

System Control
Module and
Configuration
Registers

Unique
Identifier

Safety Feature or Diagnostic

Usage

Diagnostic Type

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

RST5

NMIWD Shadow Registers

Diagnostic

Hardware Software

On demand
(Software defined)

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

RST6

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

RST7

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

RST8

NMIWD Reset Functionality

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Device reset

Software defined

RST9

Peripheral Soft Reset (SOFTPRES)

Diagnostic

Hardware

On demand
(Software defined)

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

SYS1

Multi-Bit Enable Keys for Control
Registers

Diagnostic

Hardware

Continuous Enabled at reset

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

SYS2

Lock Mechanism for Control
Registers

Diagnostic

Hardware

Continuous Enabled by
software

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

SYS3

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SYS4

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SYS5

Online Monitoring of Temperature

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SYS6

Peripheral Clock Gating (PCLKCR)

Diagnostic

Hardware

On demand
(Software defined)

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

SYS7

Peripheral Soft Reset (SOFTPRES)

Diagnostic

Hardware

On demand
(Software defined)

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

SYS8

EALLOW and MEALLOW
Protection for Critical Registers

Diagnostic

Hardware

Continuous Enabled at reset

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

SYS9

Software Test of ERRORSTS
Functionality

Diagnostic

HardwareSoftware

On demand
(software defined)

Software defined

Software defined

Software defined

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Summary of Safety Features and Diagnostics
Copyright © 2016–2018, Texas Instruments Incorporated

77

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition

Unique
Identifier

Safety Feature or Diagnostic

EFuse

EFUSE1

Efuse Autoload Self-Test

Diagnostic

EFUSE2

Efuse ECC

EFUSE4

Debug logic

C28x Central
Processing Unit

78

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

Hardware

Bootup (enabled
by default)

Zero or very low
overhead

Device reset

<400 CPU cycles

Diagnostic

Hardware

Bootup (enabled
by default)

Zero or very low
overhead

Device reset

<400 CPU cycles

Efuse ECC Logic Self-Test

Test for
diagnostic

Hardware

Bootup (enabled
by default)

Zero or very low
overhead

Device reset

<400 CPU cycles

EFUSE5

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

JTAG1

Hardware Disable of JTAG Port

Diagnostic

System defined

Continuous Enabled at reset

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

JTAG3

Internal Watchdog (WD)

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Device reset or
interrupt as per
configuration

Software defined

JTAG4

External Watchdog

Diagnostic

System defined

System defined

System defined

System defined

System defined

CPU1

Reciprocal Comparison by
Software

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CPU2

CPU Hardware Built-In Self-Test
(HWBIST)

Diagnostic

Hardware

On demand
(Software defined)

Software defined

NMI with
ERRORSTS
assertion

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

CPU3

Software Test of CPU

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CPU4

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CPU5

Access Protection Mechanism for
Memories

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

CPU6

Hardware Disable of JTAG Port

Diagnostic

System defined

Continuous Enabled at reset

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

CPU7

CPU Handling of Illegal Operation,
Illegal Results and Instruction
Trapping

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

Usage

Diagnostic Type

Summary of Safety Features and Diagnostics

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback
Copyright © 2016–2018, Texas Instruments Incorporated

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition
C28x Central
Processing Unit
(cont)

Unique
Identifier

Safety Feature or Diagnostic

Usage

Diagnostic Type

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

CPU8

Internal Watchdog (WD)

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Device reset or
interrupt as per
configuration

Software defined

CPU9

External Watchdog

Diagnostic

System defined

System defined

System defined

System defined

System defined

CPU10

Information Redundancy
Techniques

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CPU11

CPU Hardware Built-In Self-Test
(HWBIST) Auto Coverage

Test for
diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

NMI with
ERRORSTS
assertion

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

CPU12

CPU Hardware Built-In Self-Test
(HWBIST) Fault Injection Capability

Test for
diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CPU13

CPU Hardware Built-In Self-Test
(HWBIST) Timeout Feature

Test for
diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

NMI with
ERRORSTS
assertion

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

CPU14

Stack Overflow Detection

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

CPU15

VCU CRC Auto Coverage

Test for
diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Software defined

Software defined

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Summary of Safety Features and Diagnostics
Copyright © 2016–2018, Texas Instruments Incorporated

79

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition
Control Law
Accelerator (CLA)

Flash

80

Unique
Identifier

Safety Feature or Diagnostic

Usage

Diagnostic Type

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

CLA1

Reciprocal Comparison by
Software

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CLA2

Software Test of CLA

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CLA3

CLA Handling of Illegal Operation
and Illegal Results

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

CLA4

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CLA5

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CLA7

Information Redundancy
Techniques (multiple execution)

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CLA8

CLA Liveness Check Using CPU

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CLA9

Access Protection Mechanism for
Memories

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

FLASH1

Flash ECC

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

NMI with
ERRORSTS
assertion or
interrupt to CPU
based on error
severity

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

FLASH2

VCU CRC Check of Static Memory
Contents

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

FLASH3

Bit Multiplexing in Flash Memory
Array

Diagnostic

Hardware

Continuous Enabled at reset

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

FLASH4

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

FLASH5

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

FLASH6

Software Test of ECC Logic

Test for
diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Summary of Safety Features and Diagnostics

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback
Copyright © 2016–2018, Texas Instruments Incorporated

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition

Unique
Identifier

Flash (cont)

FLASH7

Flash Program Verify and Erase
Verify Check

FLASH8

SRAM

Diagnostic Type

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Software Test of Flash Prefetch,
Data Cache and Wait-States

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

FLASH9

Internal Watchdog (WD)

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Device reset or
interrupt as per
configuration

Software defined

FLASH10

External Watchdog

Diagnostic

System defined

System defined

System defined

System defined

System defined

FLASH11

Data Scrubbing to Detect/Correct
Memory Errors

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

NMI with
ERRORSTS
assertion or
interrupt to CPU
based on error
severity

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

FLASH12

CPU Handling of Illegal Operation,
Illegal Results and Instruction
Trapping

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

FLASH13

Hardware Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

System defined

System defined

System defined

SRAM1

SRAM ECC

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

NMI with
ERRORSTS
assertion or
interrupt to CPU
based on error
severity

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

SRAM2

SRAM Parity

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

NMI with
ERRORSTS
assertion

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

SRAM3

Software Test of SRAM

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SRAM4

Bit Multiplexing in SRAM Memory
Array

Diagnostic

Hardware

Continuous Enabled at reset

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

SRAM5

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Safety Feature or Diagnostic

Usage

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Summary of Safety Features and Diagnostics
Copyright © 2016–2018, Texas Instruments Incorporated

81

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition
SRAM (cont)

82

Unique
Identifier

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

NMI with
ERRORSTS
assertion or
interrupt to CPU
based on error
severity

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

VCU CRC Check of Static Memory
Contents

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SRAM10

Software Test of Function Including
Error Tests

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SRAM11

Access Protection Mechanism for
Memories

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

SRAM12

Lock Mechanism for Control
Registers

Diagnostic

Hardware

Continuous Enabled by
software

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

SRAM13

Software Test of ECC Logic

Test for
diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SRAM14

Software Test of Parity Logic

Test for
diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SRAM16

Information Redundancy
Techniques

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SRAM17

CPU Handling of Illegal Operation,
Illegal Results and Instruction
Trapping

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

SRAM18

Internal Watchdog (WD)

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Device reset or
interrupt as per
configuration

Software defined

SRAM19

External Watchdog

Diagnostic

System defined

System defined

System defined

System defined

System defined

Safety Feature or Diagnostic

Usage

SRAM6

Software Read Back of Written
Configuration

Diagnostic

SRAM7

Data Scrubbing to Detect/Correct
Memory Errors

SRAM8

Diagnostic Type

Summary of Safety Features and Diagnostics

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback
Copyright © 2016–2018, Texas Instruments Incorporated

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition

Unique
Identifier

SRAM (cont)

SRAM20

ROM

Device
Interconnect

Safety Feature or Diagnostic

Usage

Diagnostic Type

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

CLA handling of illegal operation
and illegal results

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

ROM1

VCU CRC Check of Static Memory
Contents

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

ROM2

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

ROM3

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

ROM4

Software Test of Function Including
Error Tests

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

ROM5

CPU Handling of Illegal Operation,
Illegal Results and Instruction
Trapping

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

ROM6

Internal Watchdog (WD)

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Device reset or
interrupt as per
configuration

Software defined

ROM7

External Watchdog

Diagnostic

System defined

System defined

System defined

System defined

System defined

ROM8

Power-Up Pre-Operational Security
Checks

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

INC1

Software Test of Function Including
Error Tests

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

INC2

Internal Watchdog (WD)

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Device reset or
interrupt as per
configuration

Software defined

INC3

External Watchdog

Diagnostic

System defined

System defined

System defined

System defined

System defined

INC4

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

INC5

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

INC6

CPU Handling of Illegal Operation,
Illegal Results and Instruction
Trapping

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Summary of Safety Features and Diagnostics
Copyright © 2016–2018, Texas Instruments Incorporated

83

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition
Device
Interconnect (cont)

Direct Memory
Access (DMA)

Inter Processor
Communication
(IPC)

84

Unique
Identifier

Safety Feature or Diagnostic

Usage

Diagnostic Type

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

INC7

CLA Handling of Illegal Operation
and Illegal Results

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

INC8

Transmission Redundancy

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

INC9

Hardware Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

DMA2

Information Redundancy
Techniques

Diagnostic

Software

On demand
(Software defined)

Software defined

Software Defined

Software defined

DMA3

Transmission Redundancy

Diagnostic

Software

On demand
(Software defined)

Software defined

System Defined

Software defined

DMA4

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

DMA5

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

DMA6

Software Test of Function Including
Error Tests

Diagnostic

Software

On demand
(Software defined)

Software defined

Software Defined

Software defined

DMA7

DMA Overflow Interrupt

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

DMA8

Access Protection Mechanism for
Memories

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

DMA9

Disabling of Unused DMA Trigger
Sources

Fault
avoidance

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

IPC1

Information Redundancy
Techniques Including End-to-End
Safeing

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

IPC2

Transmission Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

IPC3

Software Test of Function Including
Error Tests

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Summary of Safety Features and Diagnostics

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback
Copyright © 2016–2018, Texas Instruments Incorporated

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition

Inter Processor
Communication
(IPC) (cont)

Enhanced
Peripheral
Interrupt Expander
(ePIE)

Dual Zone Code
Security Module
(DCSM)

Unique
Identifier

Diagnostic Type

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

IPC6

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

PIE1

PIE Double SRAM Hardware
Comparison

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

CPU exception for
single core device,
NMI with
ERRORSTS
assertion for dual
core device

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

PIE2

Software Test of SRAM

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

PIE3

Software Test of ePIE Operation
Including Error Tests

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

PIE4

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

PIE5

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

PIE6

PIE Double SRAM Comparison
Check

Test for
diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

PIE7

Maintaining Interrupt Handler for
Unused Interrupts

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Software defined

Software defined

PIE8

Online Monitoring of Interrupts and
Events

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

PIE9

Hardware Redundancy

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

DCSM1

Multi-Bit Enable Keys for Control
Registers

Diagnostic

Hardware

Continuous Enabled at reset

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

DCSM2

Majority Voting and Error Detection
of Link Pointer

Diagnostic

Hardware

Continuous Enabled at reset

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

DCSM3

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

DCSM4

Software Test of Function Including
Error Tests

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Safety Feature or Diagnostic

Usage

IPC4

Event Timestamping Using IPC
Counter

IPC5

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Summary of Safety Features and Diagnostics
Copyright © 2016–2018, Texas Instruments Incorporated

85

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition

Dual Zone Code
Security Module
(DCSM) (cont)

Cross Bar (XBAR)

Timer

86

Unique
Identifier

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

CLA Handling of Illegal Operation
and Illegal Results

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

DCSM8

VCU CRC Check of Static Memory
Contents

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Safety Feature or Diagnostic

Usage

DCSM5

Software Read Back of Written
Configuration

Diagnostic

DCSM6

CPU Handling of Illegal Operation,
Illegal Results and Instruction
Trapping

DCSM7

Diagnostic Type

DCSM9

External Watchdog

Diagnostic

System defined

System defined

System defined

System defined

System defined

DCSM10

Power-Up Pre-Operational Security
Checks

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

DCSM11

Hardware Redundancy

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

XBAR1

Software Test of Function Including
Error Tests

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

XBAR2

Hardware Redundancy

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Software defined

Software defined

XBAR3

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

XBAR4

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

XBAR5

Software Check of XBAR Flag

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

TIM1

1oo2 Software Voting Using
Secondary Free Running Counter

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

TIM2

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

TIM3

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

TIM4

Software Test of Function Including
Error Tests

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Summary of Safety Features and Diagnostics

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback
Copyright © 2016–2018, Texas Instruments Incorporated

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition
General Pupose
I/O and
Multiplexing (GPIO
and PINMUX)

Enhanced Pulse
Width Modulators
(ePWM)

Unique
Identifier

Safety Feature or Diagnostic

Usage

Diagnostic Type

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

GPIO1

Lock Mechanism for Control
Registers

Diagnostic

Hardware

Continuous Enabled by
software

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

GPIO2

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

GPIO3

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

GPIO4

Software Test of Function Using I/O
Loopback

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

GPIO5

Hardware Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

PWM1

Software Test of Function Including
Error Tests

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

PWM2

Hardware Redundancy

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Software defined

Software defined

PWM3

Monitoring of ePWM by eCAP

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

PWM4

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

PWM5

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

PWM8

ePWM Fault Detection using XBAR

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Software defined

Software defined

PWM9

ePWM Synchronization Check

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

PWM10

ePWM Safe State Assertion Using
Trip Mechanism

Diagnostic

Hardware

Continuous Enabled by
software

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

PWM11

ePWM Application Level Safety
Mechanism

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

PWM12

Online Monitoring of Interrupts and
Events

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

PWM13

Monitoring of ePWM by ADC

Diagnostic

System defined

On demand
(Software defined)

On demand
(Software defined)

Software defined

Software defined

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Summary of Safety Features and Diagnostics
Copyright © 2016–2018, Texas Instruments Incorporated

87

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition
High Resolution
Pulse Width
Modulator
(HRPWM)

Enhanced Capture
(ECAP)

Enhanced
Quadrature
Encoder Pulse
(eQEP)

88

Unique
Identifier

Safety Feature or Diagnostic

Usage

Diagnostic Type

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

OTTO1

HRPWM Built-In Self-Check and
Diagnostic Capabilities

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

OTTO2

Hardware Redundancy

Diagnostic

Hardware

On demand
(Software defined)

Software defined

Software defined

Software defined

OTTO3

Monitoring of ePWM by eCAP

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

OTTO4

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

OTTO5

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CAP1

Software Test of Function Including
Error Tests

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CAP2

Information Redundancy
Techniques

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CAP3

Monitoring of ePWM by eCAP

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CAP4

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CAP5

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CAP6

ECAP Application Level Safety
Mechanism

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CAP7

Hardware Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

QEP1

Software Test of Function Including
Error Tests

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

QEP2

eQEP Quadrature Watchdog

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

QEP3

Information Redundancy
Techniques

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

QEP4

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Summary of Safety Features and Diagnostics

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback
Copyright © 2016–2018, Texas Instruments Incorporated

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition
Enhanced
Quadrature
Encoder Pulse
(eQEP) (cont)

Sigma Delta Filter
Module (SDFM)

XINT

Analog to Digital
Converter (ADC)

Unique
Identifier

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Hardware Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SDFM1

SDFM Comparator Filter for Online
Monitoring

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

SDFM2

Information Redundancy
Techniques

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SDFM3

SD Modulator Clock Fail Detection
Mechanism

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

SDFM4

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SDFM5

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SDFM6

Software Test of Function Including
Error Tests

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SDFM7

Hardware Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

XINT1

Software Test of Function Including
Error Tests

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

XINT2

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

XINT3

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

XINT4

Hardware Redundancy

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Software defined

Software defined

ADC1

Software Test of Function Including
Error Tests

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Safety Feature or Diagnostic

Usage

QEP5

Software Read Back of Written
Configuration

Diagnostic

QEP6

eQEP Application Level Safety
Mechanisms

QEP7

Diagnostic Type

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Summary of Safety Features and Diagnostics
Copyright © 2016–2018, Texas Instruments Incorporated

89

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition
Analog to Digital
Converter (ADC)
(cont)

BUFDAC

CMPSS

90

Unique
Identifier

Safety Feature or Diagnostic

Usage

Diagnostic Type

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

ADC2

DAC to ADC Loopback Check

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

ADC3

ADC Information Redundancy
Techniques

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

ADC4

Opens/Shorts Detection Circuit for
ADC

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

ADC5

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

ADC6

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

ADC7

ADC Signal Quality Check by
Varying Acquisition Window

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

ADC8

ADC Input Signal Integrity Check

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Software defined

Software defined

ADC9

Monitoring of ePWM by ADC

Diagnostic

System defined

System defined

On demand
(Software defined)

Software defined

Software defined

ADC10

Hardware Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

DAC1

Software Test of Function Including
Error Tests

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

DAC2

DAC to ADC Loopback Check

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

DAC3

Lock Mechanism for Control
Registers

Diagnostic

Hardware

Continuous Enabled by
software

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

DAC4

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

DAC5

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

DAC6

Hardware Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

DAC7

DAC to Comparator Loopback
Check

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CMPSS1

Software Test of Function Including
Error Tests

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CMPSS3

Hardware Redundancy

Diagnostic

Hardware

Continuous Enabled by
software

Software defined

Software defined

Software defined

Summary of Safety Features and Diagnostics

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback
Copyright © 2016–2018, Texas Instruments Incorporated

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition

Unique
Identifier

CMPSS (cont)

Controller Area
Network (DCAN)

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Lock Mechanism for Control
Registers

Diagnostic

Hardware

Continuous Enabled by
software

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

CMPSS7

VDAC Conversion by ADC

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CMPSS8

CMPSS Ramp Generator
Functionality Check

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CAN1

Software Test of Function Using I/O
Loopback

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CAN2

Information Redundancy
Techniques Including End-to-End
Safeing

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CAN3

SRAM Parity

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

CAN4

Software Test of SRAM

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CAN5

Bit Multiplexing in SRAM Memory
Array

Diagnostic

Hardware

Continuous Enabled at reset

NA (Fault
Avoidance)

NA (Fault
avoidance
technique)

NA (Fault
avoidance
technique)

CAN7

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CAN8

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CAN9

Transmission Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CAN10

DCAN Stuff Error Detection

Diagnostic

Hardware

Continuous Enabled at reset

zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

Safety Feature or Diagnostic

Usage

CMPSS4

Software Read Back of Written
Configuration

Diagnostic

CMPSS5

Periodic Software Read Back of
Static Configuration Registers

CMPSS6

Diagnostic Type

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Summary of Safety Features and Diagnostics
Copyright © 2016–2018, Texas Instruments Incorporated

91

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition
Controller Area
Network (DCAN)
(cont)

Serial Peripheral
Interface (SPI)

92

Unique
Identifier

Safety Feature or Diagnostic

Usage

Diagnostic Type

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

CAN11

DCAN Form Error Detection

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

CAN12

DCAN Acknowledge Error
Detection

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

CAN13

Bit Error Detection

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

CAN14

CRC in Message

Diagnostic

Hardware

Continuous Enabled at reset

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

CAN15

Software Test of Parity Logic

Test for
diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

CAN16

Hardware Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SPI1

Software Test of Function Using I/O
Loopback

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SPI2

Information Redundancy
Techniques Including End-to-End
Safeing

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SPI3

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SPI4

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SPI5

Transmission Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Summary of Safety Features and Diagnostics

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback
Copyright © 2016–2018, Texas Instruments Incorporated

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition
Serial Peripheral
Interface (SPI)
(cont)

Serial
Communications
Interface (SCI)

Unique
Identifier

Safety Feature or Diagnostic

Usage

Diagnostic Type

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

SPI6

SPI Data Overrun Detection

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

SP17

Hardware Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SCI1

Software Test of Function Using I/O
Loopback

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SCI2

Parity in Message

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

SCI3

Information Redundancy
Techniques Including End-to-End
Safeing

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SCI4

SCI Overrun Error Detection

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

SCI5

SCI Break Error Detection

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

SCI6

SCI Frame Error Detection

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

SCI7

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SCI8

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Summary of Safety Features and Diagnostics
Copyright © 2016–2018, Texas Instruments Incorporated

93

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition
Serial
Communications
Interface (SCI)
(cont)

Inter-Integrated
Circuit (I2C)

94

Unique
Identifier

Safety Feature or Diagnostic

Usage

Diagnostic Type

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

SCI9

Transmission Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SCI20

Hardware Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

I2C1

Software Test of Function Using I/O
Loopback

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

I2C2

I2C Data Acknowledge Check

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

I2C3

Information Redundancy
Techniques Including End-to-End
Safeing

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

I2C4

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

I2C5

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

I2C6

Transmission Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

I2C7

I2C Access Latency Profiling Using
On-Chip Timer

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

IC28

Hardware Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Summary of Safety Features and Diagnostics

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback
Copyright © 2016–2018, Texas Instruments Incorporated

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition
MultiChannel
Buffer Serial Port
(McBSP)

Unique
Identifier

Safety Feature or Diagnostic

Diagnostic Type

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

MCBSP1

Software Test of Function Using I/O
Loopback

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

MCBSP2

Information Redundancy
Techniques Including End-to-End
Safeing

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

MCBSP3

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

MCBSP4

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

MCBSP5

Transmission Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

MCBSP6

McBSP Receiver Overrun
Detection

Diagnostic

Hardware

Continuous Enabled at reset

Software defined

Setting of status
flag

Software defined

MCBSP7

McBSP Transmitter Underflow
Detection

Diagnostic

Hardware

Continuous Enabled at reset

Software defined

Setting of status
flag

Software defined

MCBSP8

McBSP Receiver Sync Error
Detection

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

MCBSP9

McBSP Transmitter Sync Error
Detection

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

MCBSP10 Hardware Redundancy
External Memory
Interface (EMIF)

Usage

EMIF1

Information Redundancy
Techniques

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

EMIF2

VCU CRC Check of Static Memory
Contents

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

EMIF3

Periodic Software Read Back of
Static Configuration Registers

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

EMIF4

Software Read Back of Written
Configuration

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

EMIF5

Transmission Redundancy

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Summary of Safety Features and Diagnostics
Copyright © 2016–2018, Texas Instruments Incorporated

95

Summary of Safety Features and Diagnostics

www.ti.com

Table 5. Summary of Safety Features and Diagnostic (continued)
Device Partition
External Memory
Interface (EMIF)
(cont)

96

Unique
Identifier

Safety Feature or Diagnostic

Usage

Diagnostic Type

Diagnostic
Operation

Test Execution
Time

Action on
Detected Fault

Error Reporting
Time

EMIF6

EMIF Access Protection
Mechanism

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

EMIF7

EMIF Asynchronous Memory
Timeout Protection Mechanism

Diagnostic

Hardware

Continuous Enabled by
software

Zero or very low
overhead

Interrupt to CPU

Typically <1 μS to
notify *(Interrupt
Handling Time is
System Load and
Software
Dependent)

EMIF8

EMIF Access Latency Profiling
Using On-Chip Timer

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

EMIF9

Software Test of Function Including
Error Tests

Diagnostic

Software

On demand
(Software defined)

Software defined

Software defined

Software defined

EMIF10

Hardware Redundancy

Diagnostic

Hardware Software

On demand
(Software defined)

Software defined

Software defined

Software defined

Summary of Safety Features and Diagnostics

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback
Copyright © 2016–2018, Texas Instruments Incorporated

Revision History

www.ti.com

Revision History
NOTE: Page numbers for previous revisions may differ from page numbers in the current version.
Changes from A Revision (December 2016) to B Revision ........................................................................................... Page
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•

Updates were made in Section 1. ....................................................................................................... 1
'C2000' was changed to 'TMS320F2837xD/S and TMS320F2807x' throughout the document. ............................... 1
Updates were made in Section 1.1. .................................................................................................... 2
Update was made in Section 1.3. ....................................................................................................... 4
Update was made in Section 1.3.1. ..................................................................................................... 4
Updates were made in Section 1.3.1. .................................................................................................. 4
Update was made in Section 1.3.3. ..................................................................................................... 6
Updates were made in Section 2.2.3. .................................................................................................. 8
Updates were made in Section 2.2.4. .................................................................................................. 8
Updates were made in Section 2.4. .................................................................................................... 9
Updates were made in Section 2.5. ................................................................................................... 10
Update was made in Section 2.6. ..................................................................................................... 10
All of Section 3 was updated. .......................................................................................................... 10
Updates were made in Section 4.1.1. ................................................................................................. 19
Update was made in Section 4.1.2. ................................................................................................... 21
Update was made in Section 4.2.2. ................................................................................................... 23
Updates were made in Section 4.2.4. ................................................................................................. 26
Updates were made in Section 4.2.6. ................................................................................................. 30
Updates were made in Section 5. ..................................................................................................... 31
Updates were made in Section 5.1.2. ................................................................................................. 32
Updates were made in Section 5.3.3. ................................................................................................. 36
Update was made in Section 5.4.2. ................................................................................................... 37
Update was made in Section 5.5.2. ................................................................................................... 40
Update was made in Section 5.5.3. ................................................................................................... 40
Updates were made in Section 5.6.1. ................................................................................................. 42
Universal Serial Bus (USB) and Universal Parallel Port (uPP) sections were removed. ....................................... 45
Update was made in Section 6.1.1. ................................................................................................... 46
Update was made in Section 6.1.5. ................................................................................................... 46
Update was made in Section 6.1.12. .................................................................................................. 47
Updates were made in Section 6.1.14. ............................................................................................... 48
Update was made in Section 6.1.18. .................................................................................................. 48
Update was made in Section 6.1.20. .................................................................................................. 49
Update was made in Section 6.1.25. .................................................................................................. 49
Update was made in Section 6.1.28. .................................................................................................. 50
Update was made in Section 6.1.29. .................................................................................................. 50
Added new Section 6.2.14. ............................................................................................................. 53
Update was made in Section 6.3.6. ................................................................................................... 54
Added new Section 6.4.11. ............................................................................................................. 57
Updates were made in Section 6.5.9. ................................................................................................. 59
Updates were made in Section 6.6.1. ................................................................................................. 63
Update were made in Section 6.6.7. .................................................................................................. 64
Added new Section 6.6.9.Section 6.6.9. .............................................................................................. 65
Update was made in Section A.1. ..................................................................................................... 70
Update was made in Section C.1. ..................................................................................................... 75
Updates were made in Table 5. ....................................................................................................... 76

SPRUI78B – July 2016 – Revised June 2018
Submit Documentation Feedback

Revision History
Copyright © 2016–2018, Texas Instruments Incorporated

97

IMPORTANT NOTICE FOR TI DESIGN INFORMATION AND RESOURCES
Texas Instruments Incorporated (‘TI”) technical, application or other design advice, services or information, including, but not limited to,
reference designs and materials relating to evaluation modules, (collectively, “TI Resources”) are intended to assist designers who are
developing applications that incorporate TI products; by downloading, accessing or using any particular TI Resource in any way, you
(individually or, if you are acting on behalf of a company, your company) agree to use it solely for this purpose and subject to the terms of
this Notice.
TI’s provision of TI Resources does not expand or otherwise alter TI’s applicable published warranties or warranty disclaimers for TI
products, and no additional obligations or liabilities arise from TI providing such TI Resources. TI reserves the right to make corrections,
enhancements, improvements and other changes to its TI Resources.
You understand and agree that you remain responsible for using your independent analysis, evaluation and judgment in designing your
applications and that you have full and exclusive responsibility to assure the safety of your applications and compliance of your applications
(and of all TI products used in or for your applications) with all applicable regulations, laws and other applicable requirements. You
represent that, with respect to your applications, you have all the necessary expertise to create and implement safeguards that (1)
anticipate dangerous consequences of failures, (2) monitor failures and their consequences, and (3) lessen the likelihood of failures that
might cause harm and take appropriate actions. You agree that prior to using or distributing any applications that include TI products, you
will thoroughly test such applications and the functionality of such TI products as used in such applications. TI has not conducted any
testing other than that specifically described in the published documentation for a particular TI Resource.
You are authorized to use, copy and modify any individual TI Resource only in connection with the development of applications that include
the TI product(s) identified in such TI Resource. NO OTHER LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE TO
ANY OTHER TI INTELLECTUAL PROPERTY RIGHT, AND NO LICENSE TO ANY TECHNOLOGY OR INTELLECTUAL PROPERTY
RIGHT OF TI OR ANY THIRD PARTY IS GRANTED HEREIN, including but not limited to any patent right, copyright, mask work right, or
other intellectual property right relating to any combination, machine, or process in which TI products or services are used. Information
regarding or referencing third-party products or services does not constitute a license to use such products or services, or a warranty or
endorsement thereof. Use of TI Resources may require a license from a third party under the patents or other intellectual property of the
third party, or a license from TI under the patents or other intellectual property of TI.
TI RESOURCES ARE PROVIDED “AS IS” AND WITH ALL FAULTS. TI DISCLAIMS ALL OTHER WARRANTIES OR
REPRESENTATIONS, EXPRESS OR IMPLIED, REGARDING TI RESOURCES OR USE THEREOF, INCLUDING BUT NOT LIMITED TO
ACCURACY OR COMPLETENESS, TITLE, ANY EPIDEMIC FAILURE WARRANTY AND ANY IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT OF ANY THIRD PARTY INTELLECTUAL
PROPERTY RIGHTS.
TI SHALL NOT BE LIABLE FOR AND SHALL NOT DEFEND OR INDEMNIFY YOU AGAINST ANY CLAIM, INCLUDING BUT NOT
LIMITED TO ANY INFRINGEMENT CLAIM THAT RELATES TO OR IS BASED ON ANY COMBINATION OF PRODUCTS EVEN IF
DESCRIBED IN TI RESOURCES OR OTHERWISE. IN NO EVENT SHALL TI BE LIABLE FOR ANY ACTUAL, DIRECT, SPECIAL,
COLLATERAL, INDIRECT, PUNITIVE, INCIDENTAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES IN CONNECTION WITH OR
ARISING OUT OF TI RESOURCES OR USE THEREOF, AND REGARDLESS OF WHETHER TI HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
You agree to fully indemnify TI and its representatives against any damages, costs, losses, and/or liabilities arising out of your noncompliance with the terms and provisions of this Notice.
This Notice applies to TI Resources. Additional terms apply to the use and purchase of certain types of materials, TI products and services.
These include; without limitation, TI’s standard terms for semiconductor products http://www.ti.com/sc/docs/stdterms.htm), evaluation
modules, and samples (http://www.ti.com/sc/docs/sampterms.htm).

Mailing Address: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265
Copyright © 2018, Texas Instruments Incorporated



Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.4
Linearized                      : No
Page Mode                       : UseOutlines
Page Count                      : 98
Creator                         : TopLeaf 9.0.002
Producer                        : iText 2.1.7 by 1T3XT
Title                           : TMS320F2837xD/S and TMS320F2807x Safety Manual UG (Rev. B)
Keywords                        : SPRUI78, SPRUI78B
Subject                         : User's Guide
Modify Date                     : 2018:06:01 14:48:21-05:00
Author                          : Texas Instruments, Incorporated [SPRUI78,B.]
Create Date                     : 2018:06:01 14:48:21-05:00
EXIF Metadata provided by EXIF.tools

Navigation menu