html Javascriptでトグルスイッチを作る はじめに Javascriptでトグルスイッチを作成します。 トグルスイッチを作成する <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <meta http-eq... 2023.02.02 html
html Javascriptでじゃんけんゲームを作る はじめに Javascriptを使って簡素なじゃんけんゲームを作ります。 じゃんけんゲームを作る index.html <!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8... 2023.02.02 html
UVM uvm_phase 実行順序 UVM はじめに uvm_phaseの種類と、各フェーズがトップダウン(Test階層→Env階層→Agent階層)で実行されるかボトムアップ(Agent階層→Env階層→Test階層)で実行されるかを調べました。 uvm_phase uvm_pha... 2023.01.26 UVM
Systemverilog alwaysとalways_ffの違い はじめに Verilogではalwaysを使用してフロップフロップと組み合わせ回路の両方を作成しますが、 SystemVerilogではフリップフロップ用にalways_ff、組み合わせ回路用にalways_combが追加されています。 a... 2023.01.23 Systemverilog
Systemverilog randcase 重み付きランダムセレクタ SystemVerilog はじめに randcaseは重み付きのランダムセレクタを作成できます。 使い方 randcase w1 : x = 1; w2 : x = 2; endcase 上記は、x がw1/(w1 + w2) の確立で1, w2/(w1 + w2)... 2023.01.19 Systemverilog
Systemverilog 制約をON/OFFする constraint_mode SystemVerilog はじめに 同じランダム変数で複数パターンのconstraintを定義したいことがあります。 しかし、constraintが競合しているとrandomize()がFailします。そこで、constraint_modeを使用することで、使用しな... 2023.01.18 Systemverilog
Systemverilog 比較演算でワイルドカード =?=/!?= SystemVerilog はじめに SystemVerilog 3.1では比較演算でワイルドカードを使用できます。 =?=/!?=でワイルドカードを用いた比較演算を行えます。 =?=は右辺と左辺が等しいときに真、!?=は右辺と左辺が等しくないときに真です。 式ではx... 2023.01.18 Systemverilog
Linux function 関数を作成する zsh はじめに functionを使用することでzshスクリプトで関数を作成します。 使い方 function <関数名> (){ <処理内容> } または <関数名> (){ <処理内容> } functionはあってもなくても大丈夫です。 サ... 2023.01.14 Linux
Systemverilog always@*とalways_combの違い SystemVerilog はじめに always@*とalways_combは一見同じ動作をしそうですが、小さな違いがあります。 両者の違いについてまとめました。 always@*とalways_combの違い always@*はマルチドライブできる。always_... 2023.01.12 Systemverilog
Systemverilog SystemVerilog softでconstraintを上書きする はじめに rand変数で定義した変数はrandomizeで値が確定します。 withを付けることで、インラインで制約を付けることができますが、class内に宣言した制約とconflictするとrandomizeが失敗します。 softを使用... 2022.12.14 Systemverilog