verilog 如何将一个模块reg变量在例化时赋值到一个顶层模块的reg中?

 我来答
褐雨黑桐
2011-07-28 · TA获得超过455个赞
知道小有建树答主
回答量:251
采纳率:100%
帮助的人:245万
展开全部
在顶层调用模块中的reg变量x,需要在顶层定义一个变量y是wire型来传递x变量的值,再把y给其他reg,或者直接用y
更多追问追答
追问
可是wire型的数据不能赋值给reg啊
追答
可以啊,为什么不可以,从没遇到说不行啊?是给wire赋值用assign,给reg赋值用always,调用是在没有限制的
百度网友e301c72
2011-07-27 · TA获得超过1474个赞
知道小有建树答主
回答量:564
采纳率:100%
帮助的人:535万
展开全部
把那个reg变量作为子模块输出到顶层模块去就可以了
追问
顶层模块也是reg型的,编译的时候出现错误,说被赋值的数据必须是net型的。Error (10219): Verilog HDL Continuous Assignment error at dds.v(28): object "freq_value1" on left-hand side of assignment must have a net type
追答
把reg [x:0] freq_value1改成wire [x:0] freq_value1
在内部已经是是寄存器了,连出来就直接用wire了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式