スポンサーリンク
Systemverilog

SystemVerilog|【Queue】キューについて考える

田中太郎キューのmethod(組み込みfunction/task)についてまとめますQueueのmethod<queue_type>は、定義したキューの型です例)int q = {1, 2, 3, 4}; // 左の場合、<queue_ty...
Systemverilog

SystemVerilog|【enum】列挙型について考える

田中太郎enumのmethod(組み込みfunction/task)ついてまとめますenumのmethodmethod 内容引数戻り値a.first()aを定義するenumの最初の値を返すなしenuma.last()aを定義するenumの最...
Systemverilog

SystemVerilog|【string】文字列操作について考える

田中太郎stringのmethod(組み込みfunction/task) についてまとめますstring型のmethodmethod 内容引数戻り値a.len()aの長さを返すなしinta.putc(<位置>, <文字>)aの<位置>と<文...
Systemverilog

SystemVerilog|パラレルシリアル変換回路

田中太郎パラシリ変換回路を作りますサンプルコードinitの立ち上がりで入力されたパラレルデータをシリアルデータに変換しますsample.svmodule sample #( parameter BW = 10)( input clk, in...
Systemverilog

SystemVerilog|カウンタ回路を作成する

田中太郎3ビットカウンタを作成します仕様リセットで初期化して1クロックごとに1カウントアップしますサンプルコードサンプルコードですsample.svmodule sample #( parameter BW = 3)( input clk,...
Systemverilog

SystemVerilog|classでモニタを作成する

田中太郎クラスを使ってモニタを作成しますはじめにclassでモニタを作成するとextendsで継承できるので流用性が高くなります今回はベースとなるシンプルなモニタクラスを作成します構成インターフェース、モニタ、テストベンチから構成されていま...
Systemverilog

SystemVerilog|interfaceについて考える

田中太郎interfaceの使い方について考えますサンプルコードinterfaceを使用したサンプルコードですこのあとに解説がありますsample1.svinterface i_dut_t; // interfaceを定義 logic da...
Systemverilog

SystemVerilog|parameterで型を上書きする

田中太郎parameterでビット幅や定数を上位階層で変更するのは一般的ですがデータ型も変更できますサンプルコードまずはparameterを上書きしないでみますmodule tb; bit clk = 0; always #5 clk = ...
Systemverilog

SystemVerilog|bindのparameterについて考える

田中太郎bindのparameterを使用します使い方bind <A> <B> #( .<Bのパラメータ>(値)) <bind名> ( .<Bのポート>(<Aのポート>),);サンプルコード以下のコードは、リセット解除されるとオール1を出力...
Systemverilog

SystemVerilog|bindについて考える

田中太郎モニタやチェッカをテストベンチを接続するとき、しばしばbindを使用しますbindの使い方について考えていきますサンプルコードテストベンチ、モニタ、DUTから構成されていますDUTとモニタをテストベンチでバインドしていますmodul...
スポンサーリンク