8
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Verilator で Verilog コード入門.

Posted at

漢なら FPGA ですね!
Verilator を使うと Verilog コードを C/C++ に変換してシミュレーションしてれるので試してみましょう.

シミュレータセットアップ

verilator を入れます. ubuntu なら apt-get で入ります.

$ sudo apt-get install verilator

シミュレーションしてみる

Verilator のドキュメント

を参考にして簡単な入門コードを書いてみます.

$ cat our.v 
module our;
	initial begin $display("Hello World"); $finish; end
endmodule

our はなにやら表示するモジュールのようです.

$ cat sim_main.cpp 
#include "Vour.h"
#include "verilated.h"

int main(int argc, char **argv, char **env) {
  Verilated::commandArgs(argc, argv);
  Vour* top = new Vour;
  while (!Verilated::gotFinish()) { top->eval(); }
  delete top;
  exit(0);
}

Verilator が吐いた C/C++ コードを回してシミュレーションさせる C++ コードです.

Verilator でコードを吐いてみます.

$ verilator -Wall --cc our.v --exe sim_main.cpp

obj_dir ディレクトリが出来て一式そこにコードが生成されます. Make してシミュレーション実行バイナリを作ります.

$ cd obj_dir
$ make -f Vour.mk Vour
$ ./Vour
Hello World
- our.v:2: Verilog $finish

Cool! Verilog コードのシミュレーションに成功しました.

これで実 FPGA ボードがなくてもまずはいろいろ試していけそうですね!

8
7
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?