《朱老师物联网大讲堂》学习笔记
学习地址:www.zhulaoshi.org
为什么需要中断,因为单核CPU实际无法并行,
但是通过中断机制,可以实现假并行,
宏观上的并行,微观上实际还是串行。
SOC对中断的实现机制,异常向量表,
异常向量表是CPU中某些特定地址的特定定义。
在CPU设计时,就事先定义了CPU中的一些特定地址作为异常的入口地址,
在发生异常时,CPU会以硬件实现的方式自动跳转到事先设定的地址去执行指令。
以上是CPU硬件设计时对异常向量表的支持,接下来就需要软件支持了,
硬件已经决定了发生什么异常CPU会自动跳转PC到哪个地址去执行,
软件需要做的是把处理这个异常的代码的首地址填入这个异常向量地址。
异常向量表中各个向量的相对位置是固定的,但是它们的起始地址是不固定的,
各种SOC可以不一样,而且复杂ARM中还可以让用户来软件设置这个异常向量表的基地址。
异常和中断的区别和联系,
发生复位,软中断,中断,快速中断,取指令异常,数据异常等,
我们都统一叫异常,
所以中断其实是异常的一种,
异常的定义就是突发事件,打断了CPU的正常常规业务,CPU不得不跳转到异常向量表中去执行异常处理程序。