作者Darrens (小胖子)
看板Electronics
标题Re: [请益] verilog如何在一个always判断触发源?
时间Wed Nov 4 01:10:09 2009
我想问个关於触发的问题
我写的程式里有一段是这样:
always@(negedge load)
begin
if(load==0)
begin
count=count+1;
end
end
load是一直在高准位的值
但每一小段时间就会变low
之後再马上变回高准位
我有确定if里面会执行
我想要计算变成low时的次数
却一直跑不出计数出的次数
不知道我这样的写法是不是有问题??
谢谢~~
另外我想再问一下
在always里,是否可写成
always@(posedge clk or a or b)
这样的写法??
非常感谢~~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.45.51.93
1F:→ bakerly:1. counter 没initial 值 2. 应该不行 11/04 08:55
2F:推 zxvc:2. 这个时代还没有这种电路。理论上存不存在我不知道。 11/04 09:30
3F:→ Darrens:请问一下 我有设初始值 还是不行 是什麽问题? 谢谢 11/04 12:36
4F:推 windboy0620:是不是怎麽算counter都是0? 把if拿掉应该就可以了 11/04 13:40
5F:→ windboy0620:因为你在negedge时load永远都要算是1 if永远不为真 11/04 13:41
6F:→ windboy0620:所以counter永远加不到 11/04 13:41
7F:推 comaniac:楼上,negedge是1->0时触发的吧,那样写应该没错 11/04 13:43
8F:→ comaniac:我也觉得是没有initial的关系,看要在always或testbench 11/04 13:44
9F:→ comaniac:把他做initial都可以 11/04 13:44
10F:推 windboy0620:但原po说他有设initial 除非他设错...orz 11/04 14:22
11F:推 windboy0620:不太确定 但觉得是:在negedge时设定register 且又把 11/04 14:35
12F:→ windboy0620:变数load当作组合逻辑的条件 会有一delay出现 变得 11/04 14:36
13F:→ windboy0620:在nededge时组合逻辑的output还没有变化 就设定不了 11/04 14:37
14F:→ windboy0620:变数counter的值...(不知道有没人懂我的意思 = =) 11/04 14:38