a;wire型の変数(信号)は、always文の中で値を代入(<=)することはできません。type)で宣言します。a;reg型の変数(信号)は、assign文の中で値を代入することはできません。type)で宣言します。a;左辺と右辺の変数(信号)のビット幅が異なります。(1)(対策)左辺と右辺のビット幅をあわせます。endendmodulebeginとendの対応がとれていません。「ここにくるべきendがないよ」という類のエラーメッセージのことが多い。begin-endの対応をそろえる。それを見つけやすくするためにも、ちゃんとインデントをしたほうがよい。clkを使った記述をすると、論理合成時に同期式回路であると判定され、それにあわせた回路(D-FFを使った回路)が生成される。このようにQuartusIIでは、HDL記述から回路を推測することを行ってくれる(しまう)が、この例の記述では、clkとrstのどちらがクロックでどちらがリセットかが区別できず、見かけ以上clkとrstの両者の立ち上がりでxが変化するため、どちらもクロック信号に見えてしまう。aもあるが、これが使われていない。これがリセット信号のように使われていればこのエラーは出ない。明示的に同期回路の記述をする。