1

假设如果我将任何逻辑表达式作为输入连同每个信号定义一起提供给工具,则工具应该能够生成MCDC真值表(在 中使用Avionics V&V)。如果可能,我们是否也可以实现时序和鲁棒性?

前任:

##输入工具

输入:

  Logical Expression: OUT = (C1 ||(C2 && C3 && (C4 || C5 || C6)))

工具的预期输出

 Truth Table:

  TC   C1 C2 C3 C4 C5 C6  INIT  **OUT**   
   1   T  F  T  T  F  F     F    **T**        
   1   F  F  T  T  F  F     T    **T**                                                          
   2   F  T  T  T  F  F     F    **T**                                                        
   2   F  T  F  T  F  F     T    **F**                                                          
   3   F  T  T  F  T  F     F    **T**                                                         
   3   F  T  T  F  F  F     T    **F**                                                          
   4   F  F  T  T  F  F     F    **F**                                                        
   5   F  T  T  F  F  T     F    **T**    
4

2 回答 2

1
  1. 为您的表达式生成一个真值表(在本例中为 2^6 例)。
  2. 从真值表中挑选适合 MCDC 的案例。让我们以你的表情为例。对于 C1:选择只有 C1 和 OUT 改变状态的情况(从 TRUE 到 FALSE);其他条件不改变状态。

看看这些用C#C++编写的工具。

于 2017-09-17T13:37:10.007 回答
0

是的,您可以创建一个工具来创建真值表并创建测试向量。我在 C++ 中正是这样做的。你可以在这里找到它:

MCDC

布尔表达式将被解析,为虚拟机编译和评估。这给出了一个真值表。Quine & McCluskey 用于生成冗余范式。

并且,该工具显示所有 MCDC 测试对,包括 Msking 和“Unique Cause+Masking”

于 2019-05-04T10:18:07.037 回答