Vengineerの妄想

人生を妄想しています。

emVMとTCP


H/W(FPGAボード)との接続は、SCE-MIとなっているのが一般的ですが、
emVMでは、ハードウェア側との接続をTCPを使って行うことができます。
TCPを使うときは、ハードウェア側がBluespec Simulatorあるいは、Verilog HDL Simulatorのときです。

SCE-MI I/F(SCE-MI link)とPCの間の通信をTCPで行っているようです。
このときは、当然、ソフトウェア側もTCP通信をするために必要な設定をする必要はありますが、
そこはbsv_scemi.hヘッダファイルで定義されている各クラスを使うことでいいので、
ユーザはTCP通信を意識しないですみます。

TCP通信をしているので、ソフトウェア側とハードウェア側はそれぞれ違うプロセスで実行されています。
最近のPCはマルチコアになっているので、特に問題ありませんが、
ちょっと前までのシングルコアのPCでは、オーバーヘッドがあるので速度的には不利でした。

検証、Verification、Bluespec