【MATLAB】产生FPGA中ROM需要的余弦表
产生的二进制数为带符号二进制数,最高位是符号位。
function [ DATA ] = cos_gen( Num_addr,Num_out )
% 用来产生ROM需要的余弦表,输出为有符号二进制数
% Num_addr:总的地址的数目,如:4096
% Num_out:输出的数据的总位数,包括符号位,如:12
Y=round((2^(Num_out-1)-1).*cos(0:pi*2/(Num_addr):2*pi));
for i = 1:1:Num_addr
if(Y(i) < 0)
Y(i) = 2^(Num_out)+Y(i)+1;
else
Y(i) = Y(i);
end
end
Y=Y(1:Num_addr);
DATA = dec2bin(Y,(Num_out-1));
end

浙公网安备 33010602011771号