基于设备树的多核共享外设芯片资源互斥方法及装置与流程
- 国知局
- 2024-09-05 14:27:07
本发明涉及装置运行,尤其涉及基于设备树的多核共享外设芯片资源互斥方法及装置。
背景技术:
1、在嵌入式领域中,随着对处理器的计算能力的需求越来越高,根据摩尔定律,通过提升集成电路的规模和工艺,来达到提升单个中央处理器(central processing unit,cpu)性能的进程会变得越来越缓慢。面临单一的性能难提升的问题,并行计算应运而生,使用多个cpu可以提高计算性能。
2、在嵌入式领域中,既需要实时性,又需要有强大的应用和用户界面(userinterface,ui),就需要在多核处理器中运行不同的系统或裸机,这就需要不同的cpu使用对应的外设。因此,在同一个芯片中,有很多共享外设资源,但是在传统的amp(asymmetricmulti-processing,非对称多进程处理)模式中,芯片共享外设资源需要人工操作初始化外设,导致多个cpu都初始化了同一个共享外设资源,就容易触发多个cpu同时访问同一个共享外设资源,进而触发系统异常。
技术实现思路
1、本发明的目的是针对上述现有的相关技术的不足,提出基于设备树的多核共享外设芯片资源互斥方法及装置,通过对共享的外设资源之间的互斥,从而提高系统安全性。
2、第一方面,本发明提供了一种基于设备树的多核共享外设芯片资源互斥方法,包括:
3、在同一个设备树中,依次为多个共享外设芯片资源配置初始化状态标识,得到设备树配置结果;所述初始化状态标识用于确定初始化对应共享外设芯片资源的处理器;
4、在非对称多进程处理模式下,由n个处理器依次读取所述设备树配置结果,在每个处理器读取所述设备树配置结果时,依次判断处理器是否与所述多个共享外设芯片资源的初始化状态标识匹配;n为不小于2的正整数;
5、若所述处理器与一个共享外设芯片资源的初始化状态标识匹配,则由所述处理器为对应的共享外设芯片资源进行初始化;
6、直到所述n个处理器均初始化完对应的共享外设芯片资源后,对所述多个共享外设芯片资源进行互斥访问。
7、本发明采用在同一个设备树中配置所有的共享外设芯片资源,每个处理器访问相同的设备树配置结果,从而提高为每个处理器单独配置设备树的效率,且统一配置一个设备树还利于提高设备树的配置修改效率,能够间接提高共享外设芯片资源的初始化效率,以及便于在初始化时,只由配置的处理器进行初始化,使得共享外设芯片设备只受一次初始化,从而能够避免冲突访问;并且,通过初始化状态标识来识别每个处理器待初始化的共享外设芯片资源,能够避免人工操作初始化共享外设芯片资源,从而直接提高共享外设芯片资源的初始化效率,以及避免共享外设芯片资源的冲突访问,减少系统异常,进而提高系统安全性。
8、进一步,所述在同一个设备树中,依次为多个共享外设芯片资源配置初始化状态标识,得到设备树配置结果,包括:
9、在同一个设备树中,依次为多个共享外设芯片资源配置使能标识和处理器标识,以所述使能标识和所述处理器标识为初始化状态标识,得到配置完成的设备树配置结果;所述使能标识用于标识是否初始化;所述处理器标识用于标识操作对象。
10、本发明采用通过使能标识判断共享外设芯片设备是否需要初始化,以及通过处理器标识来判断共享外设芯片设备需要初始化时的操作对象,有利于在初始化时,过滤无需初始化的共享外设芯片设备以及匹配出目标待初始化的共享外设芯片,从而有利于每个处理器在一个设备树配置结果中快速且准确地为目标共享外设芯片进行初始化,也有利于对修改后的设备树配置结果进行初始化时,只对未初始化的设备进行初始化,大大避免人工初始化操作,以空间换取时间来提高初始化效率。
11、进一步,所述依次判断处理器是否与所述多个共享外设芯片资源的初始化状态标识匹配,包括:
12、判断每个共享外设芯片资源的使能标识是否为确定能使,若所述使能标识为确认使能,再判断共享外设芯片资源的初始化状态标识是否与当前访问的处理器匹配,以使根据匹配结果,为对应的共享外设芯片资源进行初始化,直到当前访问数据的处理器对所述多个共享外设芯片资源完成读取。
13、进一步,在所述得到配置完成的设备树配置结果之后,包括:
14、将所述设备树配置结果进行编译,得到编译文件,并将所述编译文件分别链接到n个处理器的代码中,以使所述n个处理器均访问相同的编译文件。
15、进一步,所述在同一个设备树中,依次为多个共享外设芯片资源配置初始化状态标识,得到设备树配置结果,还包括:
16、在配置完所述初始化状态标识后,在所述初始化状态标识的配置语句前,添加中断标识,通过配置所述中断标识和所述初始化状态标识,得到配置完成的设备树配置结果。
17、进一步,所述对所述多个共享外设芯片资源进行互斥访问,包括:
18、对所述n个处理器分别运行对应的独立实时操作系统,通过所述独立实时操作系统,以使每个处理器访问对应的共享外设芯片资源。
19、第二方面,本发明提供了一种基于设备树的多核共享外设芯片资源互斥装置,包括:配置模块、读取与匹配模块、初始化模块和互斥访问模块;其中,
20、所述配置模块,用于在同一个设备树中,依次为多个共享外设芯片资源配置初始化状态标识,得到设备树配置结果;所述初始化状态标识用于确定初始化对应共享外设芯片资源的处理器;
21、所述读取与匹配模块,用于在非对称多进程处理模式下,由n个处理器依次读取所述设备树配置结果,在每个处理器读取所述设备树配置结果时,依次判断处理器是否与所述多个共享外设芯片资源的初始化状态标识匹配;n为不小于2的正整数;
22、所述初始化模块,用于若所述处理器与一个共享外设芯片资源的初始化状态标识匹配,则由所述处理器为对应的共享外设芯片资源进行初始化;
23、所述互斥访问模块,用于直到所述n个处理器均初始化完对应的共享外设芯片资源后,对所述多个共享外设芯片资源进行互斥访问
24、进一步,所述在同一个设备树中,依次为多个共享外设芯片资源配置初始化状态标识,得到设备树配置结果,包括:
25、在同一个设备树中,依次为多个共享外设芯片资源配置使能标识和处理器标识,以所述使能标识和所述处理器标识为初始化状态标识,得到配置完成的设备树配置结果;所述使能标识用于标识是否初始化;所述处理器标识用于标识操作对象。
26、进一步,在所述得到配置完成的设备树配置结果之后,包括:
27、将所述设备树配置结果进行编译,得到编译文件,并将所述编译文件分别链接到n个处理器的代码中,以使所述n个处理器均访问相同的编译文件。
28、进一步,所述在同一个设备树中,依次为多个共享外设芯片资源配置初始化状态标识,得到设备树配置结果,还包括:
29、在配置完所述初始化状态标识后,在所述初始化状态标识的配置语句前,添加中断标识,通过配置所述中断标识和所述初始化状态标识,得到配置完成的设备树配置结果。
本文地址:https://www.jishuxx.com/zhuanli/20240905/286512.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表