soc 电平信号
回帖(1)
2020-12-15 16:49:19
应该把中断请求看作一次握手,req asserts,在ack没有来之前,req 不能deasserts, 否则可能造成混乱。
具体的,如果intr高有效,应一直为高,直到cpu 响应这个请求,ISR执行某个操作(读/写对应状态标志)intr deasserts。
为什么说,脉冲信号可能造成混乱,举例来说,在某个时间段内,如果外设频繁的向cpu发出请求脉冲,NVIC中断向量嵌套可能会处理前几个请求,将其记录下来,然后一个一个处理,但记录的个数毕竟是有限的,如果超过临界范围,脉冲中断请求就是无效的,直接被忽略。
这个问题应该和理解握手流程联系起来,特别要区分partial handshake 和full handshake的差别,对应不同的应用场景。
应该把中断请求看作一次握手,req asserts,在ack没有来之前,req 不能deasserts, 否则可能造成混乱。
具体的,如果intr高有效,应一直为高,直到cpu 响应这个请求,ISR执行某个操作(读/写对应状态标志)intr deasserts。
为什么说,脉冲信号可能造成混乱,举例来说,在某个时间段内,如果外设频繁的向cpu发出请求脉冲,NVIC中断向量嵌套可能会处理前几个请求,将其记录下来,然后一个一个处理,但记录的个数毕竟是有限的,如果超过临界范围,脉冲中断请求就是无效的,直接被忽略。
这个问题应该和理解握手流程联系起来,特别要区分partial handshake 和full handshake的差别,对应不同的应用场景。
举报
更多回帖