verilog hdl 中的寄存器数组可以按位复赋值吗?如果可以的话,那么索引号必须是常量吗? 5
1个回答
展开全部
你要按数字电路来思考,别用C的想法,需要一段时间。
你说的是寄存器组,但你举例可是寄存器。
寄存器编程时是要赋初值的,这是一个好习惯,而寄存器组是不允许赋初值的,也就是说声明是要这样:reg [7:0] count = 0 ; reg [15:0] data [1023:0];前者是寄存器,后者是寄存器组或者叫存储器。
至于你说索引必须是常量,这个常量只要在触发时是个常量就行,举个例子就是编译器是可以编译for循环的,包括里面常用的i = i + 1,但是这绝对不是一个好习惯,建议不要使用这种方法,想都别想。
你说的是寄存器组,但你举例可是寄存器。
寄存器编程时是要赋初值的,这是一个好习惯,而寄存器组是不允许赋初值的,也就是说声明是要这样:reg [7:0] count = 0 ; reg [15:0] data [1023:0];前者是寄存器,后者是寄存器组或者叫存储器。
至于你说索引必须是常量,这个常量只要在触发时是个常量就行,举个例子就是编译器是可以编译for循环的,包括里面常用的i = i + 1,但是这绝对不是一个好习惯,建议不要使用这种方法,想都别想。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询