FMEA (Failure Modes and Effects Analysis)#
bitmanipulation FMEA
|
status: valid
security: NO
safety: ASIL_B
|
||||
Failure Mode List#
ID |
Failure Mode |
Applicability |
Rationale |
|---|---|---|---|
MF_01_01 |
message is not received (is a subset/more precise description of MF_01_05) |
yes |
If a bit manipulation request is not received there is also no return “ok”, this should be covered by the user. See Bitmanipulation No Return (comp_saf_fmea__bitmanipulation__no_return) |
MF_01_02 |
message received too late (only relevant if delay is a realistic fault) |
yes |
If a bit manipulation request is received too late, also the return is too late, this should be covered by the user. See Bitmanipulation Late Return (comp_saf_fmea__bitmanipulation__late_return) |
MF_01_03 |
message received too early (usually not a problem) |
no |
Do not see where this is a problem. |
MF_01_04 |
message not received correctly by all recipients (different messages or messages partly lost). Only relevant if the same message goes to multiple recipients. |
no |
No multiple recipients, one library per user. |
MF_01_05 |
message is corrupted |
yes |
Corruption of a message is not applicable in a function call, but a corrupt input (by wrong understanding of the user) of bit locations is. See Bitmanipulation Wrong Input (comp_saf_fmea__bitmanipulation__wrong_input) |
MF_01_06 |
message is not sent |
yes |
If bitmanipulation does not return a success status, this should be observed by the user. See Bitmanipulation No Return (comp_saf_fmea__bitmanipulation__no_return) |
MF_01_07 |
message is unintended sent |
no |
Error would be to return “Success” when there is no action done. Due to low complexity of the component this error is completely eliminated by testing. See also EX_01_01. |
CO_01_01 |
minimum constraint boundary is violated. |
yes |
Bitmanipulation Constraints (comp_saf_fmea__bitmanipulation__constraints) |
CO_01_02 |
maximum constraint boundary is violated, |
yes |
Bitmanipulation Constraints (comp_saf_fmea__bitmanipulation__constraints) |
EX_01_01 |
Process calculates wrong result(s) (is a subset/more precise description of MF_01_05 or MF_01_04). This failure mode is related to the analysis if e.g. internal safety mechanisms are required (level 2 function, plausibility check of the output, …) because of the size / complexity of the feature. |
no |
Due to low complexity of the component this error is completely eliminated by testing. Low complex architecture according to criteria in gd_chklst__arch_inspection_checklist ARC_03_03 and design complexity below numbers as in gd_req__impl_complexity_analysis |
EX_01_02 |
processing too slow (only relevant if timing is considered) |
no |
Bitmanipulation is not expected to be slow due to low functional content. |
EX_01_03 |
processing too fast (only relevant if timing is considered) |
no |
No problem seen. |
EX_01_04 |
loss of execution |
yes |
If bitmanipulation execution is lost, it does not return, this should be observed by the user. See Bitmanipulation No Return (comp_saf_fmea__bitmanipulation__no_return) |
EX_01_05 |
processing changes to arbitrary process |
no |
Not a bitmanipulation problem as it is a library and not a process. |
EX_01_06 |
processing is not complete (infinite loop) |
yes |
If bitmanipulation stalls, also the user process may stall, so this should be covered by external safety mechanism. See Bitmanipulation Late Return (comp_saf_fmea__bitmanipulation__late_return) |
FMEA#
For all identified applicable failure initiators, the FMEA is performed in the following section.
Bitmanipulation No Return
|
status: valid
|
||||
There is already an aou on platform level which states that a user has to use the return values, so the error mode of no return should be covered, but there is no explicit mention that a “success” return is needed. |
|||||
Bitmanipulation Late Return
|
status: valid
|
||||
There is already an aou on platform level which states that a user has to use program flow monitoring |
|||||
Bitmanipulation Constraints
|
status: valid
|
||||
Constraints are checked, see mitigation requirement. |
|||||
Bitmanipulation Wrong Input
|
status: valid
|
||||
Wrongly defined Enum values are not checked by Bitmanipulation component, the output of the action may be unexpected. So the user has to make sure this is done in a right way, covered by the linked AoU. |
|||||