xilinx的$clog2函数
软件:vivado
说明:
$clog2这个计算是log2,就是求2对数,比如 log2(8) = 3 ;
转载:https://blog.csdn.net/weixin_36590806/article/details/112377240
根据xilinx官网介绍。
在vivado中$clog2,它能编译通过,但是在实际中,它的底数是自然数e=2.71828.。。
所以在调用这个的时候要小心。
这里可以用一个function函数处理:
function integer funclog2;
input integer value;
begin
value = value-1;
for (funclog2=0; value>0; funclog2=funclog2+1)
value = value>>1;
end
Endfunction
使用这个function。
----------------------------------------------
parameter b= $clog2(a);
parameter c= funclog2(a);
如上面两个等式所示:
在仿真中b和c的值是相等的,但是在实际编译中是不等的,所以请注意。
一个fpga的从事工作者。