Verilog中,如何实现一个module调用另一个module中的reg变量?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Verilog中,如何实现一个module调用另一个module中的reg变量?相关的知识,希望对你有一定的参考价值。
参考技术A 不能调用,只能拉到各自输入输出口再连接。 参考技术B module A ;reg a;
endmodule
module top;
wire b;
A u_A();
assign b = u_A.a; // 这就是你要的
verilog 初始化十进制数组
有一个十进制的数组2 5 2 3 6 5 4 2 1 2,在verilog中用什么方式存储,想用这个数组中的数据作索引,怎么调用,怎么办?
有一组十进制数组是从txt文档中读取的(matlab处理过导出的),我想把那个数组作一个模块的输入,verilog怎么读取,然后怎样处理再作为输入?
(这个十进制数组能不能作为一个模块的输入,怎么从txt中读取这个数组?)
对楼主问题补充的回答
先写个tb,在tb里调用一个ram的module,同时$readmb();语句把文件的数读到一个寄存器里,再把这个寄存器作为ram的data输入就行了。 参考技术A 定义成参数可以么。例如
parameter a0=4'd2;
parameter a1=4'd5;
parameter a2=4'd2;
parameter a3=4'd3;
parameter a4=4'd6;
parameter a5=4'd5;
parameter a6=4'd4;
parameter a7=4'd2;
parameter a8=4'd1;
parameter a9=4'd2;
这样有点麻烦哦,不过我觉得好像可以满足要求了。。。等待高手有更好的方法。。。 参考技术B 楼上脑残 ,储存器声明应该为 reg[2:0]array[9:0]
以上是关于Verilog中,如何实现一个module调用另一个module中的reg变量?的主要内容,如果未能解决你的问题,请参考以下文章
verilog的module中怎样循环调用另外几个module?