Vengineerの戯言

人生は短いけど、長いです。人生を楽しみましょう!

Esperanto TechnologiesのDromajoは、RISC-V RV64GC emulator for RTL co-simulation

@Vengineerの戯言 : Twitter
SystemVerilogの世界へようこそすべては、SystemC v0.9公開から始まった 

昨日のブログでは、「RISC-V Day Tokyo 2020 : Esperanto Technologiesの講演では、SynopsysのZebu4を8台利用」について書きましたが、

今日は、Dromajo について。講演ビデオの29分ぐらいからの下記のスライド

「Benefits of Our Methodology」

一番下に、

「We released Dromajo, our RISC-V RV64GC emulator for RTL co-simulation, as an open-source project through Chips Alliance」

とあります。

f:id:Vengineer:20201107105810p:plain

 

Google君に聞いてみたら、出てきました。

github.com

README.md に、

Functional verification is key to have a strong RISC-V ecosystem. Esperanto is releasing Dromajo to help the RISC-V community. Dromajo is the Esperanto translation for an emu bird. It is a RISC-V RV64GC emulator designed for RTL co-simulation. This is the emulator used for cosimulation inside Esperanto, but it is designed with a simple API that can be leveraged to other RTL RISC-V cores.

 とあります。RISC-V RV64GC emulator と RTL co-simulationができると。

 

このツールは、TinyEMUをベースにしているっぽい。TinyEMUの開発者って、QEMUFFMPEGを開発している、Fabrice Bellard さんのようです。 

 

ソースコードを眺めていてわかったのは、

UARTは、Synopsys社のDesign Wareを利用しているっぽい。

PCI もある。

FileSysetm もある。

下記の C++ I/O Models に、入っているものらしい。

f:id:Vengineer:20201107104632p:plain

 

このファイルでは、tun を使ったネットワークのサポートしているっぽい。

 

いろいろと調べたが、RTLとのCo-Simulationって、どうするのか?わかりません。