eg:
1、普通的时钟信号
(1)initial语句
parameter FAST_PERIOD=10; //产生一个周期为10的时钟
reg Clock;
initial
begin
Clock=0;
forever
# (FAST_PERIOD/2) Clock=~Clock;
end
(2)用always语句
parameter FAST_PERIOD=10;
reg Clock;
initial
Clock=0;
always
# (FAST_PERIOD/2) Clock=~Clock;
2、非50%占空比时钟信号
parameter H_time=5, //40%占空比
L_time=10;
reg clock;
always
begin
# H_time clock=0;
#L_time clock=1;
end
在此例中,Clock在0时刻没有初始化,且其为寄存器类型变量,因此在该信号的前5个时间单位,Clock在仿真器中的值为x。如下图。
附有附件,大家可以看下。