大家好,
我的环境:C6670、CCSv5.3、SYS/BIOSv6.33.6.50、XDCToolsv3.23.4.60
*********************************************************************************************
工程中,有两个中断
1. GPIO中断,每3ms到来1次。
在cfg文件中,静态配置了中断处理如下所示,
//GPIOpulse->GPIO12->Event86->hwi4 var hwi0Params = new Hwi.Params(); hwi0Params.instance.name = "hwi4"; hwi0Params.eventId = 86; Program.global.hwi4 = Hwi.create(4, "&gpio_pulse_ISR", hwi0Params);
2. 以太网MAC帧中断,随机到来。在代码中,打开了一个High_Priority_Queue作为Rx Queue,如下
gRxQHnd = Qmss_queueOpen (Qmss_QueueType_HIGH_PRIORITY_QUEUE, 704+corenum, &isAllocated))
然后,在配置了accumulator去检测这个Rx Queue。最后,通过EventCombiner_dispatchPlug去挂上中断处理函数,如下
eventId =48; EventCombiner_dispatchPlug (eventId, (EventCombiner_FuncPtr)SGMII_ISR_arg, (UArg)NULL, TRUE);
而在cfg文件中,event1(48/32=1)被接入到了Hwi8上了,如下所示,
ECM.eventGroupHwiNum[1] = 8;
*********************************************************************************************
我的问题是:
1. 假如GPIO中断和MAC帧中断,同时到来,那么MAC帧中断是否会丢失?MAC帧中断的处理函数是不是不会响应?
2. 按照SYS/BIOS文档,Hwi好像没有优先级,一个Hwi会被任何Hwi给抢占。那么C66x CPU and Instruction文档中的下图中的INT4~INT15的优先级怎么解释?
Hwi跟Core的INT4~INT15有何关系?
3. eventID4、eventID5的两个event都combiner到event1,然后挂到了Hwi8,那么如果event4和event5同时到来的话,会有一个中断丢失导致一个中断处理函数不会响应吗?
Feng Jin:
求助!
Feng Jin:
回复 Feng Jin:
求助!