田中太郎

スポンサーリンク
Systemverilog

【SystemVerilog】UVMで検証環境を作成する~Virtual SequencerとVirtual Sequence~【#7】

前回のおさらい uvm_monitorを継承してMonitor階層を作成しました。 Virtual SequencerとVirtual Sequenceを作成する 複数の検証コンポーネントをテストベンチに組み込むと、Sequenceも増えて...
Systemverilog

【SystemVerilog】UVMで検証環境を作成する~MonitorでDUTを監視する~【#6】

前回のおさらい Virtual Interfaceを追加してDUTをテストベンチを接続しました。 Monitorを追加する 前回使用したVirtual Interfaceを使ってテストベンチにMonitor階層を追加します。 uvm_mon...
Systemverilog

【SystemVerilog】UVMで検証環境を作成する~Virtual InterfaceでクラスとDUTを接続する~【#5】

前回のおさらい Sequence_item/Sequencer/Driver/Sequenceを作成してテストベンチに組み込みました。 ここまではclass内で完結する話でした。 Virtual InterfaceでclassとDUTを接続...
Systemverilog

【SystemVerilog】UVMで検証環境を作成する~Sequence_item/Sequencer/Driver/Sequenceを追加する~【#4】

前回のおさらい テストベンチにAgent階層を追加しました。 sample_agent.svh class sample_agent extends uvm_agent; `uvm_component_utils(sample_agent)...
Systemverilog

【SystemVerilog】UVMで検証環境を作成する~Agentを追加する~【#3】

前回のおさらい テストベンチにEnv階層を追加しました sample_env.svh class sample_env extends uvm_env; `uvm_component_utils(sample_env) function n...
Systemverilog

【SystemVerilog】UVMで検証環境を作成する~Envを追加する~【#2】

前回のおさらい uvm_testを継承してsample_testのclassを作成しました。 top.sv module top; `include "uvm_macros.svh" // uvmのマクロを有効にする。「`」で始まるやつ。 ...
Systemverilog

【SystemVerilog】UVMで検証環境を作成する~Hello World~【#1】

UVMとは UVM(Universal Verification Methodology)は、ハードウェアの検証を効率化するためのフレームワークであり、IEEE 1800 SystemVerilogの一部として提供されています。 UVMのテ...
Systemverilog

【SystemVerilog】randomize()でクラスのrand変数を確定する

randomize() systemverilogではclass内の変数をランダム変数(rand)で宣言することができます。 randで宣言された変数は、classのbuilt-in methodであるrandomize()で確定されます。...
Systemverilog

【SystemVerilog】Constrained Randomを使用するテストベンチ【サンプルコード】

はじめに Constrained Randomの考え方を使ってテストベンチを作成します。 実装 では、実際にテストベンチを作成します。 まずは制約なしで作成します。 構成は以下の通りです。 DUTの仕様 in_validがHighのとき、d...
Python

【Python】CSVのデータの合計値をエクセルの対応する場所に書き込む

やりたいこと CSVで管理されたデータをエクセルファイルの対応する場所に書き込みます。 ユースケース CSVにNameごとにDataA-Cが管理されています。 その合計値を、エクセルファイルのNameの対応する場所に書き込みます。 サンプル...
スポンサーリンク