关于端口数据类型,请大家给予解释
时间:10-02
整理:3721RD
点击:
在夏雨闻数字系统教程一书中,关于他的语法练习部分。有这样一题,指出下面cin,cout,c3,c5的数据类型。
module fadd(a,b,cin,sum,cout);
input a,b,cin;
output sum,cout;
...
endmodule
module test;
fadd m(c1,c2,c3,c4,c5);
...
endmodule
他的答案中给出c3是wire或reg型。
按照常规的理解,编写测试代码时,不是要给输入赋值吗?那c3应该是reg型,
在什么时候是wire型数据呢?不能理解。
请大家给予解释
module fadd(a,b,cin,sum,cout);
input a,b,cin;
output sum,cout;
...
endmodule
module test;
fadd m(c1,c2,c3,c4,c5);
...
endmodule
他的答案中给出c3是wire或reg型。
按照常规的理解,编写测试代码时,不是要给输入赋值吗?那c3应该是reg型,
在什么时候是wire型数据呢?不能理解。
请大家给予解释
可以用assign语句赋值,那就是wire类型了。
同意二楼。需要赋值的输入不一定要用reg型的。
如果输入的激励可以用assign语句完成,那这个输入就可以取wire
如果只能用always或initial语句形成激励,那就一定要用reg了
只做连接用 在test模块中做虚拟输出时为wire 做输入时为reg
如果你要为其引出引脚,就是WIRE型,不引的话就是REG 型吧,不知道这样理解对不对呀?
顶!有助于理解!
实际使用中可以是reg,也可以是wire
wire还是reg其实不是定义出来的,完全看你后面怎么用了。
