[SystemVerilog] program構文のシミュレーションフェーズ

SystemVerilogの program については以前もこんなのありました。


program blockについてのメモ


ModelSim-ASEでは programは使えないのでほとんど書かないですが、
こんなブログ記事もありました。


Pinning down SystemVerilog program block - VerificationOnWeb (VoW)


ここでも、program については必要かどうかの議論もあると書かれています。
その上で、program を使う際のメリットというか役割について書かれています。


重要なことはスケジューリングが異なるということ


program は「Reactive」フェーズで行います。
※ LRM 4.4.2.6 Reactive events region参照


つまり、ブロッキング代入だと評価後に
program ブロック内の処理が行われます。


「えっ?このブログの記述って program内に代入(14行目)して、
$displayで表示(15行目)しているからシーケンシャルで見ると、
そのまんまじゃん! program関係ないじゃんか!」


って思ったそこの坊や!「ふっ 坊やだからさ」
ならば、moduleprogram を逆に書いてみるんだ!
その時には、椅子から転げ落ちないように気をつけて!

関連記事

コメントの投稿

非公開コメント

プロフィール

Kocha

Author:Kocha
なんでもチャレンジ!(^o^)/
E-mail
github:Kocha
イベントカレンダー

カレンダー
09 | 2017/10 | 11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -
カテゴリ
OVP (4)
最新記事
最新コメント
アーカイブ
リンク
Twitter
アクセス人数