Systemverilog VerilogでJSONフォーマットを読み込む はじめに VerilogでJSONフォーマットを読み込みます。 JsonのパースにはJSON11を使用します。JSON11はC++なので、VPIでVerilogとデータのやり取りを行います。 サンプルコード まずはCコードを作成します。JS... 2024.03.06 Systemverilog
C/C++ JSONフォーマットをパースする C++ はじめに json11を使用してJSONをC++で読み書きします。 サンプル 文字列をパースする JSONフォーマットの文字列をパースします。 sample1.cpp #include <iostream> #include <fstrea... 2024.03.04 C/C++
Linux Promptの表示を変更する zsh Prompt(プロンプト)の表示を変更します。かなりシンプルな設定を用意してます。 環境はzshです。 完成イメージ tanakaが2回あってわかりずらいですが、最初のtanakaがユーザー名、2番目がホスト名です。()で直前のコマンドの戻... 2024.03.04 Linux
Systemverilog VPIの計算速度 Verilog はじめに VPIを使うことで演算をC側で行うことができます。 計算回数や計算量によって実行時間がどうなるか気になったので試してみます。 実行時間の比較 VerilogとCで実行時間を比較します。演算は下記のような任意の値に足し算するだけのも... 2024.03.03 Systemverilog
Systemverilog VPIで乗算器を作成する Verilog はじめに VPIで2入力、1出力の乗算器を作成します。 環境はIcarus Verilogです。 作り方 乗算するCコードを作成します。 my_mult.cpp #include "vpi_user.h" // Task int my_mu... 2024.03.03 Systemverilog
Systemverilog VPIを使ってみる Verilog はじめに VPI(Verilog Procedural Interface)を試します。 環境はIcarus Verilogです。 Cコードの作成 vpi_user.hをインクルードしてHello Worldを表示するSystemタスクを作... 2024.02.25 Systemverilog
Linux bashでyamlファイルを読み込む はじめに jqとyqをインストールします。 sudo snap install jq sudo snap install yq ワンライナーで読み込み Yamlファイルを準備 data.yml data1: hoge data2: fuga... 2024.02.20 Linux
SystemC D-FFを作成する SystemC SystemCでD-FF(Dフリップフロップ)を作成します。 dff.cpp #include <systemc.h> SC_MODULE(DFF) { // ポート宣言 sc_in_clk clk; // クロック入力 sc_in<boo... 2023.12.29 SystemC
SystemC SC_MODULEでサンプル回路を作成する SystemC SystemCの勉強がてらSC_MODULEを使ったサンプルコードを作成しました。 簡単な回路で、Producerがデータを送信してConsumerでデータを受け取って標準出力させます。 #include <systemc.h> SC_MO... 2023.12.29 SystemC
SystemC LinuxでSystemCの環境を作成する はじめに Linux環境(CentOS7)でSystemC 3.0の環境を作成します。 gccが/usr/local/binにインストールされていること、bashを利用していること前提です。 手順 任意のディレクトリに移動してSystemC... 2023.12.29 SystemC