Menu
Coddy logo textTech

Online Verilog Compiler

Kod parçacıklarını yazın, çalıştırın ve paylaşın — kurulum gerekmez.

main.v
Çıktıyı burada görmek için Çalıştır'a tıklayın.
PlusargsSimülatöre iletilen çalışma zamanı parametreleri — testbench'inizde $value$plusargs veya $test$plusargs ile okuyun.
AnahtarDeğer

Verilog HDL'yi tarayıcıda yazın, derleyin ve simüle edin

Ücretsiz, online bir Verilog compiler ve simülatörü. Verilog veya SystemVerilog modülleri yazın, bir testbench kurun, Run'a basın; stdout çıktısını ve oluşturulan VCD dalga formunu görün. Kurulum yok, Vivado yok, Quartus yok, hazırlanacak araç zinciri yok. Editör, saatli bir counter testbench'iyle açılır; saniyeler içinde düzenleyip çalıştırabilirsiniz.

Kod, Icarus Verilog (iverilog) ile derlenir ve izole bir konteyner içinde vvp altında çalışır; böylece gerçek Verilog HDL semantiğini elde edersiniz — saatli always blokları, bloklamayan atamalar, hiyerarşik modül örneklemeleri, $display, $finish. Testbench'inize $dumpfile ve $dumpvars ekleyin; Dalga formu sekmesi tek bitlik sinyalleri ve çok bitlik veri yollarını sürüklenebilir bir imleç, geçişler ve sinyal başına değer rozetleriyle gösterir. Plusargs (+KEY=VALUE / +FLAG) testbench'inize $value$plusargs ve $test$plusargs üzerinden akar; böylece saat periyodunu, çalışma süresini ve özellik bayraklarını kaynağı düzenlemeden tarayabilirsiniz.

Bu Verilog compiler'ı neden kullanışlı?

  • Anında derleme ve simülasyon — Verilog HDL yazın, Çalıştır'a basın, standart çıktıyı ve VCD dalga formlarını saniyeler içinde görün.
  • Verilog ve SystemVerilog için VS Code ile aynı editör motoruyla sözdizimi vurgulama, module/endmodule kapsamı ve anahtar kelime otomatik tamamlama.
  • Yerleşik dalga formu görüntüleyici: testbench'inizden $dumpfile + $dumpvars çıktısı verin; Dalga formu sekmesi sinyalleri, veriyollarını, geçişleri ve sinyal başına değer etiketleri olan hareketli bir imleci gösterir.
  • Testbench parametreleri için plusargs paneli: +CYCLES, +PERIOD, +VERBOSE değerlerini $value$plusargs / $test$plusargs ile aktarın, kaynağa dokunmadan yeniden çalıştırın.

Verilog playground'da neler yapabilirsin

  • Birleşik mantık — toplayıcılar, multipleksörler, ALU'lar — bir testbench içinde $display kontrolleriyle ve anlık geri bildirimle bağlanır.
  • Saatli ardışık tasarımlar — sayaçlar, kaydırma kayıtçıları, always @(posedge clk) ile sürülen sonlu durum makineleri; sinyal geçişlerini incelemek için VCD dalga formlarıyla birlikte.
  • Parametre taramaları: iverilog/vvp komut satırında yapacağınız gibi, çalıştırmalar arasında davranışı değiştirmek için +CYCLES, +PERIOD veya +VERBOSE plusarg'larını geçirin.

Online Verilog compiler SSS

Verilog nedir?
Verilog, dijital devreleri modellemek ve simüle etmek için kullanılan bir donanım tanımlama dilidir (HDL); basit birleşik kapılardan tam işlemcilere kadar her şeyi kapsar. Modülleri, kabloları ve kayıtçıları kodda tanımlar, bir Verilog compiler ile derler ve davranışı doğrulamak için bir testbench çalıştırırsınız. SystemVerilog ise Verilog'un üst kümesidir ve doğrulama özellikleri ekler. Playground her ikisini de kabul ediyor.
Online Verilog compiler ücretsiz mi?
Evet, Verilog derleyicisi ve simülatörü ücretsiz. Kayıt yok, Vivado ya da Quartus lisansı yok, kurulacak araç zinciri de yok — bir modül yazın ve Run'a basın.
Icarus Verilog veya başka bir EDA aracı kurmam gerekiyor mu?
Hayır. Kodunuz iverilog ile derlenir ve sunucudaki izole bir konteynerde vvp altında çalışır. Siz Verilog kaynağını yazıp Çalıştır'a basarsınız; gerisini derleyici ve simülatör halleder.
Verilog kodumun dalga formlarını nasıl görürüm?
Testbench'inizdeki bir initial bloğunda $dumpfile("dump.vcd") ve $dumpvars(0, modul_adin) çağırın. Run'dan sonra Waveform sekmesi sinyalleri çizer — bir izin üzerinde herhangi bir yere tıklayıp imleç bırakın ve o andaki sinyal başına değerleri okuyun.
Plusargs ile Verilog testbench nasıl yazılır?
Plusargs panelinde satırlar ekleyin (örneğin CYCLES=10, VERBOSE); bunlar simülatöre komut satırında +CYCLES=10 +VERBOSE olarak iletilir. Testbench'inizde tamsayı değerler için $value$plusargs("CYCLES=%d", n), boolean bayraklar için $test$plusargs("VERBOSE") ile okuyun. Varsayılan başlangıç kodu her iki kalıbı da gösteriyor.