スポンサーリンク
html

Javascriptでトグルスイッチを作る

はじめに Javascriptでトグルスイッチを作成します。 トグルスイッチを作成する <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <meta http-eq...
html

Javascriptでじゃんけんゲームを作る

はじめに Javascriptを使って簡素なじゃんけんゲームを作ります。 じゃんけんゲームを作る index.html <!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8...
UVM

uvm_phase 実行順序 UVM

はじめに uvm_phaseの種類と、各フェーズがトップダウン(Test階層→Env階層→Agent階層)で実行されるかボトムアップ(Agent階層→Env階層→Test階層)で実行されるかを調べました。 uvm_phase uvm_pha...
Systemverilog

alwaysとalways_ffの違い

はじめに Verilogではalwaysを使用してフロップフロップと組み合わせ回路の両方を作成しますが、 SystemVerilogではフリップフロップ用にalways_ff、組み合わせ回路用にalways_combが追加されています。 a...
Systemverilog

randcase 重み付きランダムセレクタ SystemVerilog

はじめに randcaseは重み付きのランダムセレクタを作成できます。 使い方 randcase w1 : x = 1; w2 : x = 2; endcase 上記は、x がw1/(w1 + w2) の確立で1, w2/(w1 + w2)...
Systemverilog

制約をON/OFFする constraint_mode SystemVerilog

はじめに 同じランダム変数で複数パターンのconstraintを定義したいことがあります。 しかし、constraintが競合しているとrandomize()がFailします。そこで、constraint_modeを使用することで、使用しな...
Systemverilog

比較演算でワイルドカード =?=/!?= SystemVerilog

はじめに SystemVerilog 3.1では比較演算でワイルドカードを使用できます。 =?=/!?=でワイルドカードを用いた比較演算を行えます。 =?=は右辺と左辺が等しいときに真、!?=は右辺と左辺が等しくないときに真です。 式ではx...
Linux

function 関数を作成する zsh

はじめに functionを使用することでzshスクリプトで関数を作成します。 使い方 function <関数名> (){ <処理内容> } または <関数名> (){ <処理内容> } functionはあってもなくても大丈夫です。 サ...
Systemverilog

always@*とalways_combの違い SystemVerilog

はじめに always@*とalways_combは一見同じ動作をしそうですが、小さな違いがあります。 両者の違いについてまとめました。 always@*とalways_combの違い always@*はマルチドライブできる。always_...
Systemverilog

SystemVerilog softでconstraintを上書きする

はじめに rand変数で定義した変数はrandomizeで値が確定します。 withを付けることで、インラインで制約を付けることができますが、class内に宣言した制約とconflictするとrandomizeが失敗します。 softを使用...
スポンサーリンク