一种消息信号中断处理的方法和装置制造方法及图纸

技术编号:26504580 阅读:20 留言:0更新日期:2020-11-27 15:32
本发明专利技术提供了一种消息信号中断处理的方法和装置,所述方法包括以下步骤:S1:处理进程分配一段缓存单元;S2:处理进程配置MSI页表中的命令队列信息;所述命令队列信息包括中断位信息;S3:接收端点设备发送的MSI请求,MSI页表根据所述命令队列信息逐个从所述端点设备回读数据并将读取的数据保存至所述缓存单元中;S4:待所述MSI页表读取到中断位信息后,MSI表项发送通知请求至处理单元;S5:处理单元接收通知请求,控制处理进程读取当前缓存单元中的数据。本申请通过MSI页表根据命令队列信息来读取数据,再根据中断位向处理单元发送请求,以使得处理单元控制处理进程一次性读取缓存的数据,有效的提升了数据读写效率。

【技术实现步骤摘要】
一种消息信号中断处理的方法和装置
本专利技术涉及数据处理领域,尤其涉及一种消息信号中断处理的方法和装置。
技术介绍
PCIE为了处理外设发起的大量中断,采用了MSI(x)机制(messagesignalinterrupt,消息信号中断),括号中的x表示extended,是一种扩展,MSI(x)和MSI两者实质相同。该方法是Soc将触发MSI中断的MMIO地址配置到EP设备(即端点设备)中,当EP设备希望RC(即主机控制器)过来读写数据时,EP采用内存写入方式写该MMIO地址的某一个bit中断位,那么即在SOC产生了一个MSI(X)中断,该bit中断所属的进程所注册的服务程序对EP设备发起数据读写。由于MSI的地址是按页管理(需要分配一个内存页,table),以32位系统为例,理论上EP设备可以在SOC同时触发32个MSI(X)中断。MSI(x)机制解决了中断并发问题,实现了各个中断的无锁化并行处理,使得系统效率大增。但是在某种应用场合下,MSI(x)技术却成为了系统整体的性能瓶颈。例如,如果进程注册了MSI页表的某个bit的MSI中断服本文档来自技高网...

【技术保护点】
1.一种消息信号中断处理的方法,其特征在于,所述方法包括以下步骤:/nS1:处理进程分配一段缓存单元;所述缓存单元用于存储从端点设备读取的数据;/nS2:处理进程配置MSI页表中的命令队列信息;所述命令队列信息包括中断位信息;/nS3:接收端点设备发送的MSI请求,MSI页表根据所述命令队列信息逐个从所述端点设备回读数据并将读取的数据保存至所述缓存单元中;/nS4:待所述MSI页表读取到中断位信息后,MSI表项发送通知请求至处理单元;/nS5:处理单元接收通知请求,控制处理进程读取当前缓存单元中的数据。/n

【技术特征摘要】
1.一种消息信号中断处理的方法,其特征在于,所述方法包括以下步骤:
S1:处理进程分配一段缓存单元;所述缓存单元用于存储从端点设备读取的数据;
S2:处理进程配置MSI页表中的命令队列信息;所述命令队列信息包括中断位信息;
S3:接收端点设备发送的MSI请求,MSI页表根据所述命令队列信息逐个从所述端点设备回读数据并将读取的数据保存至所述缓存单元中;
S4:待所述MSI页表读取到中断位信息后,MSI表项发送通知请求至处理单元;
S5:处理单元接收通知请求,控制处理进程读取当前缓存单元中的数据。


2.如权利要求1所述的消息信号中断处理的方法,其特征在于,所述处理进程的数量为多个,每一处理进程对应分配一个与之相对应的缓存单元。


3.如权利要求2所述的消息信号中断处理的方法,其特征在于,所述处理进程包括第一处理进程和第二处理进程,所述第一处理进程为处理单元当前正在运行的处理进程;所述方法包括以下步骤:
当第一处理进程接收到处理单元的进程切换指令时,将处理单元当前正在运行的处理进程切换为第二处理进程;
步骤S5包括:处理单元接收第一通知请求,控制当前正在运行的处理进程读取当前缓存单元中的数据。


4.如权利要求1所述的消息信号中断处理的方法,其特征在于,所述中断位信息为多个,包括第一中断位信息和第二中断位信息;所述处理进程包括第一处理进程和第二处理进程;
步骤S4包括:MSI页表读取到第一中断位信息后,MSI表项发送第一通知请求至处理单元;MSI页表读取到第二中断位信息后,MSI表项发送第二通知请求至处理单元;
步骤S5包括:处理单元接收第一通知请求,控制第一处理进程读取当前缓存单元中的数据;以及接收第二通知请求,控制第二处理进程读取当前缓存单元中的数据。


5.如权利要求4所述的消...

【专利技术属性】
技术研发人员:林涛
申请(专利权)人:瑞芯微电子股份有限公司
类型:发明
国别省市:福建;35

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

1