-1

假设我通过编写以下代码声明了一个包含 8 个位长度为 8 位的字的内存空间:

reg [7:0]mem[0:7] 

我想访问第三个单词的元素 3 到 5 并将它们设置为零。这个的语法应该是什么样的?

reg[0:7]mem[0:7]

这会是一段有效的代码吗?还是必须像初始化 1 一样?

4

1 回答 1

1

如果您有一个相当现代的模拟器/合成器(V2001 之后),那么您可以直接访问数组单词中的部分选择:

   reg[7:0] mem[0:7];
   initial begin
      mem[3][7:6] = 2'b00;
      mem[3][5:0] = 6'b111111;  // mem[3] = 8'h3f
   end;

在较旧的工具中,您必须读取/写入整个单词,并在临时变量中进行位或部分选择。

于 2013-04-22T13:05:15.517 回答