一种用于保护现场和恢复现场的中断处理模块制造技术

技术编号:33290596 阅读:19 留言:0更新日期:2022-05-01 00:08
本发明专利技术公开了一种用于保护现场和恢复现场的中断处理模块,包括DMA读写指令产生单元、DMA单元、处理器内核内部寄存器访问单元,DMA读写指令产生单元连接DMA单元,DMA单元与处理器内核内部寄存器访问单元、内存双向连接,处理器内核内部寄存器访问单元与处理器内核内部寄存器双向连接。本发明专利技术通过处理器内核内部寄存器访问单元和DMA单元的相互配合,实现处理器内核内部寄存器与内存之间的数据搬移,无需将通用寄存器作为搬移数据的桥梁,节约了保护现场和恢复现场所需时间,同时减少了保护现场和恢复现场的代码体积。场和恢复现场的代码体积。场和恢复现场的代码体积。

【技术实现步骤摘要】
一种用于保护现场和恢复现场的中断处理模块


[0001]本专利技术涉及处理器中断处理
,尤其是一种用于保护现场和恢复现场的中断处理模块。

技术介绍

[0002]发生中断时,处理器会将当前状态下处理器内核内部寄存器中的数据保存至内存中,本申请将处理器的这一行为称之为“保护现场”。现有技术的处理器保护现场的过程:1、处理器将其内核内部控制寄存器及状态寄存器中的数据取出并保存至通用寄存器;2、处理器再将通用寄存器中的数据保存至内存。
[0003]中断处理结束时,处理器会将内存中需要恢复的数据恢复至处理器内核内部对应的寄存器,本申请将处理器的这一行为称之为“恢复现场”。现有技术的处理器恢复现场的过程:1、处理器将内存中的待恢复数据取出并保存至处理器内核内部通用寄存器;2、处理器再将通用寄存器中的待恢复数据恢复至处理器内核内部对应的控制寄存器和状态寄存器。
[0004]据此,现有技术的处理器保护/恢复现场的过程,均将通用寄存器作为控制/状态寄存器与内存之间搬移数据的桥梁。若能直接实现控制/状态寄存器与内存之间的数据搬移,便节约了保护现场时从控制/状态寄存器到通用寄存器传输数据所需时间,以及恢复现场时从通用寄存器到控制/状态寄存器传输数据所需时间,大大缩短保护现场和恢复现场所需时间,同时减少保护现场和恢复现场的代码体积。

技术实现思路

[0005]针对现有处理器中断处理技术存在的上述问题,本专利技术提供了一种用于保护现场和恢复现场的中断处理模块,能够减少代码体积,缩短保护现场和恢复现场所需时间
[0006]一种用于保护现场和恢复现场的中断处理模块,包括DMA读写指令产生单元、DMA单元、处理器内核内部寄存器访问单元,DMA读写指令产生单元连接DMA单元,DMA单元与处理器内核内部寄存器访问单元、内存双向连接,处理器内核内部寄存器访问单元与处理器内核内部寄存器双向连接;
[0007]DMA读写指令产生单元,用于根据DMA读/写汇编指令,向DMA单元发送DMA读/写启动指令;
[0008]DMA单元,用于接收DMA读/写启动指令,启动DMA读/写操作;DMA写操作是指处理器内核内部寄存器访问单元将处理器内核内部寄存器中的待保护数据读取出来,返回至DMA单元,由DMA单元写入内存;DMA读操作是指DMA单元将内存中的待恢复数据读取出来,由处理器内核内部寄存器访问单元写入对应的处理器内核内部寄存器;
[0009]处理器内核内部寄存器访问单元,用于配合DMA单元进行处理器内核内部寄存器中数据的读取和恢复,其中处理器内核内部寄存器统一编地址且地址空间连续。
[0010]进一步的,DMA单元启动DMA写操作包括向处理器内核内部寄存器访问单元发送取
数据命令,以及向内存发送写数据命令;DMA单元启动DMA读操作包括向内存发送读数据命令,以及向处理器内核内部寄存器访问电路发送数据恢复命令。
[0011]进一步的,用于保护现场和恢复现场的中断处理模块的具体工作流程包括如下步骤:
[0012]步骤1,发生中断时,处理器跳转至中断入口,执行DMA写汇编指令,开始保护现场;
[0013]步骤2,DMA写汇编指令触发DMA读写指令产生单元置位dma_wr_start标志;
[0014]步骤3,DMA单元监测到dma_wr_start标志,启动DMA写操作,将取数据命令发送至处理器内核内部寄存器访问单元,取数据命令中包含寄存器读指令及寄存器读地址;
[0015]步骤4,处理器内核内部寄存器访问单元接收到取数据命令后,根据取数据命令中的寄存器读地址,将对应地址的寄存器中的数据返回至DMA单元;
[0016]步骤5,DMA单元将接收到的数据写入内存;
[0017]步骤6,判断保护现场是否结束,若结束,则进入步骤7,否则跳转至步骤4;
[0018]步骤7,DMA读写指令产生单元清除dma_wr_start标志,处理器开始处理中断;
[0019]步骤8,处理器处理中断结束后,执行DMA读汇编指令,开始恢复现场;
[0020]步骤9,DMA读汇编指令触发DMA读写指令产生单元置位dma_rd_start标志;
[0021]步骤10,DMA单元监测到dma_rd_start标志,启动DMA读操作;
[0022]步骤11,DMA单元将内存中的待恢复数据读取出来,并向处理器内核内部寄存器访问单元发送数据恢复命令,数据恢复命令中包含寄存器写指令、寄存器写地址及寄存器写数据;
[0023]步骤12,处理器内核内部寄存器访问单元接收到数据恢复命令后,根据数据恢复命令中的寄存器写地址,将待恢复数据恢复至对应地址的寄存器;
[0024]步骤13,判断恢复现场是否结束,若结束,则进入步骤14,否则跳转至步骤11;
[0025]步骤14,DMA读写指令产生单元清除dma_rd_start标志,处理器执行中断返回指令,退出中断。
[0026]进一步的,处理器内核内部寄存器访问单元包含寄存器归约单元,寄存器归约单元用于将所有处理器内核内部寄存器的数据及数据有效信号统一归约成x路数据及数据有效信号,其中x为小于处理器内核内部寄存器数量的正整数;
[0027]处理器内核内部寄存器访问单元再从寄存器归约单元归约成的x路数据及数据有效信号中选出有效数据及数据有效信号,返回至DMA单元,其中数据有效信号为寄存器归约电路归约成的x路数据有效信号的逻辑或,有效数据利用寄存器归约电路归约成的x路数据有效信号,从寄存器归约电路归约成的x路数据中选出。
[0028]本专利技术通过处理器内核内部寄存器访问单元和DMA单元的相互配合,实现处理器内核内部寄存器与内存之间的数据搬移,无需将通用寄存器作为搬移数据的桥梁,节约了保护现场和恢复现场所需时间,同时减少了保护现场和恢复现场的代码体积。
附图说明
[0029]图1是用于保护现场和恢复现场的中断处理模块的结构框图及信号流图;
[0030]图2是用于保护现场和恢复现场的中断处理模块的具体工作流程图;
[0031]图3是现有技术与本专利技术两种处理器中断处理方式的代码体积对比图。
具体实施方式
[0032]下面结合附图和具体实施方式对本专利技术作进一步详细的说明。本专利技术的实施例是为了示例和描述起见而给出的,而并不是无遗漏的或者将本专利技术限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显而易见的。选择和描述实施例是为了更好说明本专利技术的原理和实际应用,并且使本领域的普通技术人员能够理解本专利技术从而设计适于特定用途的带有各种修改的各种实施例。
[0033]实施例1
[0034]一种用于保护现场和恢复现场的中断处理模块,如图1所示,包括DMA读写指令产生单元、DMA单元、处理器内核内部寄存器访问单元,DMA读写指令产生单元连接DMA单元,DMA单元与处理器内核内部寄存器访问单元、内存双向连接,处理器内核内部寄存器访问单元与处理器内本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于保护现场和恢复现场的中断处理模块,其特征在于,包括DMA读写指令产生单元、DMA单元、处理器内核内部寄存器访问单元,DMA读写指令产生单元连接DMA单元,DMA单元与处理器内核内部寄存器访问单元、内存双向连接,处理器内核内部寄存器访问单元与处理器内核内部寄存器双向连接;DMA读写指令产生单元,用于根据DMA读/写汇编指令,向DMA单元发送DMA读/写启动指令;DMA单元,用于接收DMA读/写启动指令,启动DMA读/写操作;DMA写操作是指处理器内核内部寄存器访问单元将处理器内核内部寄存器中的待保护数据读取出来,返回至DMA单元,由DMA单元写入内存;DMA读操作是指DMA单元将内存中的待恢复数据读取出来,由处理器内核内部寄存器访问单元写入对应的处理器内核内部寄存器;处理器内核内部寄存器访问单元,用于配合DMA单元进行处理器内核内部寄存器中数据的读取和恢复,其中处理器内核内部寄存器统一编地址且地址空间连续。2.根据权利要求1所述的用于保护现场和恢复现场的中断处理模块,其特征在于,DMA单元启动DMA写操作包括向处理器内核内部寄存器访问单元发送取数据命令,以及向内存发送写数据命令;DMA单元启动DMA读操作包括向内存发送读数据命令,以及向处理器内核内部寄存器访问电路发送数据恢复命令。3.根据权利要求2所述的用于保护现场和恢复现场的中断处理模块,其特征在于,具体工作流程包括如下步骤:步骤1,发生中断时,处理器跳转至中断入口,执行DMA写汇编指令,开始保护现场;步骤2,DMA写汇编指令触发DMA读写指令产生单元置位dma_wr_start标志;步骤3,DMA单元监测到dma_wr_start标志,启动DMA写操作,将取数据命令发送至处理器内核内部寄存器访问单元,取数据命令中包含寄存器读指令及寄存器读地址;步骤4,处理器内核内部寄存器访问单元接收到取数据命...

【专利技术属性】
技术研发人员:刘金良李泉泉韩琼磊顾大晔肖贞杰
申请(专利权)人:安徽芯纪元科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1