如何使用线阵列的AND操作分配线?
parameter row = 4;
parameter col = 8;
wire ready [row-1:0][col-1:0];
output wire allready;
逻辑上我想做
allready = AND ready [i] [j]为所有i,j
答案 0 :(得分:1)
对于mutlibit线,可以使用缩减运算符&
:
wire [row-1:0] ready;
wire allready = &ready;
但是这对解压缩的数组(多维)无效。
一种解决方案是创建一个循环来索引维度,并使用结果到目前为止的值。这可以通过以下方式实现:
output reg allready;
always @* begin
allready=1'b1;
for (int i =0; i<col; i++) begin
allready = allready & (&ready[i]) ;
end
end