スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[読書会][案内] 本日22:30〜 SystemVerilog読書会やります。

本日22:30〜 Lingr:SystemVerilog-JP にて
第三回目となる SystemVerilog読書会を行います。


今回読む章は「5. Lexical conventions」です。

1回目、2回目の概要についてはこちらに記載しています。

意外なことがわかるかも!

規格を読むということで、知らないことや気にしていなかったこと
を知れる機会になるかと思います。
そして、実業務でハマって問題はこういう原因だったのかー とか。
もしくは、こういう解決方法が見つかるかも。


また他のエンジニアの方と話(チャットですが。)が出来る機会です。
ROMで構いませんので、気軽にご参加ください。


余談:実験シミュレーション

一回目、二回目に話に挙がったやつをシミュレーションしてたりするので、
こちらのほうにも公開します。


bit型に logic型を代入した際の動作

  • サンプルコード
  •  1|module testbench;
     2|
     3|  bit b_hoge;
     4|  logic l_hoge;
     5|
     6|  initial begin 
     7|    l_hoge = 'Z;
     8|    b_hoge = l_hoge;
     9|    $display("logic:", l_hoge);
    10|    $display("bit:", b_hoge);
    11|    l_hoge = 'X;
    12|    b_hoge = l_hoge;
    13|    $display("logic:", l_hoge);
    14|    $display("bit:%d", b_hoge);
    15|    l_hoge = '1;
    16|    b_hoge = l_hoge;
    17|    $display("logic:", l_hoge);
    18|    $display("bit:%d", b_hoge);
    19|    l_hoge = '0;
    20|    b_hoge = l_hoge;
    21|    $display("logic:", l_hoge);
    22|    $display("bit:%d", b_hoge);
    23|  end 
    24|
    25|endmodule
  • 実行結果
  • # logic:z
    # bit:0
    # logic:x
    # bit:0
    # logic:1
    # bit:1
    # logic:0
    # bit:0
    

time precisionの計算の話

  • サンプルコード
  •  1|module testbench;
     2|
     3|  initial begin
     4|    #10; $display("Time:%4t", $time);
     5|    #(1.1+0.4); $display("Time:%4t", $time);  //(1.5)
     6|    #(1.1-0.4); $display("Time:%4t", $time);  //(0.7)
     7|    #(11.1*0.5); $display("Time:%4t", $time); //(5.55)
     8|  end
     9|
    10|endmodule
  • 実行結果
  • # run -all 
    # Time:  10
    # Time:  12
    # Time:  13
    # Time:  19
    #  quit 
    

Race conditionsの話

  • サンプルコード
  •  1|module testbench;
     2|  bit p, q;
     3|
     4|  assign p = q;
     5|  initial begin
     6|      q = 1;
     7|      #1 q = 0;
     8|      $display(p);
     9|  end
    10|
    11|endmodule
  • 実行結果
  • こちらは規格に、0 or 1どちらでも良い旨が記載されているので、
    シミュレータ依存になります。

    # run -all 
    # 1
    #  quit 
    
関連記事

コメントの投稿

非公開コメント

プロフィール

Kocha

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

カレンダー
04 | 2017/05 | 06
- 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
アクセス人数
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。