以下内容摘自《步步惊芯——软核处理器内部设计分析》一书
16.3 可编程中断控制器PIC分析
16.3.1 PIC介绍
可编程中断控制器Programmable Interrupt Controller(PIC)用来响应各种中断事件,如:键盘事件、串口数据到达等,PIC收集所有的中断,并通知CPU中断到达,后者转入到中断处理例程进行处理。OR1200最多支持32个中断。其功能实现主要依靠两个特殊寄存器:中断屏蔽寄存器PICMR、中断状态寄存器PICSR。通过PICMR可以设置是否屏蔽某些中断,通过PICSR可以知道中断源的信息。PICMR、PICSR是第9组特殊寄存器,如表16.7所示。
中断屏蔽寄存器PICMR的格式如表16.8所示,该寄存器可读、可写。标志IUM中的值表示对应中断是否被屏蔽,IUM为0x0,表示所有中断都被屏蔽,IMU为0xFFFFFFFF,表示所有中断都没有被屏蔽。在OR1200中,IUM的位数可以配置,配置范围是2-31,这是因为IUM的最低两位始终保持为1,即中断源0、1设置为不可屏蔽,可以将这两个中断源对应为电源