TI中文支持网
TI专业的中文技术问题搜集分享网站

6748 SYSBIOS 使用dsplib中fft函数出现Loop buffer exception异常

9336 A13=0x4ac4359c
A14=0x0 A15=0x407a2dae
A16=0xc681eff3 A17=0xc6b77c3d
A18=0xcc055f7c A19=0xcc09d299
A20=0x400 A21=0xc128e990
A22=0x4c38e81f A23=0xcc830888
A24=0xcc21cfb2 A25=0xcb117b85
A26=0x4ae381b0 A27=0xcbcae770
A28=0xc5bfd6b0 A29=0xc5c8d4bc
A30=0x12 A31=0x1000
B0=0x0 B1=0x0
B2=0x4 B3=0xa
B4=0xcbe6221a B5=0xc126daf8
B6=0x4b3efea4 B7=0x4c4ed7ff
B8=0x4bae81f6 B9=0x4c1ae494
B10=0xcb71d353 B11=0x4c14bcc3
B12=0x60 B13=0x3ff0
B14=0xc132e248 B15=0xc0000f20
B16=0xc126dae8 B17=0x400
B18=0x800 B19=0x39800000
B20=0x462ce648 B21=0x45ee4b54
B22=0x461850e0 B23=0xc60a80fd
B24=0xcb8d5714 B25=0x4ba8d99e
B26=0xcb8a8076 B27=0x4b221a56
B28=0xc1290990 B29=0x3f3504f4
B30=0x496caab2 B31=0x4
NTSR=0x1420f
ITSR=0x420f
IRP=0xc1318874
SSR=0x0
AMR=0x0
RILC=0x200
ILC=0x247
Exception at 0xc1318b84
EFR=0x2 NRP=0xc1318b84
Internal exception: IERR=0x180
Loop buffer exception
Missed stall exception
ti.sysbios.family.c64p.Exception: line 256: E_exceptionMax: pc = 0xc1318b84, sp = 0xc0000f20.
xdc.runtime.Error.raise: terminating execution

请问如何解决?

Nancy Wang:

请问测试的是哪个版本的SDK?哪个例程?还是只是引用了某个fft函数?请详细说明。

Shine:

请问程序里有用到中断么?如果有的话,把中断关掉试试,看是不是中断的影响。

user6470720:

回复 Nancy Wang:

测试过c674x-dsplib_1_03_00_01和dsplib_c674x_3_4_0_0以及创龙6748光盘资料中的dsplib三个版本均出现此问题。出错的是DSPF_sp_fftSPxSP和DSPF_sp_ifftSPxSP两个fft函数。把裸机用的通信程序移植到sysbios工程,程序跑1分钟左右就会出现这种错误,但之前裸机开发的程序可以正常运行。

user6470720:

回复 Shine:

用到了9个中断,都是程序运行必要的中断不能关。我在fft计算前调用Hwi_disable(),计算完成后Hwi_enable()打开硬中断,依然会出现这种问题。

Shine:

回复 user6470720:

建议用ROV观察一下是否堆栈有溢出?

user6470720:

回复 Shine:

应该查看哪部分?

Shine:

回复 user6470720:

可以看一下下面的网站关于ROV的数据查看。
software-dl.ti.com/…/rov.html

user6470720:

有人能解决这个问题吗?目前用的自己写的C语言fft函数,比库函数慢很多,再增加算法复杂度就做不到实时处理了。

赞(0)
未经允许不得转载:TI中文支持网 » 6748 SYSBIOS 使用dsplib中fft函数出现Loop buffer exception异常
分享到: 更多 (0)