スポンサーサイト

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

[SystemVerilog] モジュールの信号宣言スタイル(ANSI, NONANSI)

SystemVerilog LRM(1800-2012) の 「23.2.2.2 ANSI style list of port declarations」に色々な記述時にどうなるか書かれています。

  • LRM p668 exampleより
  • module mh_nonansi(x, y);
      input wire x;
      output tri0 y;
      ...
    endmodule
    
    module mh0 (wire x); // inout wire logic x
    
    module mh1 (integer x); // inout wire integer x
    
    module mh2 (inout integer x); // inout wire integer x
    
    module mh3 ([5:0] x); // inout wire logic [5:0] x
    
    module mh4 (var x); // ERROR: direction defaults to inout,
                        // which cannot be var
    
    module mh5 (input x); // input wire logic x
    
    module mh6 (input var x); // input var logic x
    
    module mh7 (input var integer x); // input var integer x
    
    module mh8 (output x); // output wire logic x
    
    module mh9 (output var x); // output var logic x
    
    module mh10(output signed [5:0] x); // output wire logic signed [5:0] x
    
    module mh11(output integer x); // output var integer x
    
    module mh12(ref [5:0] x); // ref var logic [5:0] x
    
    module mh13(ref x [5:0]); // ref var logic x [5:0]

default の信号は inout
基本は wire ですが、mh11の時だけ var になるのがなんか気持ち悪いですね。


現在は、どちらのスタイルが主流なのか分かりませんが、
個人的には、ANSIの書き方のほうが好きです。

関連記事

コメントの投稿

非公開コメント

プロフィール

Kocha

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

カレンダー
07 | 2017/08 | 09
- - 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ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。