3.2 Using MISRA Check in a Safety Environment

Attention: To use the MPLAB Analysis Tool Suite in a safety environment, you must use a functional safety version of the Microchip compiler. See 1.2 Licenses for MPLAB XC C Compilers. Additional information about functional safety can be found at www.microchip.com/en-us/solutions/functional-safety/mplab-development-ecosystem-for-functional-safety.

MISRA Check has been designed according to the Microchip Development Tools standard process. Microchip asserts certain Assumptions of Use (AoUs) to meet technical and functional safety requirements at the system level. The AoUs are described below. References to some of these AoUs can be found in other sections in this manual, where they are addressed as part of a specific topic being discussed.

It is the responsibility of the System Integrator to address all the AoUs listed in this manual and to ensure that the AoUs listed have been observed by every component or item, contributed to the application being analyzed by MISRA Check.

The System Integrator has two options:

  • Make sure each assumption is fulfilled
  • Disregard the assumption

In both cases, the System Integrator shall provide evidence of the fulfillment and/or a detailed explanation of why disregarding the assumption will not violate a safety requirement, or how the assumption has been sufficiently addressed in a different manner.

As indicated by the classification documents provided by Microchip along with the functional safety version of the compiler, the MISRA Check is classified TCL 1. This classification is based on the assumptions of use and use cases provided in the classification documents.

Note: MISRA Check has been designed according to the Microchip Development Tools standard process. Microchip asserts certain Assumptions of Use (AoUs) to meet technical and functional safety requirements at the system level. The AoUs are described below. References to some of these AoUs can be found in other sections in this manual, where they are addressed as part of a specific topic being discussed. The most important Assumption of Use is that MISRA Check must be cross-checked against another tool of the same type (e.g. This MISRA Check must be cross-checked with another, independent MISRA Check) or another method to increase confidence of the results presented.
Table 3-1. Degree of Obligation
Shall Binding
Should Recommendation
Assumption of Use Description
[AoU-01-MISRA] MISRA Check shall be cross-checked against another tool of the same type, or another method to increase confidence of the results presented.
[AoU-02-MISRA] MISRA Check shall only be used in conjunction with supported Functional Safety versions of the MPLAB XC compilers.
[AoU-03-MISRA] MISRA Check shall be used in conjunction with a bona fide Functional Safety process.
[AoU-04-MISRA] MISRA Check shall be used with a suitable version of the MPLAB X IDE v6.00 or higher on supported platforms as specified in MPLAB X IDE documentation
[AoU-05-MISRA] Users of MISRA Check shall possess a valid license.
[AoU-06-MISRA] MISRA Check shall only be used on supported Microchip microcontrollers, microprocessors and DSCs.
[AoU-07-MISRA] The MISRA Check shall be properly configured for the rules and files being checked to ensure the output reports are based on the interface used.
[AoU-08-MISRA] MISRA Check shall only use the Cppcheck tool shipped with the MPLAB X IDE v6.00 or higher.