Systemverilog 【SystemVerilog】UVMで検証環境を作成する~MonitorでDUTを監視する~【#6】 前回のおさらい Virtual Interfaceを追加してDUTをテストベンチを接続しました。 Monitorを追加する 前回使用したVirtual Interfaceを使ってテストベンチにMonitor階層を追加しま... 2022.03.08 Systemverilog
Systemverilog 【SystemVerilog】UVMで検証環境を作成する~Virtual InterfaceでクラスとDUTを接続する~【#5】 前回のおさらい Sequence_item/Sequencer/Driver/Sequenceを作成してテストベンチに組み込みました。 ここまではclass内で完結する話でした。 Virtual Interfaceでcl... 2022.03.08 Systemverilog
Systemverilog 【SystemVerilog】UVMで検証環境を作成する~Sequence_item/Sequencer/Driver/Sequenceを追加する~【#4】 前回のおさらい テストベンチにAgent階層を追加しました。 sample_agent.svh class sample_agent extends uvm_agent; `uvm_component_utils... 2022.03.06 Systemverilog
Systemverilog 【SystemVerilog】UVMで検証環境を作成する~Agentを追加する~【#3】 前回のおさらい テストベンチにEnv階層を追加しました sample_env.svh class sample_env extends uvm_env; `uvm_component_utils(sample_e... 2022.03.04 Systemverilog
Systemverilog 【SystemVerilog】UVMで検証環境を作成する~Envを追加する~【#2】 前回のおさらい uvm_testを継承してsample_testのclassを作成しました。 top.sv module top; `include "uvm_macros.svh" // ... 2022.03.03 Systemverilog
Systemverilog 【SystemVerilog】UVMで検証環境を作成する~Hello World~【#1】 Hello Worldからはじめる uvmで「Hello World」を表示させます。 top.sv module top; `include "uvm_macros.svh" //... 2022.03.01 Systemverilog
Systemverilog 【SystemVerilog】randomize()でクラスのrand変数を確定する randomize() systemverilogではclass内の変数をランダム変数(rand)で宣言することができます。 randで宣言された変数は、classのbuilt-in methodであるrandomize()で... 2022.02.28 Systemverilog
Systemverilog 【SystemVerilog】Constrained Randomを使用するテストベンチ【サンプルコード】 はじめに Constrained Randomの考え方を使ってテストベンチを作成します。 実装 では、実際にテストベンチを作成します。 まずは制約なしで作成します。 構成は以下の通りです。 DU... 2022.02.14 Systemverilog
Python 【Python】CSVのデータの合計値をエクセルの対応する場所に書き込む やりたいこと CSVで管理されたデータをエクセルファイルの対応する場所に書き込みます。 ユースケース CSVにNameごとにDataA-Cが管理されています。 その合計値を、エクセルファイルのNameの対応する場所... 2022.02.07 Python
Python 【Python】引数を別ファイルで管理する【importlib.import_module】 やりたいこと コマンドライン引数で毎回値を打つのがめんどくさいので、コンフィグファイルを用意して引数を管理します。 Pythonの標準モジュールimportlib.import_moduleを使用します。 サンプルコード... 2022.02.07 Python