看板Electronics
标 题Re: 请问关於verilog语法中有可以侦测信号变化的指 …
发信站交大资科_BBS (Mon Feb 13 20:21:00 2006)
转信站ptt!ctu-reader!Spring!feeder.seed.net.tw!news.ntu!mars.scc.ntnu!ctu-pe
==> 在 [email protected] (要减肥罗^^) 的文章中提到:
> ※ 引述《devilsaint ( )》之铭言:
> : 大概是类似VHDL中的属性EVENT的用
> : 就是侦测某个其他信号的值有发生改变时便在输出产生一个pulse
> : _______|﹉|__(持续一个周期後又回到原本的值),这该如何麽写呢?
always @(clk)
-> both edge
> clk : system clock
> event : 侦测的讯号
> out : 结果
> always@(posedge clk)
> if(event==1)
> out<=1;
> else
> out<=0;
> 上面是个简单的例子... 如果你要event=0 或是 (event从0-->1 和1-->0)
> 都让out=1也是属於类似的写法 留给你去思考罗...
> 不过在真正的chip中 我们应该比较喜欢下面的写法
> always@(posedge clk or negedge reset_n)
> if(~reset_n)
> out<=0;
> else
> if(event)
> out<=1;
> else
> out<=0;
> 原因是因为一般来说 我们希望整个chip中的DFF 能够一致
--
* Origin: ★ 交通大学资讯科学系 BBS ★ <bbs.cis.nctu.edu.tw: 140.113.23.3>
1F:推 Jkson:这样的写法你确定有这样的电路?? 02/13 23:43
2F:→ Jkson:还有一般用clk去trig的写法 我都希望它合成 DFF 02/13 23:45
3F:→ Jkson:如果是单纯always@( a or b)这样的电路会是一个组合电路 02/13 23:46
4F:→ Jkson:所以一般用clk去trig的写法中不会这样用 02/13 23:47
5F:推 fallenball:在这里回他看不到喔:P 02/14 00:23