對不起,如果我說一些愚蠢的東西,請原諒我: 我試圖將Matlab代碼(下面給出)轉換爲使用HDL編碼器的VHDL代碼。它包含一個名爲sum 。但是當我嘗試它給了我錯誤的代碼轉換:使用Matlab HDL編碼器生成VHDL代碼
生成代碼只支持SumModes「SpecifyPrecision」和 「KeepLSB」爲「SUM」時輸入的大小可以在運行時會有所不同。
但事實是我從來沒有使用功能before.Can任何一個請幫我it.How應該改變我的代碼,將其轉換爲VHDL.It將是非常好的!
function y = fcn(n,y1,y2)
n=10;
x1c=zeros(2*n-1,1);
for i=1:2*n-1
if(i>n)
j1=1;
k1=2*n-i;
j2=i-n+1;
k2=n;
else
j1=n-i+1;
k1=n;
j2=1;
k2=i;
end
x1c(i)=sum((y1(j1:k1)).*y2(j2:k2));
end
x1c=flipud(x1c).';
y=x1c;
這是y1和y2的互相關。 y1和y2是兩個長度相同的矢量,n是y1的長度。我真的卡住了,請幫忙! 在此先感謝!
什麼是反彈? –
@BrianDrummond它只是向上/向下翻轉元素。 – Haider
@BrianDrummond如果你有興趣的話,請不吝賜教。 – Haider