Icarus Verilog, Verilog donanım tanımlama dilinin (HDL) derlenmesi ve simülasyonu için kullanılan açık kaynaklı bir araçtır. Verilog-95, Verilog-2001 ve SystemVerilog temel özelliklerini destekler; gtkwave ile birlikte kullanıldığında dalga formu görselleştirme de mümkündür. FPGA tasarımı öncesi işlevsel doğrulama ve dijital lojik simülasyonu için tercih edilir. Linux, macOS ve Windows üzerinde çalışır; tamamen ücretsiz ve açık kaynaklıdır (GPL).
Temel Özellikler
- Verilog-95, Verilog-2001 ve kısmi SystemVerilog desteği
- Komut satırı derleme ve simülasyon:
iverilogvevvp - VCD (Value Change Dump) çıktısı: gtkwave ile dalga formu görüntüleme
- Test bench yazımı ve simülasyon kontrolü
- Sentez hedeflemez; yalnızca simülasyon odaklıdır
- Bluespec, CHISEL gibi üst düzey HDL araçlarıyla uyumluluk
- CI/CD pipeline’larında otomatik doğrulama için uygun
- Açık kaynak; düzenli geliştirme ve hata düzeltmeleri
Icarus Verilog ile Verilog modülü nasıl simüle edilir?
Terminalde önce derleme yapın: iverilog -o simülasyon modül.v testbench.v. Ardından simülasyonu çalıştırın: vvp simülasyon. Test bench’inize $dumpfile("dalga.vcd"); $dumpvars(0, modul_adi); satırlarını ekleyerek VCD dosyası oluşturun. Dalga formunu görselleştirmek için gtkwave dalga.vcd komutunu kullanın. Sözdizimi hatalarını iverilog -g2012 (SystemVerilog) veya -g2001 modu ile kontrol edin.
Icarus Verilog alternatifleri
Verilator, Icarus Verilog’dan çok daha hızlı simülasyon sunan; Verilog/SystemVerilog’u C++ veya SystemC’ye dönüştürerek yüksek performanslı simülasyon yapan açık kaynaklı araçtır.
GHDL, Verilog yerine VHDL dilini destekleyen açık kaynaklı simülatör ve analizördür; benzer komut satırı iş akışı sunar.
ModelSim, Icarus Verilog’dan çok daha kapsamlı debug araçları ve GUI ile ticari FPGA tasarım ekibi için kullanılan simülatördür.
- Hızlı Verilog simülasyonu
- Açık kaynak (GPL-2.0)
- Yaygın kullanım
- GTKWave entegrasyonu
- IEEE standardı uyumlu
- CLI tabanlı
- GUI yok
- Türkçe dil desteği yok
İşletim Sistemi: Windows 7/10/11, macOS, Linux
RAM: 256 MB
Disk: 100 MB