赛灵思
直播中

李思路

7年用户 173经验值
私信 关注
[问答]

HLS中FFT的反向输入算法不能实现

你好,
我想在HLS中实现反向输入和自然输出算法。
但是,结果始终是:
我的代码是:
void reverse_fft(compnum xin [FFT_SIZE])
{
const int LH =(FFT_SIZE >> 1);
int i,j = LH,k,flag;
compnum T;
对于(I = 1; I> 1;
}
当J = J + K;
}
}
为什么?我做了什么?
谢谢,新年快乐!

以上来自于谷歌翻译


以下为原文

Hello,
      I want ro realize the reverse input and natural output algorithm in HLS.
      However,the results are always :

     And my code is:
void reverse_fft(compnum xin[FFT_SIZE]){   const int LH=(FFT_SIZE>>1);   int i,j=LH,k,flag;   compnum T;   for(i=1;i<=FFT_SIZE-2;i++)   {   if(i;   xin=xin[j];   xin[j]=T;   }   k=LH;       while(i>1;       }        j=j+k;   }} Why ?And what shoude I do?
Thank you!Happy New Year!

回帖(2)

陈苏文

2019-3-6 13:03:43
你是否模拟了你的代码并验证它实际上是否有效,即对一些输入数据进行FFT?
这应该是你的第一个目标。
我不确定你需要什么样的FFT,但用C编码并要求HLS给你RTL可能不会非常有效。
FFT是一种非常着名的算法,具有许多现有的优化设计。
最好使用其中一个。
您是否尝试推断Xilinx FFT内核?
- 如果提供的信息有用,请将答案标记为“接受为解决方案”。给予您认为有用且回复的帖子。

以上来自于谷歌翻译


以下为原文

Did you simulate your code and verified it actually works ie does FFT on some input data? That should be your first goal. I am not sure what kind of FFT you need but coding it in C and asking HLS give you RTL is probably not going to be very efficient. FFT is a very well-known algorithm with a lot of existing optimized designs. It's better to use one of them. Did you try inferring the Xilinx FFT core ?- Please mark the Answer as "Accept as solution" if information provided is helpful.
Give Kudos to a post which you think is helpful and reply oriented.
举报

李林

2019-3-6 13:19:54
这是因为你有一段时间(i 
我的代码是:
void reverse_fft(compnum xin [FFT_SIZE])

const int LH =(FFT_SIZE >> 1); 
int i,j = LH,k,flag; 
compnum T; 
对于(I = 1; I> 1; 

当J = J + K; 
}
}
为什么?我做了什么?
谢谢,新年快乐!
干杯,吉姆

以上来自于谷歌翻译


以下为原文

This is because you have a while(i  
High-Level Synthesis cannot determine the tripcount in some cases. These cases include, for
example, those in which the variables used to determine the tripcount are:
• Input arguments, or
• Variables calculated by dynamic operation
In those cases, the loop latency might be unknown.
 
http://www.xilinx.com/support/documentation/sw_manuals/xilinx2013_4/ug902-vivado-high-level-synthesis.pdf (best viewed in Document Navigator).
smileworker2012 wrote:
Hello,
      I want ro realize the reverse input and natural output algorithm in HLS.
      However,the results are always :

     And my code is:
void reverse_fft(compnum xin[FFT_SIZE]){   const int LH=(FFT_SIZE>>1);   int i,j=LH,k,flag;   compnum T;   for(i=1;i<=FFT_SIZE-2;i++)   {   if(i;   xin=xin[j];   xin[j]=T;   }   k=LH;       while(i>1;       }        j=j+k;   }} Why ?And what shoude I do?
Thank you!Happy New Year!



Cheers,
Jim
举报

更多回帖

×
20
完善资料,
赚取积分