菜鸟再求助

2020-02-27 21:07发布

如下代码
module voter7(pass,vote
output pass;
input[6:0] vote;
reg[2:0] sum;
integer i;
reg pass;
always @(vote)
  begin
sum=0;
for(i=0;i<=6;i=i+1)       //for语句
if(vote[i]) sum=sum+1;
if(sum[2])  pass=1;      //若超过4人赞成,则pass=1
else      pass=0;
   end
endmodule
这里if(sum【2】)代表是4?sum不是【2:0】才3位吗求解释;
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
asdf012
1楼-- · 2020-02-28 02:35
 精彩回答 2  元偷偷看……
haitaox
2楼-- · 2020-02-28 07:03
我建议你用modelsim仿真一下,初学者最好是边仿真边学习,这样提高很快的
yghanwuji
3楼-- · 2020-02-28 11:04
SUM[2:0] : 000,001,010,011,100。就四个了啊,数电要看看了
Dick00
4楼-- · 2020-02-28 15:14
貌似sum【2:0】和sum【2】不是一个概念吧,干嘛不写成if(sum>3)呢?
ococ
5楼-- · 2020-02-28 20:37
Dick00 发表于 2013-10-15 13:56
貌似sum【2:0】和sum【2】不是一个概念吧,干嘛不写成if(sum>3)呢?

写成if(sum>3)综合后占用的资源会多一点,因为需要判断三位数据。

一周热门 更多>