Skip to main content

tb-creator

创建 SystemVerilog 测试平台文件。触发词包括:创建TB、写testbench、新建测试平台、生成TB、写TB、创建仿真测试文件

معلومات المصدر

المستودع
Ljj05170930/verilog-code-plugin
آخر نشاط في المصدر
١٢ أبريل ٢٠٢٦ في ١١:٤٩
لغة SKILL.md المكتشفة
الصينية
النجوم
٠
التفرعات
١

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
tb-creator
description
创建 SystemVerilog 测试平台文件。触发词包括:创建TB、写testbench、新建测试平台、生成TB、写TB、创建仿真测试文件
在 `TB/` 目录下创建 `TB/tb_top.sv`,直接使用模板,不询问任何参数。 ## 文件模板 ```systemverilog // DUMP_ARRAY macro: per-element dumpvars for unpacked arrays // gen_dumpvars.py --patch will auto-generate calls and insert them into the dump initial block below `define DUMP_ARRAY(path, size) \ begin \ for (int _di = 0; _di < size; _di++) \ $dumpvars(0, path[_di]); \ end `timescale 1ns/1ps module tb_top; // ── Parameters ──────────────────────────────────────────────────────── localparam CLK_PERIOD = 10; // clock period (ns), 100 MHz localparam SIM_TIMEOUT = 10000; // simulation timeout (ns) localparam RST_CYCLES = 4; // reset duration in cycles // ── Clock & reset ───────────────────────────────────────────────────── reg clk = 0; reg rst_n; always #(CLK_PERIOD/2) clk = ~clk; initial begin rst_n = 0; repeat(RST_CYCLES) @(posedge clk); rst_n = 1; end // ── DUT instantiation (replace <dut_module> and port connections) ───── // <dut_module> u_dut ( // .clk (clk ), // .rst_n (rst_n) // ); // ── Waveform dump (gen_dumpvars.py --patch will update this block) ──── initial begin $dumpfile("wave.fst"); $dumpvars(0, tb_top); end // ── Simulation timeout ──────────────────────────────────────────────── initial begin #SIM_TIMEOUT; $display("[TIMEOUT] simulation exceeded %0d ns", SIM_TIMEOUT); $finish; end endmodule ``` ## 执行步骤 1. 使用 Write 工具将上方模板写入 `TB/tb_top.sv` 2. 告知用户已创建 `TB/tb_top.sv`,提示下一步填写 DUT 实例化部分
عرض على GitHub