verilog数组赋值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了verilog数组赋值相关的知识,希望对你有一定的参考价值。

verilog的二维数组怎么赋值啊,这是我定义的二维数组reg [7:0]rom[7:0];应该怎么赋值才可以呢,我用parameter rom[0]=8'b11111110;可是ISE报错,把中括号去掉就不报错了,可是没生成存储器!

参考技术A 你要生成存储器
就直接这样 reg[7:0]rom[7:0];就是生成了一个,8个8位的存储器
要赋值的话不要什么parameter,直接赋值就行了
比如 rom[0]=8'B11111110;
你这样试试行不行
参考技术B 都不知道该怎么说了啊。。。。。。
parameter和reg怎么能一样呢 parameter是个定义参数的关键字。
看看我在另一个帖子里详细的解释如何赋值的。
好好看看verilog IEEE的手册
http://zhidao.baidu.com/question/370468986.html?oldq=1
参考技术C 既然定义了reg类型,为什么用parameter呢,这样不对的。reg类型的信号只能在initial或者always块里才能用,你可以尝试改一下。去掉中括号可以应该是因为它没有被认为是你先前定义的二维数组。 参考技术D reg [7:0]这种怎么叫二维呢,明明就是一维的,就是个8位寄存器,看看语法吧

以上是关于verilog数组赋值的主要内容,如果未能解决你的问题,请参考以下文章

verilog 怎么给二维数组赋值

verilog reg 数组类型赋值后,仿真总是高阻

verilog中如何将二维存储器转为一维的数组并赋值,求大神帮忙!

如何给Verilog中的数组初始化赋值

怎么对Verilog定义的memory初始赋值

verilog 二维数组不能赋值