スポンサーリンク
Systemverilog

SystemVerilog Event変数を使ってみる ->

はじめに あるシーケンシャルブロックから別なメソッド・シーケンシャルブロックを起動したいときにevent変数が便利です。 宣言する方法は以下です。 event <変数名>; 下記のように使用します。 -><変数名>; サンプルコード センシ...
Systemverilog

SystemVerilog Interfaceを使用して回路を作成する modport

はじめに Interfaceのmodportの機能を使用して回路を作成してみます。 バスのプロトコルは、validがHighのとき、スレーブに設定したアドレスとaddrが等しいときのdataが有効になります。 サンプルコード tb.sv テ...
Systemverilog

SystemVerilog randとrandcの違い クラスのランダム変数

rand/randcの違い rand 変数の範囲すべてを網羅する前に同じ値が返ることもある。(一様分布) randc 変数の範囲すべてを網羅するまで同じ値は返らない。(ランダム循環) サンプルコード module top; class sa...
Systemverilog

SystemVerilog $left/$right/$low/$high/$size/$dimensions システムタスク

はじめに SystemVerilogのLRMを読んでいると配列に関する面白い?システムタスクがあったので紹介します。 $left 配列の左側 bit a; int b; initial begin b = $left(a); $displa...
Systemverilog

SystemVerilog defineマクロについて考える

はじめに defineマクロが思ったよりいろんな使い方ができたので、試してみました。 サンプル1 値を置換 `define DEF_INIT 2 always_ff @(posedge clk, negedge rst_n) if (!rs...
Python

Pythonの標準モジュールでテトリスを作成する

はじめに Pythonの勉強で、標準モジュールのみでテトリス(っぽいもの)を作成しました。 改版の余地はあるのですが、めんどくさいのでやらないかもしれません。 今回はコードだけ張ります。 作り方の解説は別な記事で紹介しようと思います。 仕様...
Systemverilog

uvm_config_dbについて考える

はじめに UVMを使っていると必ず出てくるuvm_config_db。 なんとなく、テストベンチでInterfaceをデータベースに登録して、クラスの中で呼び出すんだなぁと漠然と思っていました。 今回は様々な条件で使用してみて理解を深めます...
Python

Python ブロック図を生成するスクリプトを作成したい

はじめに Pythonでブロック図を作成したいです。 とりあえず、ブロック2つで作ってみました。 サンプルコード import matplotlib.pyplot as plt import matplotlib.patches as pa...
Python

Python Tkinter create_imageで画像が表示されないとき

はじめに 環境:Python 3.10.1 create_imageは、create_image(<水平中心位置>, <垂直中心位置>, image=<画像>) でCanvasに任意の画像を表示するメソッドです。 このとき、<画像>は、与え...
Python

Python Tkinter Canvas のサンプルコード

サンプルコード create_arc:円弧 import tkinter app = tkinter.Tk() app.title("App Title") arc = tkinter.Canvas( app, width=500, hei...
スポンサーリンク