0
点赞
收藏
分享

微信扫一扫

always 语句

探头的新芽 2023-01-16 阅读 85


always 语句

与 initial 语句相反,always 语句是重复执行的。always 语句块从 0 时刻开始执行其中的行为语句;当执行完最后一条语句后,便再次执行语句块中的第一条语句,如此循环反复。

由于循环执行的特点,always 语句多用于仿真时钟的产生,信号行为的检测等。

下面用 always 产生一个 100MHz 时钟源,并在 1010ns 时停止仿真代码如下。

代码如下:


实例



`timescale 1ns/1ns

module test ;

parameter CLK_FREQ = 100 ; //100MHz
parameter CLK_CYCLE = 1e9 / (CLK_FREQ * 1e6) ; //switch to ns 1e9/1e8=10ns

reg clk ;
initial clk = 1'b0 ; //clk is initialized to "0"
// 每5 ns 翻转一次
always # (CLK_CYCLE/2) clk = ~clk ; //generating a real clock by reversing

always begin
#10;
if ($time >= 1000) begin
$finish ;
end
end

endmodule

我用的是 vivado ​​21 秒学会 vivado 仿真​​

always 语句_fpga开发


举报

相关推荐

0 条评论