シミュレーション
Webpack ISEとModelSimのインストールマニュアル
(Webpack
ISEとModelSimのインストールマニュアルを作った。どっちもWebpack6.3i用で古いです)
論理シミュレーション時のバグ
(デルタ遅延があるので、モデルからの出力は遅延しておいたほうが良い)
Xilinx 社製FPGA を搭載したPCI
ボードのシミュレーション1
(Xilinx のツールISE6.1i に統合されているHDL Bencher
を使用したSDRAM制御回路の回路検証例)
Xilinx 社製FPGA を搭載したPCI
ボードのシミュレーション2
(シミュレーションモデルを使用した全体のシミュレーション)
コアジェネレータIP使用時のVHDLのModelSimシミュ
レーション
(コアジェネレータIP使用時にデフォルトでは、シミュレーションモデルがVerilogに
なっているので、VHDLに変更する必要がある)
ModelSimでの全体シミュレーション
(うちのボードのSDR SDRAM, PowerPCのシミュレーション波形)
DDR SDRAMシミュレーションモデル
(フリーのDDR SDRAMのシミュレーションモデルを置いてあるサイト)
DDR
SDRAMコントローラのシミュレーション(FMFライブラリを作る)
(Free Model
FoundryのMT46V16M16のVHDLで書かれたシミュレーションモデルを使用してDDR
SDRAMコントローラのシミュレーションをする。最初にライブラリをコンパイルする。キャプチャ図入りで説明)
DDR
SDRAMコントローラのシミュレーション1(コンパイルスクリプト)
(続き、プロジェクトを作成、コンパイルスクリプト(compile.do)を作って、コンパ
イルするまでの手順を示す。キャプチャ図入りで説明)
DDR
SDRAMコントローラのシミュレーション2(シミュレーションスクリプト)
(続き、Start
Simulationしてシミュレーションしてみよう。ModelSimのGUIを使いながら、それを参考にして便利なDOファイルを作っていく。シミュレーション波形を
確認する。キャプチャ図入りで説明)
Verilog2001版DDR
SDRAMコントローラーのModelSimシミュレーションまとめ1
(コンパイルまでのやり方をキャプチャ図入りで説明)
Verilog2001版DDR
SDRAMコントローラーのModelSimシミュレーションまとめ2
(Simulate、wave波形表示、特にVerilogを使用したときのステートマシンの
ステートの表示方法を解説)
Verilog2001版DDR SDRAMコントローラのバグ
(最 初のバグは、ontroller.v 724行目のendcaseの後に ;
を入れてしまったことだ。もう1つは write_data_module.v でグローバル変数 j を定義してその j を2つのalways @*
内で使用してしまったのでレース状態が発生してしまったらしい。)
Verilogシミュレータ (Veritak)
(Veritakシミュレータの紹介。ModelSim XE Starter
で1万行を超えるシミュレーションはVeritakの方が大幅に速い)
Veritak-Basic Version 3.30A
(Veritakの新しいバージョン、Veritak-Basic Version
3.30A(シェアウェア版)がVeritakのWebページに出ていることを教えてもらったので、早速ダウンロードしてインストール)
ISEのTest Bench
Waveformでの複数クロックを使用するISEシミュレーション
(SEでTest Bench
Waveformをウイザードで生成する際に、複数のクロックを使用したい場合があるが、ISE9.1iではMultiple
Clocksを使用出来るので、それを使用してISEシミュレーションをしてみた。 )
PCIバスなどのシミュレーション(VHDL)
(サスティンド・トライステートのシミュレーションでの表現方法)
VHDLの共有変数を使用したシミュレーション
(VHDLの共有変数を使ってテストベンチで下の階層の信号を見る)
キャラクタ・ディスプレイ・コントローラのシミュレーション
(Verilog
で作られたキャラクタ・ディスプレイ・コントローラの表示文字をシミュレーションによって確認する方法)
キャラクタ・ディスプレイ・コントローラのシミュレーション
(VHDL)
(キャラクタ・ディスプレイ・コントローラの表示文字をシミュレーションによって確認する方
法、VHDL版。こちらはPS/2キーボード・インターフェース回路とつながっている)
キャラクタ・ディスプレイ・コント
ローラのシミュレーション(Verilog, ModelSim編)
(Verilog版のキャラクタ・ディスプレイ・コントローラのシミュレーションを
ModelSimでやってみた)
ModelSim
の日本語表示
(ModelSimのテキストウインドウに日本語を表示する方法)
Veritak
でのWaveform Viewer内のSignal検索機能
(私が、とても欲しかった
VeritakでのWaveform
Viewer内のSignal検索機能が実装された。
私
は、今までModelSimでシミュレーションしていたので、Signalを可能な限り追加して、必要なSignalを検索で探していたのだが、
Veritakではその機能がなかった。ただし、Veritakでは波形はすべて保存されているので、Signalを追加しても再度シミュレーションする
必要がないという利点がある。)
Veritak
Version 3.51Bにドラック&ドロップ拡大機能
(Veritak Version 3.51Bにドラック&ドロップ拡大機能が実装された)
ModelSim
XEⅢ Starterでシミュレーションできない
(Cドライブがメモリカードリーダになっていて、ドライブがないとModelSim XEⅢ
Starterでシミュレーションできないようだ)
ModelSim
XEⅢ Starterでシミュレーションできました
(ライセンス申請用リンクのドライブシリアル番号パラメー
タ"&ds=????????"
を抜いたURLをアクセスするとドライブシリアル番号とイーサネットアドレスを選べて、イーサネットアドレスを選ぶとライセンスが通るという解決策で解決)
ModelSim
でタイミング・シミュレーション(Post-Routeシミュレーション)1
(ModelSim XE3
StarterでPost-Routeシミュレーション(タイミング・シミュレーション)をしてみた。Verilogのglbl.vは以前はコマンドラインで入れていた
が、ModelSimのGUIで入れることができた)
ModelSim
でタイミング・シミュレーション(Post-Routeシミュレーション)2
(”ModelSimでタイミング・シミュレーション(Post-Routeシミュレーショ
ン)1”の続き)
ModelSim
でVHDLのプロジェクトからVCDファイルを出力する方法(覚書)
(ModelSim SE
6.1eでVHDLのプロジェクトからVCDファイルを出力する方法の覚書。ModelSimのVCDコマンドを使うことにする。)
Veritak(Basic)Ver.
3.71CでVHDLファイルの変更点を表示
(VHDL
のプロジェクトをVHDLファイルを修正している際に、修正前と修正後でシミュレーションの波形にどんな違いがあるかを知りたいと思っている。それは
ModelSim単体でも出来るが、Veritak(Basic)Ver. 3.71を使うともっと分かりやすく表示することができる。)
ModelSim
でinit_signal_spyを使ってVHDLの他の階層のsignalをミラーする
(ModelSimでinit_signal_spyを使ってVHDLの他の階層の
signalをミラーする方法。シミュレーション時に、他の階層の信号を参照したい場合は多い)
Veritak
でステートマシンのステート表示
( Veritakのenum選択を使用して、ステートを表示することができた)
VeritaK
シミュレーション時のデバック方法(エディタ ドライバ記述に飛ぶ)
(Veritakの信号を右クリックで出てくるメニューの中の”エディタ ドライバ記述に飛
ぶ”の使い方。信号のドライバ記述のVerilogコードに飛ぶことができる)
VHDL
でModelSimのシミュレーションを終了する方法
(Verilog
でシミュレーションを終了させる方法としてはシステム・タスクの$finish があり、また停止させるシスタム・タスクとしては$stop
がある。VHDLでは、シミュレーションを停止または終了させる明確な文がないが、assert文を使用してシミュレーションを停止させることができる)
Veritak
とMSEの相性
VeritakとMSEの相性が悪いようなので、MSEにVeritakを登録してウィルス
チェックから除外した。
Verilator
でLint
VerilatorでLintしようと試みたが、うまく行かなかった。
Verilator
を試してみる1(C++モード1)
今回は、バージョン3.812のVerilatorをインストールして、シミュレーションして
みた。環境としてはCygwinを使用した。自分で以前、電子サイコロをチュートリアル用に作ったときのdice_stat_machine.v単体をシミュ
レーションしてみた。
Verilator
を試してみる2(C++モード2:モジュール内部信号の観測)
Verilator
を試してみる3(C++モード3:VCDファイルを出力)
今度はVCDファイルを出力する。”
Verilator
Manual”の”How do I generate waveforms (traces) in
C++?”を参考に、dsm_test.cppを修正した。そのソースを下に示す。
Verilator
を試してみる4(C++モード4:diceプロジェクト)
今度は、
ISE11.1i
のチュートリアルで
使用しているdiceをVerilogで書いたものをシミュレーションしてみた。つまり、今までは単一のVerilogファイルをVerilatorでシ
ミュレーションしていたが、今回は複数のVerilogファイルから成るプロジェクトをVerilatorでシミュレーションしてみた。
Verilatorを試して
みる5(SystemCモード1:SystemCのインストール)
前回は、VerilatorでC++のテストベンチでシミュレーションしたが、今度は
SystemCをインストールしてテストベンチをSystemCで書いてみようと思う。
Verilator
を試してみる6(SystemCモード2:dice_state_machine.v のテストベンチ)
今度は、自分で作ったVerilogファイルのdice_state_machine.v
のSystemCテストベンチを自分で書きなおしてみた。
Verilator
を試してみる7(SystemCモード3:dice_topプロジェクト)
Verilator
を試してみる8(SystemCモード4:CharDispCtrlerプロジェクト)
Verilator
を試してみる9(DPI-C:SystemVerilogからCの関数を呼び出す)
私はVerilator ManualのDPI
Sample記述をそのままにやっていた。下にそのDPI Sampleを引用する。
Xilinx
Simulation Library Compilation Wizard でQuesta 用のライブラリをコンパイル
Questa をISE14.1
のシミュレータとして使用するには、XilinxのプリミティブやCoregen
用のライブラリをコンパイルする必要がある。そのためにXilinxからSimulation Library Compilation Wizard
が提供されている。今回はこの使い方を説明用に書いておく。(Windows7 pro 64ビット版使用)
ISE14.6から
QuestaSim10.1bを使用する
ISE14.6からQuestaSim10.1bを使用するための覚書
ISEからのQuestaシミュレーションでMicron社のDDR3モデルを使用する
ISEからQuestaを使ったシミュレーションを行っている。その際に、Micron社のDDR3 Verilog HDL
model(モデルのダウンロードが始まるので注意)を使わせて頂いている。その場合の注意点を覚書で残しておく。
Cygwin で nvc
(VHDL compiler and simulator) を試してみた1
hiyuh さんに教えてもらった nvc (VHDL compiler and
simulator) を Cygwin にインストールして、試してみることにした。
Cygwin で nvc
(VHDL compiler and simulator) を試してみた2
”Writing a VHDL compiler”を参考にして、counter.vhd
と top.vhd を作ってやってみた。
コマンドを実行すると、コアダンプしました。orz
他のカテゴリでの関連する情報
DDR2 SDRAMコントローラのシミュレーション時のバグ
(DDR2
SDRAM(Micron MTH16M16-37E)のモデルは、モードレジスタの誤った設定値も検出しくれる優れもの)
VeritakでのDDR2 SDRAMコントローラのシミュレーション (初期化)
(
VeritakでDDR2 SDRAMコントローラの初期化部分のシミュレーション部分の説明。DDR2 SDRAM(Micron MTH16M16-37E)のモデルの表示出力も表示している)
VeritakでのDDR2 SDRAMコントローラのシミュレーション2(Read, Write)
(DDR2
SDRAMコントローラのRead, Writeのシミュレーションのテストベンチ(taskを含む)。全体の流れ。
VeritakでのDDR2 SDRAMコントローラのシミュレーション3(Write)
(DDR2 SDRAMコントローラの
Writeのシミュレーションの詳細)
VeritakでのDDR2 SDRAMコントローラのシミュレーション4(Read)
(DDR2 SDRAMコントローラの
Readのシミュレーションの詳細)
DDR
SDRAMコントローラの高度なシミュレーション
(たっくさんに書いていただたVerilog版DDR
SDRAMコントローラのテストベンチをバースト・アクセスが続くように書き直した。でも、もっとWriteとReadの間のレイテンシを短くしたいと思った)
DDR
SDRAMコントローラの高度なシミュレーション2
DDR
SDRAMコントローラの高度なシミュレーション3
Veritak
でのシミュレーション方法1(SuzakuV DDR2 SDRAMテスト回路を使用)
Veritak
でのシミュレーション方法2(SuzakuV DDR2 SDRAMテスト回路を使用)
Veritak
でのシミュレーション方法3(SuzakuV
DDR2 SDRAMテスト回路を使用)
ISim
でLintしてみた
Verilatorは設定が大変そうなので、それじゃ何でLintしたら良いのか?というと、
やはり、ISimじゃないだろうか?ということで、Lintにだけ使えるかやってみることにした。
Vivado
シミュレータのDPI-C その1
Vivado シミュレータでDPI (Direct Programming
Interface)をやってみることにした。
Vivado
シミュレータのDPI-C その2
前回は、DPI のexample の simple_import
をやってみた。今回は、simple_export をやってみよう。
Vivado
シミュレータでDPI-C を使用してZynq VIPを使う1
”Vivado シミュレータのDPI-C その1”と”Vivado
シミュレータのDPI-C その2”でVivado シミュレータでDPI-C を実行する方法をXilinx社のサンプルで見てきた。
それでは、Zynq VIP を使用するときにDPI-C を使用することができるかどうか?をやってみた。
Vivado
シミュレータでDPI-C を使用してZynq VIPを使う2
前回は、Vivado 2017.2 で Base Zynq
サンプル・プロジェクトを作成して、一度シミュレーションを実行し、テストベンチをSystemVerilog
ファイルに変更し、シミュレーション用のディレクトリにDPI-C を実行するC ファイルを追加した。今回は、コンパイル、エラボレートを行う。
Vivado
シミュレータでDPI-C を使用してZynq VIPを使う3
前回は、コンパイルとエラボレートを行った。今回はいよいよxsim
を走らせて、シミュレーション波形を出してみよう。
Vivado
シミュレータでDPI-C を使用してZynq VIPを使う4(Export Simulation)
昨日、「SystemVerilogによるテストベンチ実践会(2017夏)」で、
Venginner さんに、Export Simulation のことを聞いたので、自分でもやってみた。
AXI4-Lite
インターフェースの I2C Master Core をシミュレーションする
”OpenCores.org の I2C controller core
をシミュレーションする”で、OpenCores.org の WishBone バスの I2C controller core
をシミュレーションしたが、これを Xilinx の Zynq で使用するために AXI4-Lite インターフェースで使用したいと思いった。
そこで、”AXI4 Master Bus Functional Model を修正した”と”AXI4-Lite Master Bus
Functional Model を修正した”で AXI4-Lite の Master の BFM を用意した。
”WishBone バスと AXI4-Lite インターフェースを変換する wb2axi4ls_conv.v とトップの
i2cm_axi4ls.v”で、WishBone バスと AXI4-Lite インターフェースを変換する wb2axi4ls_conv.v
とトップの i2cm_axi4ls.v を用意した。
AXI4-Lite インターフェースの I2C Master Core をシミュレーションしてみよう。
Verilator
をもう一度試してみる1(インストール)
土曜日の Verilator 勉強会に参加して Verilator
を再びやってみようということで、 ryuz88 さんのスライドの”Verilator勉強会
2021/05/29”を参考にさせていただいて、Verilator の最新バージョンをインストールしてみた。
インストール成功。
Verilator
をもう一度試してみる2(C++ モード1)
前回は Verilator Ver. 4.200
をインストールすることができた。今回は、過去の FPGA
の部屋のブログ記事”Verilatorを試してみる1(C++モード1)”をもう一度やってみよう。
dice_state_machin.v を Verilator でシミュレーションすることができた。
Verilator
をもう一度試してみる3(C++モード3:VCDファイルを出力)
前回は、過去の FPGA
の部屋のブログ記事”Verilatorを試してみる1(C++モード1)”をもう一度やってみて成功した。今回は、”Verilatorを試してみる3(C++モード
3:VCDファイルを出力)”をやってみよう。
VCDファイルを出力して、Gtkwave で VCD ファイルを表示できた。
Verilator
をもう一度試してみる4(C++モード4:diceプロジェクト)
前回は、”Verilatorを試してみる3(C++モード3:VCDファイルを出力)”を
やって成功した。今回は、”Verilatorを試してみる4(C++モード4:diceプロジェクト)”をやってみるが、Verilog HDL
ファイルが離れたディレクトリにある場合についてやってみよう。
Verilator
をもう一度試してみる5(SystemCモード1:SystemCのインストール)
回は、dice プロジェクトの複数のファイルを Verilator
でシミュレーションした。今回は、”Verilatorを試してみる5(SystemCモード1:SystemCのインストール)”を参考にして、
SystemC 2.3.3 をインストールしてみよう。
Verilator
をもう一度試してみる6(SystemCモード1:SystemCのインストール2)
前回、SystemC-2.3.3
を自分のディレクトリの下にインストールした。しかし、やはり、 /usr/local
ディレクトリにインストールしたいということでインストールをやり直した。
Verilator
をもう一度試してみる7(再度 Verilator をインストール)
前回は、SystemC 2.3.3 を /usr/local
にインストールした。今回は、 Vengineer さんの”VerilatorとSystemC”に従って、Verilator を再度インストールする。
Verilator
をもう一度試してみる8(SystemCモード2:dice_state_machine.v のテストベンチ)
以前の
FPGAの部屋のブログ記事”Verilatorを試してみる6(SystemCモード2:dice_state_machine.v
のテストベンチ)”が動作するかどうか?を確かめてみよう。
Verilator
をもう一度試してみる9(multi_axim を試す1)
Verilator をやっていたのは、Vitis HLS での C/RTL
協調シミュレーションを短い時間で終了したいという欲求からだった。そこで、”DSF2015 C-6 でのVivado HLS
で生成したAXI4-Master IPの簡単な例について”で示した Vivado HLS の multi_axim を Verilator
で検証してみよう。
Verilator
をもう一度試してみる10(multi_axim を試す2)
Vivado HLS の multi_axim を Verilator
で検証してみようということで、前回は、 AXI4 Slave Bus Functional Model の axi_slave_BFM.v
を合成できるように修正した。今回は、Vivado 2020.2 の multi_axim_pj プロジェクトを作成して、multi_axim と
axi_slave_BFM を IP インテグレーターで接続しよう。
Verilator
をもう一度試してみる11(multi_axim を試す3)
Vivado HLS の multi_axim を Verilator
で検証してみようということで、前回は、 Vivado 2020.2 の multi_axim_pj プロジェクトを作成して、multi_axim と
axi_slave_BFM を IP インテグレーターで接続した。今回は、 Verilator を使用してシミュレーションを行う。
Verilator
をもう一度試してみる12(multi_axim を試す4)
Vivado HLS の multi_axim を Verilator
で検証してみようということで、前回は、Vivado 2020.2 の multi_axim_pj プロジェクトを作成して、multi_axim と
axi_slave_BFM を IP インテグレーターで接続した回路を Verilator
でシミュレーションして成功した。今回は、その回路をスタートさせて動作を見てみよう。
cocotb を試してみる1
テストベンチが Python で書かれた cocotb を試してみようと思う。
cocotb を知ったのは Adam Talyor さんの記事” MicroZed
Chronicles: Getting Started with
Cocotb”を読んだからだった。この記事を試してみようと思ったのだが、シミュレータに ModelSim を使っていた。ModelSim
は持っていないので、そこで本家?の”cocotb/cocotb”の README のコードを試してみることにした。
cocotb
を試してみる2(シミュレーション波形を表示)
Python で書いたコードをテストベンチとして使用できるテストベンチ環境の
cocotb を使ってみたいということで、前回は、cocotb
のインストールと最初のサンプルをやってみて成功した。今回は、前回実行したサンプルの波形を gtkwave で表示した。
cocotb
を試してみる3(examples/adder)
前回は、”cocotb を試してみる1”で実行したサンプルの波形を gtkwave
で表示した。今回は cocotb を git clone して、examples の adder をやってみよう。
自作回路を
cocotb でシミュレーションする1(Vitis HLS で multiplier を作成1)
cocotb でサンプルをやってきたが、自作回路を cocotb
でシミュレーションしてみようと思う。
今回は、Vitis HLS 2022.1 で乗算器(mulitplier)を作成する。なお、ZYBO Z7-20 用とした。この乗算器を
cocotb でシミュレーションしてみたい。
自作回路を cocotb
でシミュレーションする2(Vitis HLS で multiplier を作成2)
cocotb でサンプルをやってきたが、自作回路を cocotb
でシミュレーションしてみようということで、前回は、乗算器(mulitplier)のソースコードとテストベンチを貼って、Vitis HLS
2022.1 の multiplier プロジェクトを作成した。今回は、multiplier プロジェクトの C シミュレーション、C
コードの合成、C/RTL 協調シミュレーションを行った。
自作回路を cocotb
でシミュレーションする3(cocotb でシミュレーション)
前回は、multiplier プロジェクトの C シミュレーション、C
コードの合成、C/RTL 協調シミュレーションを行った。今回は、ファイルを用意して、make を行ったら PASS した。gtkwave
で波形を表示した。
cocotb 実行時の
python, make, iverilog のバージョン
職場の Ubuntu 18.04 のパソコンだと cocotb が make
できないのだが、自宅のパソコンの python, make, iverilog のバージョンを書いておく。
cocotbext-axi
を試してみる1(AXI Lite インターフェース)
以前 Python で書いたテスベンチでシミュレーションすることができる cocotb
を試してみたが、AXI インターフェースを cocotb でシミュレーションできる cocotbext-axi を試してみよう。最初は AXI
Lite インターフェースを試してみる。
cocotbext-axi
を試してみる3(AXI-Stream インターフェース)
cocotbext-axi を試して見たいということで、前回は、AXI
インターフェースを試した。今回は、AXI-Stream インターフェースを試してみる。
cocotbext-axi
を使って、Vitis HLS 2023.1 で作成した AXI4 Lite インターフェースの IP をシミュレーション1
cocotbext-axi を使って、Vitis HLS 2023.1 で作成した
AXI4 Lite インターフェースの IP をシミュレーションしたいということで、2 乗する AXI4 Lite インターフェースの
test_square_axil IP を Vitis HLS 2023.1 で作成した。
cocotbext-axi
を使って、Vitis HLS 2023.1 で作成した AXI4 Lite インターフェースの IP をシミュレーション2
cocotbext-axi を使って、Vitis HLS 2023.1 で作成した
AXI4 Lite インターフェースの IP をシミュレーションしたいということで、前回は、2 乗する AXI4 Lite インターフェースの
test_square_axil IP を Vitis HLS 2023.1 で作成した。今回は、前回、高位合成した Verilog HDL
ファイルを cocotbext-axi を使って、シミュレーションした。
cocotbext-axi
を使って、Vitis HLS 2023.1 で作成した AXI4, AXI4 Lite インターフェースの IP をシミュレーション1
cocotbext-axi を使って、Vitis HLS 2023.1 で作成した
AXI4 Lite インターフェースの IP をシミュレーションしたいということで、2 乗する AXI4 インターフェースの
test_square_axi IP を Vitis HLS 2023.1 で作成した。制御信号は AXI4 Lite
インターフェースに実装したので、cocotbext-axi を使って、AXI4, AXI4 Lite インターフェースをシミュレーションする予定だ。
cocotbext-axi
を使って、Vitis HLS 2023.1 で作成した AXI4, AXI4 Lite インターフェースの IP をシミュレーション2
cocotbext-axi を使って、Vitis HLS 2023.1 で作成した
AXI4 Lite インターフェースの IP をシミュレーションしたいということで、前回は、2 乗する AXI4 インターフェースの
test_square_axi IP を Vitis HLS 2023.1 で作成した。今回は、test_square_axi IP の
Verilog HDL ファイルを cocotbext-axi でシミュレーションを行った。
cocotbext-axi
を使って、Vitis HLS 2023.1 で作成した AXI4-Stream, AXI4, AXI4 Lite インターフェースの IP
をシミュレーション1
cocotbext-axi を使って、Vitis HLS 2023.1 で作成した
AXI4-Stream, AXI4, AXI4 Lite インターフェースの IP をシミュレーションしようということで、DMA Read して値を
2 乗し、 AXI4-Stream 出力を行う test_square_axis IP を作成した。
cocotbext-axi
を使って、Vitis HLS 2023.1 で作成した AXI4-Stream, AXI4, AXI4 Lite インターフェースの IP
をシミュレーション2
cocotbext-axi を使って、Vitis HLS 2023.1 で作成した
AXI4-Stream, AXI4, AXI4 Lite インターフェースの IP をシミュレーションしようということで、前回は、Vitis HLS
2023.1 で DMA Read して値を 2 乗し、 AXI4-Stream 出力を行う test_square_axis IP
を作成した。今回は、ネイティブ Ubuntu 18.04 のパソコンで、cocotbext-axi を試しているのだが、make
を実行するとアサーションがエラーになってしまった。アサーションをコメントアウトすると PASS
した。シミュレーション波形は問題ないので、アサーションの問題のようだ。
cocotbext-axi
を使って、Vitis HLS 2023.1 で作成した AXI4-Stream, AXI4, AXI4 Lite インターフェースの IP
をシミュレーション3
前回は、ネイティブ Ubuntu 18.04 のパソコンで、cocotbext-axi
を試しているのだが、make を実行するとアサーションがエラーになってしまった。アサーションをコメントアウトすると PASS
した。シミュレーション波形は問題ないので、アサーションの問題のようだった。今回は、Windows 11 の WSL2 上の Ubuntu 22.04
で test_square_axis を試してみたが、アサーションが通った。Ubuntu のバージョンによって動作が異なるのだろうか?
cocotbext-axi
を使って、Vitis HLS 2023.1 で作成した AXI4-Stream, AXI4 Lite インターフェースの IP をシミュレーション1
cocotbext-axi を使って、Vitis HLS 2023.1 で作成した IP
をシミュレーションしてきたが、最後に AXI4-Stream の Source 側が残っているので、それを cocotbext-axi
でシミュレーションしようということで、AXI4-Stream 入出力の 2 乗 IP の test_square_axis2 を Vitis HLS
2013.1 で作成した。
cocotbext-axi
を使って、Vitis HLS 2023.1 で作成した AXI4-Stream, AXI4 Lite インターフェースの IP をシミュレーション2
cocotbext-axi を使って、Vitis HLS 2023.1 で作成した IP
をシミュレーションしてきたが、最後に AXI4-Stream の Source 側が残っているので、それを cocotbext-axi
でシミュレーションしようということで、前回は、AXI4-Stream 入出力の 2 乗 IP の test_square_axis2 を Vitis
HLS 2013.1 で作成した。今回は、ネイティブ Ubuntu 18.04 のパソコンで、cocotbext-axi
を試しているのだが、make を実行するとアサーションがエラーになってしまった。アサーションをコメントアウトしてもアサーション・エラーだった
cocotbext-axi
を使って、Vitis HLS 2023.1 で作成した AXI4-Stream, AXI4 Lite インターフェースの IP をシミュレーション3
前回は、ネイティブ Ubuntu 18.04 のパソコンで、cocotbext-axi
を試しているのだが、make
を実行するとアサーションがエラーになってしまった。アサーションをコメントアウトしてもアサーション・エラーだった。今回は、Windows 11 の
WSL2 上の Ubuntu 22.04 で test_square_axis2 を試してみたが、アサーションが通った。Ubuntu
のバージョンによって動作が異なるようだ。
cocotbext-eth
を使ってみる1
cocotb の ethernet シミュレーション環境の cocotbext-eth
を使ってみようということで、cocotbext-eth の tests ディレクトリの下の eth_mac と gmii をやってみた。
cocotbext-eth
を使ってみる2
cocotb の ethernet シミュレーション環境の cocotbext-eth
を使ってみようということで、前回は、cocotbext-eth の tests ディレクトリの下の eth_mac と gmii
をやってみた。今回は、同じく tests ディレクトリの下の rgmmi_phy と xgmii をやってみよう。
cocotbext-pcie
を使ってみる1
cocotb の PCI-Express シミュレーション環境の
cocotbext-pcie を使ってみよう。最初に Windows 11 の WSL2 上の Ubuntu 22.04 で試してみたが、make
がエラーになってしまう。そこで、ネイティブ Ubuntu 18.04 でやってみたところ make が PASS した。
cocotbext-pcie
を使ってみる2
cocotb の PCI-Express シミュレーション環境の
cocotbext-pcie を使ってみようということで、前回は、Windows 11 の WSL2 上の Ubuntu 22.04
で試してみたが、make がエラーになってしまう。そこで、ネイティブ Ubuntu 18.04 でやってみたところ make が PASS
した。今回は、pcie_s10 と pcie_us をやってみた。
cocotbext-pcie
を使ってみる3
cocotb の PCI-Express シミュレーション環境の
cocotbext-pcie を使ってみようということで、前回は、pcie_s10 と pcie_us をやってみた。今回は、pcie_usp
をやってみよう。