Ana içeriğe geç

Komut Satırı Girdisi

· loading · loading · · ·
HDL Verilog HDL
Axolot Logic
Yazar
Axolot Logic
Sayısal Tasarım Mühendisi
Table of Contents
Verilog HDL Serisi - This article is part of a series.
Part 20: This Article

📥 Command-Line Input in Verilog
#

Verilog testbenchlerinde komut satırından değer almak, simülasyonu esnek ve parametreli hale getirmenin yaygın bir yoludur. Bu özellik sayesinde aynı testbench’i farklı senaryolarla çalıştırabilirsiniz — örneğin farklı seed, mode, veya testcase değerleriyle.


🔹 $value$plusargs
#

Kullanıcıdan gelen +ARG=VALUE biçimindeki girişleri yakalamak için kullanılır.

$value$plusargs("SEED=%d", seed);

Bu ifade, komut satırında +SEED=123 şeklinde bir argüman varsa seed değişkenine 123 atar ve 1 döner. Yoksa 0 döner.

✅ Örnek:
#

integer seed;
initial begin
  if (!$value$plusargs("SEED=%d", seed)) begin
    seed = 42;  // Default value
  end
  $display("Using seed: %0d", seed);
end

🔹 $test$plusargs
#

Sadece bir bayrak (flag) argümanı olup olmadığını kontrol eder. Değer taşımaz.

if ($test$plusargs("VERBOSE")) begin
  $display("Verbose mode is ON.");
end

Komut satırında +VERBOSE varsa 1 döner, yoksa 0.


🖥️ Simülasyon Komutu
#

vvp a.out +SEED=123 +VERBOSE

🧠 Summary Table
#

Kategori Fonksiyon Açıklama
Değer girişi $value$plusargs("FORMAT", var) Argümanı alır, değişkene atar
Bayrak kontrolü $test$plusargs("NAME") Flag var mı diye kontrol eder

Verilog HDL Serisi - This article is part of a series.
Part 20: This Article

Related

Blocking ve Non-Blocking Atamalar
· loading · loading
HDL Verilog HDL
Görev (Task) ve Fonksiyon (Function)
· loading · loading
HDL Verilog HDL
Hiyerarşik Referans
· loading · loading
HDL Verilog HDL
Verilog Simülasyon Temelleri
· loading · loading
HDL Verilog HDL
Verilog Veri Tipleri
·635 kelime·3 dk· loading · loading
HDL Verilog Verilog HDL Veri Tipleri Mantık Seviyeleri Verilog Dizi
İsim Alanları
· loading · loading
HDL Verilog HDL