[VCS]如何利用小程序try Verilog語法?用VCS仿真小的Module

       前言:在開發中,我們經常會遇到自己的理解與仿真器的理解不一致的情況,此時我們可以寫一個小的module,通過VCS仿真來驗證我們對Verilog語法的理解是否正確。本文將分享一個Try Verilog語法的例子。

       例如:我們想驗證一個帶下拉電阻的Path,在Input端沒有驅動的情況下,Output是邏輯0還是Hiz,此時可以寫如下module進行測試:

module pdu_test(
  pad,
  pad_pu,
  pad_pd
);
  
  output    pad;
  output    pad_pu;
  output    pad_pd;

  wire a, b, c;

  pullup   PU(b);
  pulldown PD(c);

  assign pad    = a;
  assign pad_pu = b;
  assign pad_pd = c;

endmodule


module test_pad_pud();
  wire    pad;
  wire    pad_pu;
  wire    pad_pd;

  bit     clk;

  pd_test    u_pud_test(pad, pad_pu, pad_pd);
  
  initial begin
    $fsdbDumpvars(0, u_pud_test);
    $fsdbDumpSVA;
  end

  initial begin
    clk = 0;
    repeat(10) begin
      #10;
      clk = ~clk;
    end
  end

endmodule

    1、那麼啟動VCS的Command應該怎麼寫呢?可以用如下命令來啟動仿真:

           vcs -full64 -sverilog +v2k +define+ASSERT_ON+COVER_ON -R  <try_sv.sv> &

               其中-R這個Option的作用是執行仿真,如果不用-R這個Option,需要手動執行./simv才會運行仿真。

    2、仿真完成後如何查看波形呢?可以用以下OPtion:

           nWave novas.fsdb &

发布了140 篇原创文章 · 获赞 81 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/gsjthxy/article/details/103779794
VCS