Verilog中,#符号是什么意思
程序中的一段:foreverbeging#5a=a+b;#5b=a-1;endend请问“#5”是什么意思?...
程序中的一段:
forever
beging
#5 a=a+b;
#5 b=a-1;
end
end
请问“#5”是什么意思? 展开
forever
beging
#5 a=a+b;
#5 b=a-1;
end
end
请问“#5”是什么意思? 展开
展开全部
#5的概念是延迟的意思。但是是行为级描述 综合时将被过滤。
一般#+数字的组合在仿真器中产生一定的延迟。延迟结构如下~~
首先`timescale 1ns/100ps 这个是整个延迟的定义。`timescale是关键字,然后后面的两位时间 第一位是用来表示你的延迟因子的。第二位用来表示步进时间。
举例:
`timescale 1ns/100ps
......
always(这里用forever亦可)
#10 clk=~clk;
那么也就是说,10个延迟因子时clk取反。也就是说10纳秒时clk取反。所以你就得到一个50Mhz的时钟。
后面的100ps代表的意思是机器仿真的步进时间,当你写1ns/100ps时。在屏幕上显示的1ns时间内。机器做10次的运算。
如果不能直观理解。那么就尝试一下`timescale 1ns/1ps的区别。你就知道了。
千万注意的是:这个只能在仿真工具中运用。综合成电路时。你不要希望有这类延迟存在。
一般#+数字的组合在仿真器中产生一定的延迟。延迟结构如下~~
首先`timescale 1ns/100ps 这个是整个延迟的定义。`timescale是关键字,然后后面的两位时间 第一位是用来表示你的延迟因子的。第二位用来表示步进时间。
举例:
`timescale 1ns/100ps
......
always(这里用forever亦可)
#10 clk=~clk;
那么也就是说,10个延迟因子时clk取反。也就是说10纳秒时clk取反。所以你就得到一个50Mhz的时钟。
后面的100ps代表的意思是机器仿真的步进时间,当你写1ns/100ps时。在屏幕上显示的1ns时间内。机器做10次的运算。
如果不能直观理解。那么就尝试一下`timescale 1ns/1ps的区别。你就知道了。
千万注意的是:这个只能在仿真工具中运用。综合成电路时。你不要希望有这类延迟存在。
展开全部
是延时5ns
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询