关于F28377D调用FFT库做fft时出现结果无穷大的原因分析
2019-07-13 16:14发布
生成海报
在使用28377D ti DSP的时候调用FPU库做FFT有时候会出现FFT的结果出现无穷大的问题。原因就是cmd文件中输入输出buffer的内存对齐引起的。
输入buffer需要地址对齐:我对地址对齐的理解:假设地址对齐大小为512;那么输入和输出buffer之间间隔的内存地址间隔必须要大于512.举个例子来说:
我要做32点的fft;然后设置的buffin[64]; buffout[64];那么对齐地址是32*4 = 128;所以buffin和buffout的存储地址之间的间隔必须是128。
错误的做法是把buffin和buffou通过DATA_SECTION连续放到一片空间中,那么他们之间的地址间隔就是64;这样是错误的。
正确的做法是把一块连续的内存分成两块;并且A块的首地址和B块的首地址之间要为128;在把buffin和buffou分别映射到这两块中间之中
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮