ブロッキング割り当てとノンブロッキング割り当てVerilogの違い
私がこのページを読んでいたのは、http://www.asic-world.com/verilog/verilog_one_day3.htmlで、次のものに出くわしたときです。 通常、フリップフロップをリセットする必要があるため、クロックが0から1(ポーズ)に移行するたびに、リセットがアサートされているかどうかを確認し(同期リセット)、通常のロジックを続行します。よく見ると、組み合わせロジックの場合、割り当てに「=」があり、順次ブロックには「<=」演算子があります。「=」は割り当てをブロックし、「<=」はブロックしない割り当てです。「=」は、begin / end内でコードを順番に実行しますが、ノンブロッキングの「<=」は並行して実行されます。 ブロッキングの割り当てが並列であるのに対し、ノンブロッキングの割り当ては順次であると確信していました。結局のところ、常にブロックの外側にあるassignステートメントでブロック割り当てを行うことができ、それらはすべて並行して実行されます。これは間違いですか、それともalwaysブロック内の動作は異なりますか?また、常にブロック内で動作が異なる場合、非ブロック割り当てを常時ブロック外で行うことはできますか?