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

C6678接收Doorbell中断问题

ti工程师您好,我使用的是C6678,FPGA与DSP选用SRIO进行通信,我参考K1STK中的srio例程,FPGA每隔10ms给DSP发数一次,产生一个doorbell中断,DSP在中断服务函数中将标志位置一,随后转去执行其他的程序,目前出现的问题是接收到的doorbell数目与发送的不符,少了很多,请问这是什么原因?会不会是因为我在10ms内没有将数据处理完导致的?

Shine:

请问中断函数处理占用时间是多少?中断断服务程序占用时间较长的话,在Doorbell间隔比较小的情况下会造成doorbell丢包。避免在中断服务程序用printf这些打印语句。

如果还是丢中断,试试加长FPGA发包间隔。

TI 诚邀您参加全新设计的产品页面测试,参加测试即可享有 TI 购物 9 折优惠码,点击加入 EP产品页面测试报名,名额有限。感谢您的参与!

user4683768:

回复 Shine:

中断服务函数中没有使用printf,仅仅只是对几个标志位赋值,shine,测试时间时使用clock可以吗?加长FPGA发包间隔后不再丢中断,但是要求FPGA必须10ms发一次中断,请问这时该怎么办?

Shine:

回复 user4683768:

请问是什么clock? 一般测试程序执行时间可以用TSCH和TSCL两个寄存器。 使用参考如下: TSCL=0; //初始化为任意值使能TSC时钟计时 start = TSCL; FUNC(); end = TSCL; cycle = end – start;

TI 诚邀您参加全新设计的产品页面测试,参加测试即可享有 TI 购物 9 折优惠码,点击加入 EP产品页面测试报名,名额有限。感谢您的参与!

赞(0)
未经允许不得转载:TI中文支持网 » C6678接收Doorbell中断问题
分享到: 更多 (0)