中易网

求高手指教verilog中reg型和wire型在模块引用中的用法?

答案:2  悬赏:10  
解决时间 2021-04-28 09:35
  • 提问者网友:斩断情丝
  • 2021-04-27 15:52
在编程中遇到了这么个问题:
count_60是一个工程中的子模块,定义成这样:module count_60(clk_count_60,clear,load,load_data,out,update,count_60_carry);
其中 out 定义为了reg型变量。在顶层文件中引用了这个子模块,引用方式如下:
count_60 sec_N(clk_1Hz,1,1,0,sec_n,update,sec_carry_n);
本来,sec_n对应的是子模块中的out ,所以在声明中也定义为了reg型。结果编译时报错,无法综合。后来把sec_n改成wire型后就没有了这个问题。想问一下,sec_n究竟该不该定义为wire型。如果应该的话,为什么?
最佳答案
  • 二级知识专家网友:請叫我丶偏執狂
  • 2021-04-27 17:14
模块间的连接都是用wire的
因为out已经是reg了,模块连接时就是用一根线wire把reg里的值引出来
全部回答
  • 1楼网友:湫止没有不同
  • 2021-04-27 18:13
wire型数据常用来表示用以assign关键字指定的组合逻辑信号。verilog程序模块中输入、输出信号类型默认时自动定义为wire型。wire型信号可以用作任何方程式的输入,亦可以用作"assign"语句或实例元件的输出。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息