非法分配模式。元素数 (1) 与类型的沃斯 (2) 不匹配。在系统验证中



我正在用它附加外壳。

module top;
reg [1:0] arr; 
reg [2:0] arr_asgn;
assign arr = {'{ default: arr_asgn[2] }};
endmodule 

这在语法上是不正确的。当您尝试将二维数组分配给一维打包阵列时。根据LRM的说法,右侧应该是这样的2-d。

arr[1:0][1:0];
assign arr = '{'{default:1}, '{default:0} }

或者应该是

assign arr = '{default:1}

这在语法上是不正确的。您在连接{}内有一个assigment pattern。那里没有赋值上下文。您必须移除外部大括号:

assign arr = '{ default: arr_asgn[2] };

相关内容

最新更新