|
設計が進み、新たに演算器が組み込まれることになった。演算結果を比較するテストプログラムも用意されていた。 全体をビルドしてシミュレーションを開始する。予定クロックより早く終わってしまった。あれ?めずらしい。普通なら新しくいじった所で暴走なりなんなりして停止条件に合わない止まり方をすることが多いのに。 原因は今回組み込んだ演算回路の、演算結果のコンペアエラーだった。設計者に早速みてもらう。すると、演算器のレイテンシと演算結果を受け取るタイミングが1サイクルずれていた。 これは問題だ、ということで関係者が集められた。シミュレーション担当としては現象を述べるだけで、焦点はなぜこのようなミスが起こったか、という所に移った。 ある担当者は演算器のタイミングを0,1,2,…と数え、別の担当者は1,2,3,…と数えていたらしい。しかしお互いの認識では「3τで作ってね」ということだった。で、互いの「3」と認識する所でデータの受け渡しをやったためコンペアエラーとなったのだ。 この場合、どちらの数え方が常識かとかは問題ではない。タイミングチャートなりホワイトボードを使った打ち合わせさえ行っておけば起こりえなかったミスだ。コミュニケーション不足がエラーを引き起こした。 今回の事例では、片方の設計者が必死になって「ボクのせいじゃない」と言っていたのが印象に残った。悪い印象だ。コミュニケーション不足によるミスは片方だけに問題があるとは言えない。 |
| << 前記事(2009/09/18) | ブログのトップへ | 後記事(2009/09/22) >> |
| タイトル (本文) | ブログ名/日時 |
|---|
| 内 容 | ニックネーム/日時 |
|---|
| << 前記事(2009/09/18) | ブログのトップへ | 後記事(2009/09/22) >> |