要求随机产生一个 bit array[]动态数组,size和所有元素中为1的个数在使用的时候再随机产生。
尝试找一个简便的方式来完成,谁有高见,请指点一点吧
这个是理论上最简便的方法。
function void gen_array( int a_size, int sum, ref bit d_array[]);
std::randomize(d_array) with {d_array.size==a_size; d_array.sum==a_sum;};
endfunction
class的做法和下面做法一样,目前跑仿真的时候约束失败。
这个是理论上最简便的方法。
function void gen_array( int a_size, int sum, ref bit d_array[]);
std::randomize(d_array) with {d_array.size==a_size; d_array.sum==a_sum;};
endfunction
帮你翻了一下标准,下面这样写应该就可以了,你试试吧
function void gen_array( int a_size, int sum, ref bit d_array[]);
std::randomize(d_array) with {d_array.size==a_size; d_array.sum with (int'(item)) ==a_sum;};
endfunction