2022-12

スポンサーリンク
SystemVerilog

assertionで使用するシステムタスク

システムタスク一覧 SystemVerilogでアサーションように用意されているシステムタスクです。 システムタスク説明$rose立ち上がりの判定$stable無変化の判定$fell立ち下がりの判定$past過去の信号値を参照...
AMBA

AMBA APB

AMBA APB AMBA APBはARMのバスプロトコルの一つです。 APB protoclの詳細は以下からもダウンロードできます。 信号 表の青色の信号は必須、緑色の信号はオプション(なくてもいい)です...
SystemVerilog

randomize 制約 with

randomize with classの中の変数をランダム生成する場合にrandomize()を実行します。randomize()の後にwithを追加し制約を記述することができます。 記述例 ランダマイズ実行時に制約と...
SystemVerilog

randomize 制約 implication(->) , if , solve

implication(->) 「->」は expressionが真であれば、constraint_setを満たす。偽ならdont careの場合に使用します。 expressionが真であればconstraint...
SystemVerilog

randomize 制約 unique

unique uniqueはランダム実行時に同じ値を割り振らないオペレータです。 記述例 3bitデータを10回ランダム生成しています。 class c_unique ; rand bit [2:0]...
SystemVerilog

randomize制約 dist

distオペレータはclass内の変数に対して、ランダム制約を付加する際に使用します。ランダムデータを一定の分布になるように発生させます。 constraint 制約名 { 制約を設定する変数 dist {分布条件} ; } ...
SystemVerilog

randomize 制約 inside

inside insideは指定した範囲でランダムを実行したい場合に使用します。 constraint 制約名 { 制約を設定する変数 inside {ランダマイズで生成されるデータの範囲を指定} ; } 記述例 ...
SystemVerilog

基本的な classの書き方

classの構成 一般的なclassの記述例を以下に示します。 classの定義はclass~endclassでくくります。 次に変数やメソッド(TASKやFUNCTION)を記述します。 変数の前にprotect...
SystemVerilog

配列のビット情報の収集

配列内の1の数をカウント $countonesは配列内の1の数を数えて返します。 記述例 8ビットの変数a00の1の値を8'b1010_1101 と設定した場合、1の数は5つあるので "5" を返します。 modu...
SystemVerilog

キューで使用できるMethod

sort キューに対してソートが実行できます。 以下、10,9,8,・・・とインデックスに値を入れたキューに対してsortを実行した例です。 module test () ; int q0[$] ,q1&#91...
スポンサーリンク
Copied title and URL