verilog中的@(posedge clk)问题!大神帮帮忙!

第一个always与第二个always块语句有何不同,@(posedgeClk);不是等待一个上升沿就执行吗?为何第二种输出直接就是高,初始值也不是0,连等一个上升沿也没... 第一个always与第二个always块语句有何不同,@(posedge Clk);不是等待一个上升沿就执行吗?为何第二种输出直接就是高,初始值也不是0,连等一个上升沿也没有,跟不存在@(posedge Clk)似的。还有,如果修改第二种使其实现与第一种相同的效果(时钟的二分频),实在不行,告诉我 @(posedge Clk)在不与always搭配下的运用实例也行,如像第二种单独使用,或跟repeat、while、for、if等语句使用都行。谢谢!
module OneTraffic(Grn,Yel,Red,Clk);
output Grn,Yel,Red;
input Clk;
reg Grn,Yel,Red;
always @(posedge Clk)
begin
Grn=~Grn;
Red=~Red;
end
always
begin
@(posedge Clk);
Yel=~Yel;
end
endmodule
展开
 我来答
wangjun403
2013-06-26 · TA获得超过528个赞
知道小有建树答主
回答量:451
采纳率:0%
帮助的人:358万
展开全部
你语法都没有学完,就来瞎写程序

第二中写法是不可综合的语句

仔细看看书吧,不是所有关键词都是可以拿来随便用的,要分清场合
更多追问追答
追问

本来我遇到的问题是这样的(交通灯),这是书上的例子,结果仿真波形跟书上完全不同。repeat(delaytime) @(posedge clock);好像不起作用,疑惑不已,你能解决这个问题吗?是书上例子错了,该怎么改?进而引起了对@(posedge clk)的疑问,能顺带说一下@(posedge clk)在其他地方的应用吗?

追答
书上的这个例子是没有错的
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式