SV 関連 URL virtual i/f
インタフェース関連
https://sites.google.com/site/playsystemverilog/others/interface
https://sites.google.com/site/playsystemverilog/others/interface
http://japanese.sugawara-systems.com/systemverilog/virtual_interface.htm
http://www.jeita-edatc.com/users_lib/systemdesignforum2007_docs/sdf2007_sv2.pdf
http://www.asic-world.com/systemverilog/interface.html
http://www.asic-world.com/systemverilog/interface8.html#Virtual_Interface
http://www.asic-world.com/systemverilog/interface9.html#Example_2_:_Virtual_Interface
http://www.asic-world.com/systemverilog/interface10.html#Example_3_:_Virtual_Interface
S V のURL いろいろ
http://www.asic-world.com/systemverilog/interface.html
http://www.project-veripage.com/interface_1.php
大学資料
http://www.ie.u-ryukyu.ac.jp/~wada/system11/SystemVerilog%20Interface.pdf
OVMやが日本語!
https://s3.amazonaws.com/ovmworld/files/userguides/OVMUG2.0Jrev01.pdf
https://s3.amazonaws.com/ovmworld/files/userguides/OVMUG2.0Jrev01.pdf
http://www.doulos.com/knowhow/sysverilog/tutorial/interfaces/
http://lsifrontend.blog100.fc2.com/blog-entry-72.html
-> つづきhttp://lsifrontend.blog100.fc2.com/blog-entry-64.html
http://d.hatena.ne.jp/goforit55/20110415/1302881610
http://qiita.com/tethys_seesaa/items/10cdcb57eadfe4767adf
http://japanese.sugawara-systems.com/systemverilog/veritak_system_verilog_tutorial_frame.htm
http://d.hatena.ne.jp/goforit55/20110509/1304957447
http://qiita.com/tethys_seesaa/items/2620f8b635bc351f6fbb
http://blogs.yahoo.co.jp/verification_engineer/62114843.html
http://www.altima.jp/products/software/mentor/sysveri1.html
http://www.jeita-edatc.com/users_lib/systemdesignforum2007_docs/sdf2007_sv2.pdf
http://japanese.sugawara-systems.com/systemverilog/virtual_interface.htm
https://sites.google.com/site/playsystemverilog/others/interface
http://lsifrontend.blog100.fc2.com/blog-entry-72.html
http://d.hatena.ne.jp/goforit55/20110509/1304957447
http://qiita.com/tethys_seesaa/items/2620f8b635bc351f6fbb
http://pasonatsutan.hatenadiary.jp/entry/2013/07/15/201803
http://blogs.yahoo.co.jp/verification_engineer/62114843.html
動画Virtual IF
http://wkx21c.org/v/tech/318190
http://pasonatsutan.hatenadiary.jp/entry/2013/07/10/113851
http://pasonatsutan.hatenadiary.jp/entry/2013/07/24/164453
http://pasonatsutan.hatenadiary.jp/entry/2013/07/17/174327
http://pasonatsutan.hatenadiary.jp/entry/2013/08/13/174532
http://pasonatsutan.hatenadiary.jp/entry/2013/07/25/223238
http://pasonatsutan.hatenadiary.jp/entry/2013/07/25/162714
http://www.kumikomi.net/archives/2009/07/socip_cyberworkbench.php?page=2
http://www.kumikomi.net/archives/2009/07/socip_cyberworkbench.php
http://www.kumikomi.net/archives/2012/03/ted_windows_embedded.php
http://lsifrontend.blog100.fc2.com/blog-category-20.html
http://www.systemcjapan.com/SCJ2013/aboutshuttensha.html
http://www.systemcjapan.com/SCJ2011/aboutshuttensha.html
http://blogs.yahoo.co.jp/sawaragikun/24436706.html
http://www.kumikomi.net/article/news/2003/03/11_01.php
試行中のもの
http://systemc.seesaa.net/category/13257510-2.html
参考
SV対訳表
http://www.jeita-edatc.com/users_lib/SystemC-SystemVerilogTranslation2007.pdf
→こういうの普段から持ち歩いてたら
どこ言ってもつかえるなぁ。
・concatinate 連接(っぽい意味だったなぁ)つづり調べてないなぁ(笑)
<機能カバレッジ関連>
IES?とVCSを比較した話ちょこっと
http://verif-systemverilog.seesaa.net/category/12633966-1.html
<別件>
SystemC
スライド:http://www.slideshare.net/kocha2012/systemc-tutorial
test14v3.pl
#!/usr/bin/perl
#インスタンス「(」無しには非対応
$i= 0;
while($line = <>){
$i=$i+1;
$line =~ s#\(# \(#;
$line =~ s#^\s*always.*##; #always line delete (応急処置)
$line =~ s#^\s*if\s*\(.*##; #if line delete (応急処置)
$line =~ s#^\s*else\s*.*##; #else line delete (応急処置)
if ( $line =~ m/^\s*module\s*([^ \t\n\r\f]+)\b/ ) {
$modulenext = 0;
printf ("%4d ", $i);
# print "module : ";
print "module , ";
print $line;
$modulename = $1; #()内をキャプチャして変数へ
} elsif ( $line =~ m/^\s*module\s*/ ) {
$modulenext = 1; # flag
} elsif ( $line =~ m/^\s*([^ \t\n\r\f]+)\s+([^ \t\n\r\f]+)\s*\(/ && $line !~ m/^\s*module/) {
$module_next = 0;
printf ("%4d ", $i);
# print "instance: ";
print "instance, ";
print "$modulename ,";
print $line;
} elsif ( ($modulenext == 1) && ($line =~ m/^\s*([^ \t\n\r\f]+)\s*/ ) ) {
printf ("%4d ", $i);
# print "module : ";
print "module , ";
print $line;
$modulename = $1; #()内をキャプチャして変数へ
$modulenext = 0; # clear flag
}
}
■
気になったニュース
●2014-10-14
http://itpro.nikkeibp.co.jp/atcl/news/14/101401346/?top_tl1
http://av.watch.impress.co.jp/docs/news/20141014_671130.html
http://av.watch.impress.co.jp/docs/news/20141009_670698.html
http://av.watch.impress.co.jp/docs/news/20141014_671206.html
http://av.watch.impress.co.jp/docs/news/20141014_671162.html
http://www.nikkei.com/article/DGXLASDG1403X_U4A011C1CR8000/?n_cid=TPRN0009
http://www.toshiba.co.jp/regza/function/10a/function04.html
改行モジュール対応1st(いいのできたかも?) test14.pl
改行モジュールに対応してみた!
test14.pl (改行モジュール対応v0.1版)
================================
#!usr/bin/env perl
$i= 0;
while($line = <>){
$i=$i+1;
$line =~ s#\(# \(#;
if ( $line =~ m/^\s*module\s*([^ \t\n\r\f]+)\b/ ) {
$modulenext = 0;
printf ("%4d ", $i);
print "module : ";
print $line;
$modulename = $1; #()内をキャプチャして変数へ
} elsif ( $line =~ m/^\s*module\s*/ ) {
$modulenext = 1; # flag
} elsif ( $line =~ m/^\s*([^ \t\n\r\f]+)\s+([^ \t\n\r\f]+)\s*\(/ && $line !~ m/^\s*module/) {
$module_next = 0;
printf ("%4d ", $i);
print "instance: ";
print "$modulename ,";
print $line;
} elsif ( ($modulenext == 1) && ($line =~ m/^\s*([^ \t\n\r\f]+)\s*/ ) ) {
printf ("%4d ", $i);
print "module : ";
print $line;
$modulename = $1; #()内をキャプチャして変数へ
$modulenext = 0; # clear flag
}
}
========================================
<実行結果>
shin@ubuntu:~/TEXToperation$ perl5.10.1 test14.pl test001.v
1 module : module HOGEMODULE ( // No space
16 instance: HOGEMODULE ,DUMMY Instance ();
18 instance: HOGEMODULE ,INST instance1 ( );
19 instance: HOGEMODULE ,INST instance2 ( );
20 instance: HOGEMODULE ,INST \instance3 ( );
21 instance: HOGEMODULE ,INST \insta/nce4 ( );
22 instance: HOGEMODULE ,INST \insta_nce5 ( );
23 instance: HOGEMODULE ,INST \insta7nce6 ( );
24 instance: HOGEMODULE ,INST insta.7nce7 ( );
29 instance: HOGEMODULE ,INST instance9 ( )
30 instance: HOGEMODULE , INST insta10 ( );
32 instance: HOGEMODULE ,INSTout inStance01 ( );
38 module : module HOGE2 ( // space x 1
46 module : module HOGE3 ( // tab x 1
48 instance: HOGE3 , INST instance1 ( );
49 instance: HOGE3 , INST instance2 ( );
50 instance: HOGE3 , INST \instance3 ( );
51 instance: HOGE3 , INST \insta/nce4 ( );
52 instance: HOGE3 , INST \insta_nce5 ( );
53 instance: HOGE3 , INST \insta7nce6 ( );
58 module : module HOGE4 ( // tab x 1 + space x 2
60 instance: HOGE4 , INST \insta/nce4 ( );
61 instance: HOGE4 , INST \insta_nce5 ( );
66 module : module HOGEreg001 (
69 instance: HOGEreg001 , INST \insta/nce4 ( );
70 instance: HOGEreg001 , INST \insta_nce5 ( );
74 module : HOGE5 ( // tab x 1 + space x 2
76 instance: HOGE5 , INST \insta/nce4 ( );
77 instance: HOGE5 , INST \insta_nce5 ( );
test001.v( v20140930new )
======================================
module HOGEMODULE ( // No space
input hoge ;
output hogege;
reg aaa ;
reg aaa ; // hoge hoge hoge
for ( i=0 ; i<0 ; i++ ) begin
end
DUMMY Instance ();
INST instance1 ( );
INST instance2( );
INST \instance3 ( );
INST \insta/nce4 ( );
INST \insta_nce5 ( );
INST \insta7nce6 ( );
INST insta.7nce7 ( );
INST
instance8 ( );
INST instance9 ( )
INST insta10 ( );
INSTout inStance01 ( );
endmodule
module HOGE2 ( // space x 1
);
endmodule
module HOGE3 ( // tab x 1
);
INST instance1 ( );
INST instance2( );
INST \instance3 ( );
INST \insta/nce4 ( );
INST \insta_nce5 ( );
INST \insta7nce6 ( );
endmodule
module HOGE4 ( // tab x 1 + space x 2
);
INST \insta/nce4 ( );
INST \insta_nce5 ( );
endmodule
module HOGEreg001 (
);
INST \insta/nce4 ( );
INST \insta_nce5 ( );
endmodule
module
HOGE5 ( // tab x 1 + space x 2
);
INST \insta/nce4 ( );
INST \insta_nce5 ( );
endmodule
#### v20140930new
======================================
数字をフォーマットにそって表示するには?(「0025」それとも「__25」?)
print でなく、
printf を使う。
例)
printf ("%04d:", $i);
→$i = 25 だったすると、
上記実行の結果表示されるのは、
0025:
では、4ケタはそのままで最初の「00」を表示しないようにするには?
答え)
printf ("%4d:", $i );
でいける。
25:
つまり %04d の
「0」を付けると"0"で空いた桁を埋め、
「0」を付けないと"半角空白"で桁を埋める
というようになっている模様。