Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

مترجم Verilog عبر الإنترنت

اكتب الأكواد البرمجية، شغّلها وشاركها — بدون أي إعداد.

main.v
انقر على تشغيل لمشاهدة الإخراج هنا.
Plusargsمعاملات وقت التشغيل التي تُمرَّر إلى المحاكي — اقرأها في testbench الخاص بك باستخدام $value$plusargs أو $test$plusargs.
المفتاحالقيمة

اكتب وترجم وحاكِ Verilog HDL عبر الإنترنت

مترجم ومحاكي Verilog مجاني عبر الإنترنت. اكتب وحدات Verilog أو SystemVerilog، وشغّل testbench، واضغط Run لترى مخرجات stdout مع شكل موجة VCD مُولَّد. بدون تثبيت، بدون Vivado، بدون Quartus، ولا سلسلة أدوات تحتاج إلى إعداد. يفتح المحرر على testbench لعدّاد متزامن مع clock، فتعدّل وتشغّل خلال ثوانٍ.

يُترجَم الكود باستخدام Icarus Verilog (iverilog) ويعمل تحت vvp داخل حاوية معزولة، فتحصل على دلالات Verilog HDL حقيقية: كتل always المتزامنة مع clock، والإسنادات غير الحاجبة، وإنشاء الوحدات الهرمي، و$display و$finish. أضف $dumpfile و$dumpvars إلى testbench، وستعرض علامة التبويب «شكل الموجة» إشارات أحادية البت ومسارات متعددة البتات مع مؤشّر قابل للسحب وانتقالات وقيم لكل إشارة. تتدفّق plusargs (+KEY=VALUE / +FLAG) إلى testbench عبر $value$plusargs و$test$plusargs، فيمكنك تغيير دورة الساعة ومدة التشغيل ورايات الميزات دون تعديل الكود المصدري.

ما الذي يجعل هذا المترجم Verilog مفيدًا

  • ترجمة ومحاكاة فورية — اكتب Verilog HDL، اضغط تشغيل، وشاهد الإخراج القياسي وأشكال موجة VCD خلال ثوانٍ.
  • تظليل صياغي لـ Verilog و SystemVerilog بنفس محرك المحرر الذي يستخدمه VS Code، مع نطاق module/endmodule وإكمال تلقائي للكلمات المفتاحية.
  • عارض أشكال موجة مدمج: أصدر $dumpfile و$dumpvars من testbench الخاص بك، وستعرض علامة التبويب «شكل الموجة» الإشارات والمسارات والانتقالات ومؤشرًا قابلاً للتحريك مع قيمة لكل إشارة.
  • لوحة plusargs لمعاملات testbench: مرّر +CYCLES و +PERIOD و +VERBOSE عبر $value$plusargs / $test$plusargs وأعد التشغيل دون تعديل الكود المصدري.

ما يمكنك بناؤه في Verilog playground

  • المنطق التركيبي — جامعات، ومتعدّدات الإرسال، ووحدات ALU — موصولة في testbench مع فحوصات $display وردود فعل فورية.
  • تصاميم تسلسلية متزامنة مع clock — عدّادات، ومُسجِّلات إزاحة، وآلات حالة منتهية تقودها always @(posedge clk)، مع أشكال موجة VCD لفحص انتقالات الإشارات.
  • مسح المعاملات: مرّر plusargs مثل ‎+CYCLES أو ‎+PERIOD أو ‎+VERBOSE لتغيير السلوك بين عمليات التشغيل، تمامًا كما تفعل على سطر أوامر iverilog/vvp.

الأسئلة الشائعة حول مترجم Verilog عبر الإنترنت

ما هو Verilog؟
Verilog لغة وصف عتاد (HDL) تُستخدم لنمذجة الدوائر الرقمية ومحاكاتها، من البوابات التركيبية البسيطة وحتى المعالجات الكاملة. تصف الوحدات والأسلاك والمسجّلات في الكود، ثم تترجمها بمترجم Verilog وتشغّل testbench للتحقّق من السلوك. SystemVerilog مجموعة فائقة من Verilog تضيف ميزات للتحقّق، و playground يقبل الاثنين.
هل مترجم Verilog عبر الإنترنت مجاني؟
نعم، مترجم Verilog والمحاكي مجانيان للاستخدام. لا تسجيل، ولا ترخيص Vivado أو Quartus، ولا سلسلة أدوات لتثبيتها — اكتب وحدة واضغط Run.
هل أحتاج إلى تثبيت Icarus Verilog أو أيّ أداة EDA؟
لا. يُترجَم كودك باستخدام iverilog ويعمل تحت vvp داخل حاوية معزولة على الخادم. تكتب مصدر Verilog وتضغط تشغيل، ويتكفّل المترجم والمحاكي بالباقي.
كيف أعرض أشكال موجة كود Verilog الخاص بي؟
داخل كتلة initial في testbench، استدعِ ‎$dumpfile("dump.vcd")‎ و ‎$dumpvars(0, your_module)‎. بعد الضغط على Run، تعرض علامة التبويب Waveform الإشارات — انقر في أيّ مكان على المسار لوضع مؤشر وقراءة قيمة كل إشارة عند تلك اللحظة.
كيف أكتب testbench Verilog باستخدام plusargs؟
أضف صفوفًا في لوحة Plusargs (مثل CYCLES=10، VERBOSE) وستُمرَّر إلى المحاكي على سطر الأوامر بصيغة +CYCLES=10 +VERBOSE. داخل testbench، اقرأها بـ $value$plusargs("CYCLES=%d", n) للقيم الصحيحة، أو $test$plusargs("VERBOSE") للرايات المنطقية. يعرض الكود الافتراضي للبداية النمطين معًا.