verilog如何实现调用另一个模块寄存器的内容

我想要在模块2中调用模块1中存放的寄存器的内容。reg[47:0]mem1;端口是[3:0]位模块2需要利用模块1中寄存mem1整个48位进行比较;我想用case语句实现... 我想要在模块2中调用模块1中存放的寄存器的内容。
reg [47:0] mem1;端口是[3:0]位
模块2需要利用模块1中寄存mem1整个48位进行比较;我想用case语句实现,但得不到结果,望高手能指点迷津
mem1存储的地址是其中的一个
case(mem1)
begin
48'h1234_5678_9abc:dout1_temp<=din;
48'h2345_6789_abcd:dout2_temp<=din;
end
endcase
但是我用寄存器试过了,模块2不能知道模块1中的寄存器内容啊…他们分别在两个module里面的,我想是不是有什么语句能够实现模块2读取模块1寄存器的内容?还需注意的是他们的端口只有4位,而我想在一个时钟里面实现比较功能…不胜感激……
展开
 我来答
g4gryphon
2010-05-17 · TA获得超过649个赞
知道小有建树答主
回答量:187
采纳率:0%
帮助的人:177万
展开全部
你的定义mem1应该是一个48bit宽,16层深的memory arrary.
所以,你需要给mem1输入一个地址,比如是 idx[3:0],那么,case的写法是

case(mem1[idx])
begin
....
....
end
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式