过程语句
initial
always
-
initial
仿真0时刻开始执行,整个仿真执行一次 -
always
仿真一直在执行 -
两个不能嵌套使用
-
每个initial 或always语句都代表一个独立的执行过程
initial 语句
module
initial 1
initial 2 //两个互不干扰,并行执行
endmodule
- 语法
initial //语句块内含2条或以上语句需要使用begin ---end或者fork ---join 关键字封装成语句块
begin
statement1 ;
statement2;
---;
statementn;
end
- 常用于测试模块,虚拟模块的编写,用于产生仿真测试激励信号,信号初始化等仿真环境
- 不可综合
实例
module initial1;
reg clk;
reg a,b;
initial
begin
clk=1`b0;
#2 a=1;
#4 b=1;
#5 a=1;
b=1
end
endmodule
always语句
-
包含一个或一个以上的声明语句
-
仿真过程中只要满足触发条件就可重复执行
-
格式:always <时序控制> <语句>;
-
在always中被赋值的之能是寄存器变量,包含一个以上的语句需要在begin—end中或for

本文详细介绍了Verilog中的过程语句,包括initial和always语句的使用,特别是always语句的时序控制,如posedge和negedge关键字。同时,讲解了时序控制中的简单延迟、基于事件的时序以及wait语句的应用,重点在于它们在FPGA开发中的作用和仿真中的实现。
最低0.47元/天 解锁文章
2344

被折叠的 条评论
为什么被折叠?



