田中太郎

スポンサーリンク
Systemverilog

Verilog defineマクロで「”」を使う

はじめに VerilogのDefineマクロでダブルクォーテーション「"」を使用します。 やり方 「`」バッククォートでエスケープできます。 `define DISPLAY(a) $display(`"a`"); サンプルコード modul...
Python

fontawesome Edgeで表示されるがIEでは表示されないときの対処法

はじめに Edge環境でFontawesomeが表示されるが、IEでは表示されないときの対処法です。 対処法 headタグに下記を追加します。なるべく最初に入れます。 <head> <meta http-equiv="X-UA-Compat...
Systemverilog

UVM driver/sequencerはマクロで作成しよう

はじめに UVMを久しぶりに書くと、Driver, Sequencerの書き方を忘れます。 なので、Defineマクロを使って簡単に作成できるようにしましょう。 マクロを作成する Sequencer uvm_sequnecerを継承したSe...
Systemverilog

parameter port listとparameterを宣言すると上書きできない SystemVerilog

はじめに VerilogではParameterは以下のように宣言できます。 parameter module sample1(); parameter A = 1; parameter B = 2; また、SystemVerilogではPa...
Systemverilog

class内のtask/functionはautomaticになる SystemVerilog

はじめに task/functionはデフォルトでstaticで宣言されるので注意が必要です。 しかし、LRM 11.9よりclass内のtask/functionはautomaticで宣言されます。 解説 sample1.sv まずは、普...
Systemverilog

inout ポートはwireでつなぐ SystemVerilog

はじめに Verilogは信号をその用途によってregかwireで宣言する必要があります。 代わってSystemVerilogにはlogicという便利な宣言方法があります。Verilogでreg/wireで宣言していた信号は「ほとんど」lo...
Systemverilog

$display RTLの階層を表示する Verilog

はじめに $displayなどで変数の値をログに表示することができますが、その他にも色々な値を表示できます。 Format %mを使用することで、現在の階層を取得することができます。 使い方 $display("%m"); サンプルコード ...
Python

現在のアクセス権に別なアクセス権を追加するPython

はじめに アクセス権を付与するのはos.chmod()で行えます。 しかし、現在あるアクセス権に対してWrite権限のみを追加するなどはできません。 そこで、アクセス権を追加するスクリプトを作成しました。 コード add_mod(<ファイル...
Python

ディレクトリの中身を別なディレクトリにコピー Python

はじめに ディレクトリはshutil.copytreeでコピーできますが、コピー先のディレクトリがすでに存在する場合は使えません。 やりたいこと work1/の下にディレクトリやファイルが格納されています。 それらをwork2/にすべてコピ...
Systemverilog

uvm_comparer uvm_object::compareの設定を変更する UVM

コマンドの説明 uvm_comparerはuvm_objectのMethodであるcompareの設定を変更できます。 使い方 uvm_object ob1; uvm_object ob2; uvm_comparer comp; initi...
スポンサーリンク