Systemverilog 【UVM】Register階層を作成する~AdapterでAgentと接続する~【#2】 前回のおさらい Register階層を作成しました。 UVMモデルを介してDUTのレジスタにアクセスするためにAdapterを作成します。 サンプルコード sample_sequence_item.svh ... 2022.03.31 SystemverilogUVM
Systemverilog 【UVM】Register階層を作成する~uvm_regでレジスタを管理する~【#1】 はじめに Register階層(Register Layer)を作成します。 UVMではレジスタをuvm_regを継承したクラスで定義します。 1レジスタごとに1クラスを作成して、uvm_reg_blockを継承したクラ... 2022.03.30 SystemverilogUVM
Systemverilog 【UVM】クロック生成モデル はじめに UVM環境でクロック生成モデルを作成します。 構成とサンプルコード UVMモデルの構成 Sequence_item clock_sequence_item.svh class clock_seque... 2022.03.20 SystemverilogUVM
Systemverilog 【SystemVerilog】UVMで検証環境を作成する~なるべく最小構成~【#8】 前回のおさらい Virtual SequenceとVirtual Sequencerを作成しました。 今回は、これまで作成したテストベンチをなるべく短いコードで再掲します。 なるべく最小構成 top.sv(... 2022.03.16 Systemverilog
Systemverilog 【SystemVerilog】UVMで検証環境を作成する~Virtual SequencerとVirtual Sequence~【#7】 前回のおさらい uvm_monitorを継承してMonitor階層を作成しました。 Virtual SequencerとVirtual Sequenceを作成する 複数の検証コンポーネントをテストベンチに組み込むと、Se... 2022.03.12 Systemverilog
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