不具合解析手法2

24年間、不具合の相手をしているけれど、原因は、VHDLやC言語等のプログラムミス「バグ」がほとんど。

FPGAのプログラム(VHDL記述)が正しいが、誤動作するのが3回有った。
このときは、記述方法(回路)を変えたら、不具合現象が消えた。

だから、不具合が起こるべくして起っている、論理的に説明できるはずだ、と考えたほうが解決に近い。

Aという不具合現象が発生している。Aが発生するためには、Bが発生しなければならない。
Bが発生するためには、Cが発生しなければならない。
と論理的にさかのぼっていく。

でも、本人はCが発生するようには、プログラミングしたつもりはない。
Cが発生したら、LEDを点灯したり、PRINT文でコンソールに「C発生」メッセージを表示させるような仕掛けを作って、連続運転する。

LED点灯したり、メッセージが表示されたら、ゴールは近い。