Verilog覚書
検証でverilogを使って比較をする時は「===」「!==」というのを使うといい。
というのも、verilogではZやXが入っているため普通に「==」や「!==」では想定している動作とは異なってパスしてしまう。
ZやXが入っていた場合にはエラーを出したいときに「===」「!==」を使えば出来る。
ただし「===」「!==」は論理合成には使えない。あくまで検証用の記述。
この辺りはverilogの良いところでもあり、悪いところでもある。検証で別の言語を使うのであれば間違えないのだろうけど。論理合成ツールを使ってエラーが出れば修正すればいいというスタンスでもいいのかもしれない。
あと検証で気を付けなければならないところは、不定値XとのANDやORをしたときに必ずしも不定値Xにならないところだろうか。