[发明专利]一种消息信号中断处理的方法和装置有效
申请号: | 202010730717.7 | 申请日: | 2020-07-27 |
公开(公告)号: | CN112000596B | 公开(公告)日: | 2022-03-29 |
发明(设计)人: | 林涛 | 申请(专利权)人: | 瑞芯微电子股份有限公司 |
主分类号: | G06F13/16 | 分类号: | G06F13/16;G06F13/42 |
代理公司: | 福州市景弘专利代理事务所(普通合伙) 35219 | 代理人: | 林祥翔;郭鹏飞 |
地址: | 350003 福建省*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 消息 信号 中断 处理 方法 装置 | ||
本发明提供了一种消息信号中断处理的方法和装置,所述方法包括以下步骤:S1:处理进程分配一段缓存单元;S2:处理进程配置MSI页表中的命令队列信息;所述命令队列信息包括中断位信息;S3:接收端点设备发送的MSI请求,MSI页表根据所述命令队列信息逐个从所述端点设备回读数据并将读取的数据保存至所述缓存单元中;S4:待所述MSI页表读取到中断位信息后,MSI表项发送通知请求至处理单元;S5:处理单元接收通知请求,控制处理进程读取当前缓存单元中的数据。本申请通过MSI页表根据命令队列信息来读取数据,再根据中断位向处理单元发送请求,以使得处理单元控制处理进程一次性读取缓存的数据,有效的提升了数据读写效率。
技术领域
本发明涉及数据处理领域,尤其涉及一种消息信号中断处理的方法和装置。
背景技术
PCIE为了处理外设发起的大量中断,采用了MSI(x)机制(message signalinterrupt,消息信号中断),括号中的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中断服务程序,当MSI(x)触发之后,MSI页表需要向CPU发送中断信号,CPU调用该进程注册的MSI服务程序,该程序访问相关设备的PCIE的映射地址并发起一笔数据传输。在这个流程中,如果数据传输的数据量大,那么MSI(x)执行路径上的其他开销占比较小,都可以忽略不计。然而,当这笔传输的数据量较小时,也就意味着MSI(x)执行路径上的其他开销占比较高,导致数据传输的实时性较差。在一个不断触发小数据交互的系统中,MSI(x)的实时性问题就被放大。此外,如果多笔数据之间不存在前后依赖关系,那么相同MSI页表的bit位置的中断,其后一笔的MSI(x)触发需要等到前一笔MSI触发被CPU响应,效率更差。
发明内容
为此,需要提供一种消息信号中断处理的的技术方案,用以解决现有MSI(x)机制读写数据的方式效率差的问题。
为实现上述目的,本申请的第一方面提供一种消息信号中断处理的方法,所述方法包括以下步骤:
S1:处理进程分配一段缓存单元;所述缓存单元用于存储从端点设备读取的数据;
S2:处理进程配置MSI页表中的命令队列信息;所述命令队列信息包括中断位信息;
S3:接收端点设备发送的MSI请求,MSI页表根据所述命令队列信息逐个从所述端点设备回读数据并将读取的数据保存至所述缓存单元中;
S4:待所述MSI页表读取到中断位信息后,MSI表项发送通知请求至处理单元;
S5:处理单元接收通知请求,控制处理进程读取当前缓存单元中的数据。
进一步地,所述处理进程的数量为多个,每一处理进程对应分配一个与之相对应的缓存单元。
进一步地,所述处理进程包括第一处理进程和第二处理进程,所述第一处理进程为处理单元当前正在运行的处理进程;所述方法包括以下步骤:
当第一处理进程接收到处理单元的进程切换指令时,将处理单元当前正在运行的处理进程切换为第二处理进程;
步骤S5包括:处理单元接收第一通知请求,控制当前正在运行的处理进程读取当前缓存单元中的数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于瑞芯微电子股份有限公司,未经瑞芯微电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010730717.7/2.html,转载请声明来源钻瓜专利网。