dameihuaxia 发表于 4 天前

.Verilog中的时钟(clk)的产生方法

clk的产生主要应用在验证中,产生目前主流的就是两种方法,一个是always块,一个是适合用forever语句,接下来将分别进行介绍:

①使用always块来产生时钟,如下所示。

reg         clk;

initial   clk=0;//initial 表示刚开始,0时刻

always #10 clk = ~clk;

这个always表示总是一直,前面讲always块的时候已经介绍过。不懂的往前翻,这里不再赘述。
#10表示延迟10个时间单位,clk 取反,一直循环再延迟10个时间单位clk再 取反,表示这个时钟
周期是20.


②另外一种是用forever语句(UVM常用)

reg    clk;

initial begin//forever要放在initial 块里面

    foreverbegin
      #10    clk = ~clk;
    end

end

和上面使用always块类似。
非常简单,产生时钟的方法学会了么?出一个思考题

思考:#10 和##10

lihongkun16 发表于 3 天前

.Verilog中的时钟(clk)的产生方法

宇xx 发表于 3 天前

.Verilog中的时钟(clk)的产生方法
页: [1]
查看完整版本: .Verilog中的时钟(clk)的产生方法