请教Verilog 中memory 型数据的问题
在Verilog中定义一个memory型的数据,如:
reg [7:0] mem1[255:0]
如果想引用其中第七行第八列元素应如何引用:reg[6][7]怎么不对的?请各位大虾指教一下。
请教Verilog 中memory 型数据的问题
答案:4 悬赏:60 手机版
解决时间 2021-03-02 04:17
- 提问者网友:沦陷
- 2021-03-01 21:19
最佳答案
- 五星知识达人网友:鱼芗
- 2021-03-01 22:39
恩,楼上的都不对。
首先你要明确mem1不是一个二维数组,它是一维的。reg表示mem1中的元素都是寄存器类型,reg后面的[7:0]表示的是mem1每个数组的元素的位宽是8bit。
如果想表示mem1数组的第A个元素的第B到第C位的内容,可表示如下
mem1[A][B:C]
凭记忆写的,大致如上,你可以查阅verilog相关书籍的语法部分验证一下~
首先你要明确mem1不是一个二维数组,它是一维的。reg表示mem1中的元素都是寄存器类型,reg后面的[7:0]表示的是mem1每个数组的元素的位宽是8bit。
如果想表示mem1数组的第A个元素的第B到第C位的内容,可表示如下
mem1[A][B:C]
凭记忆写的,大致如上,你可以查阅verilog相关书籍的语法部分验证一下~
全部回答
- 1楼网友:狂恋
- 2021-03-02 01:33
1.目的:rtl code or simulation testbench?
2.如果是rtl code ,与该memory相连的应该使用寄存器,然后在不同的时间段给该寄存器赋值
3.如果是simulation testbench,你的赋值没有时序的概念
应该把赋值写到 initial块里面
如: initial begin...
end
4 memory是有自己的总线的,一般有cen wen data_in addr这几个信号
通过这4个信号的固定的总线操作写进对应的memory里面去
- 2楼网友:神也偏爱
- 2021-03-02 00:26
mem1[6][7]
- 3楼网友:山有枢
- 2021-03-01 23:09
应该是 mem[6][7]吧,reg是类型。
这个mem是一维压缩数组,mem[6][7]表示第7个元素的第8位,只是一位。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯