【问题标题】:SystemVerilog a series of delayed assignment [closed]SystemVerilog 一系列延迟赋值[关闭]
【发布时间】:2020-08-07 07:32:51
【问题描述】:

我是 Verilog 语法的新手。 有没有办法在 SystemVerilog 中将此分配作为单行?

例如,顺序位分配由下式给出

                out <=1 
                out <= #1 0;
                out <= #2 1; 
                out <= #3 0;

提前致谢。

【问题讨论】:

    标签: model verilog variable-assignment timing behavior


    【解决方案1】:

    这不是单行,但您可以使用循环以固定间隔反转信号。例如,我经常使用这样的永久循环生成测试台时钟:

    initial begin
        out = 1'b1;
        forever #1 out = ~out;
    end
    

    如果您只想生成少量脉冲,可以用 for 循环替换永久循环:

    initial begin
        out = 1'b1;
        for (int i = 0; i < 3; i++) begin
            #1 out = ~out;
        end
    end 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-25
      • 1970-01-01
      • 1970-01-01
      • 2012-12-07
      • 1970-01-01
      相关资源
      最近更新 更多