qshinoの日記

Powershell関係と徒然なこと

HDL

vcs save and restore

HDL

save and restore vcsでsave, restore を使い、uvmシミュレーションの初期化部分実行後にsave, その他の試験をrestore 後に実行する。 実行イメージ # build vcs -sverilog -ntb_opts uvm a.sv -debug # init and save ./simv +UVM_TESTNAME=general -ucli -…

vmc ip sim model

HDL

vmc ref https://www.systemverilog.io/vmc-model

vcs vpdfiles

HDL

vcs vpdfile control dedign_1がvpd出力モジュール・インスタンス、ネットやレジ指定も可能。但し、階層指定も必要? `ifdef comppostprocess initial if ($test$plusargs("runpostprocess")) begin $vcdpluson(0,design_1); $vcdplustraceon(design_1); $vc…

uvm_testname

HDL

初めに UVMでは一つのモデルで複数の試験を可能にするため、simulatorからモデルに試験名を渡す事ができる。 一般的にmodel側でrun_test() を実行する際の引数=試験名をsimulator の+UVM_TSTNAME=試験名 オプションで渡す。 以下は以下はサンプルを示す。 uv…

python ディレクトリを再帰的に取得

HDL

ディレクトリツリーを表示 import glob,os def tree( base ): if base[-1] == '/': base = base[:-2] for f in glob.glob(base+'/**', recursive=True): if os.path.isdir(f): print(f) # main tree( '.' ) glob(pattern, recursive=True)のpattern が**の場…

SystemVerilig DPI BFM

HDL

DPI BFM DPI を使ったSVとBFMのCoSimulation。 参照 http://www.kumikomi.net/archives/2009/12/_1systemverilogdpi-c.php?page=2

SystemVerilog配列

HDL

SystemVerilog 配列 SystemVerilog 配列は4種類。 静的配列 動的配列 queue 連想配列 コード例 queueと連想配列使用例。byte型データのメモリ。 // mem.sv module mem; // Variables byte m[int unsigned]; // 連想配列 int unsigned q[$]; // queue // func…

UVM

HDL

UVM [1] UVMマニュアル、実装 https://www.accellera.org/downloads/standards/uvm [2] modelsim with UVM https://eda-playground.readthedocs.io/en/latest/modelsim-uvm.html [3] http://www.artgraphics.co.jp/PublicDownloads/Lecture/ET2018_UVM_Lectu…

verilog DPI

HDL

SystemVerilog DPI 目次 DPIとは 簡単な例 試験環境 それぞれのDPI modelsim data to vcd dile http://www.kumikomi.net/archives/2009/12/_1systemverilogdpi-c.php?page=2 DPIとは DPIはDirect Program Interface. SystemVerilog IEEE 1800-2005で "DPI-C"…