一种适用于多核板卡的通用系统及方法技术方案

技术编号:21685785 阅读:34 留言:0更新日期:2019-07-24 14:35
本发明专利技术提供一种适用于多核板卡的通用系统及方法,提供了自动化配置工具对硬件资源进行配置,将应用所述通用系统的平台抽象出ARCH与BSP层,通过心跳包检测其他CPU是否正常运行,通过cache划分与通用寄存器设置消除了核间广播,可实现配置智能化,硬件平台的多样化,增加系统稳定性。

A General System and Method for Multi-core Cards

【技术实现步骤摘要】
一种适用于多核板卡的通用系统及方法
本专利技术涉及混合多系统领域,具体涉及一种适用于多核板卡的通用系统及方法。
技术介绍
随着嵌入式产品的更新升级,越来越多的功能被集中在同一块硬件之上,往往各个功能之间互相联系,互相影响。为了更好的处理实时性任务与非实时任务,混合多系统可以使任务分工更精细,灵活地适应不同情景。目前,公知的混合多系统为基于双核CPU的AMP(AcceleratedMobilePages,移动页面加速)技术,大多使用Linux与μCOS(Micro-controllerOperatingSystem,实时多任务操作系统)搭配实现,即CPU0运行Linux,CPU1运行μCOS。这种方法有较大的缺陷和不足:①消耗不必要的资源与时间需要提前在代码阶段划分好内存资源,规定所运行的CPU,重新编译后再进行加载工作。这些代码实现往往分布在不同内核组件中,修改时费事费力;②绑定硬件,大多只局限于ARM现有方法仅适用于ARM体系架构的双核处理器,随着功能复杂度增加,硬件处理器性能提升更换硬件无法适用,例如X86架构的intel处理器,四核ARMCortexA53的MPSOC处理器都无法适用。③复杂度高,维护困难在运行过程中无法判断其他CPU核是否正常运行,容易造成对应用提供数据、功能错误。④对系统中其他运行应用程序影响极大,造成实时性任务抖动如果其中一个CPU上的任务出现bug导致重启运行,那么另一个CPU将也被重启运行,这样会导致正常运行的CPU被重启;如果其中一个CPU上的任务进行大量的系统调用等进入内核特权态的操作,会对另一个CPU上任务的运行造成很大的抖动。
技术实现思路
为了克服上述应用程序使用的不足,本专利技术提供了一种适用于多核板卡的通用系统。该平台不仅减少核间相互干扰,而且提供了很多直接可用的功能组件,方便程序员使用。本专利技术技术方案如下:一种适用于多核板卡的通用系统,其特征在于,包括ARCH层与板级支持包BSP(BoardSupportPackage)层,自动化配置工具对应用所述通用系统的平台的资源进行修改,其中:主核CPU0运行Linux,其他CPU运行SylixOS,将SylixOS的编译链部署在Linux上,ARCH层与BSP层提供不同的镜像库,其中SylixOS为国产大型嵌入式实时操作系统;自动化配置工具对脚本进行修改,自动定位到配置代码处进行内存资源、CPU资源、中断资源、硬件架构等选择修改,编译后自动运行。进一步地,抽象出ARCH层与BSP层,其中,ARCH层与BSP层是操作系统为上层应用所提供通用接口设计的,在应用编写过程中,直接调用应用程序编程接口;当没有ARCH层与BSP层的具体实现时,应用调用的仅为空函数接口,当操作系统将ARCH层与BSP层的具体实现链接到编程接口时,应用程序完成调用即可。一种适用于多核板卡的通用系统的用户操作方法,其特征在于,包括如下步骤:用户启动程序,打开所述配置工具,选择架构与所述BSP,对硬件资源进行配置,自动编译所有CPU上的操作系统OS,从而启动应用所述通用系统的平台。一种适用于多核板卡的通用系统的运行方法,其特征在于,包括如下步骤:所述通用系统启动程序,打开所述配置工具,自动导入源码工程,自动寻找目录修改相关系统文件,自动编译所有CPU上的操作系统OS,从而启动应用所述通用系统的平台。一种适用于多核板卡的通用系统实现多核之间的独立重启的方法,其特征在于,包括如下步骤:当其中一个CPU上的任务出现bug导致重启运行时,由于提前通过配置文件进行了中断的绑定,即私有中断,需要启动从核时进行判断是否为异常重启,即非掉电重启;如果不是异常重启,则初始化所有硬件资源;如果是异常重启,则判断是否为所述CPU所用的资源,如果是所述CPU所用的资源,则初始化硬件资源;如果不是所述CPU所用的资源,则不做初始化操作,即不再重新初始化其他CPU上的操作系统资源,从而实现多核之间的独立重启,不影响其他CPU上任务的正常运行。进一步地,平台内部需提供心跳检测功能,用于判断其他CPU核是否正常运行;具体在于,所以所述CPU在正常运行的状态下,向其他CPU发送心跳包,所述其他CPU在收到所述心跳包后查询心跳数据,如果确认所述CPU正常运行,则继续进行所述心跳检测功能。对lastlevelcache进行划分处理,锁定于各个CPU之上,同时对硬件辅助寄存器进行操作,屏蔽由于转换检测缓冲区TLB(TranslationLookasideBuffer)一致性而产生的广播操作;如果其中一个CPU上的任务在进行大量的系统调用等进入内核特权态的操作时,其他CPU不会因此被影响。一种计算机可读存储介质,包括处理器和存储器,所述存储器中存储有计算机程序指令,所述计算机程序指令被所述处理器执行时,用以实现所述的方法。与现有技术相比,本专利技术的有益效果是:①使用方便,节约时间通过智能配置工具,轻松实现对硬件,资源的配额修改;可实现配置智能化,与硬件处理器多样化,满足足够多用户的使用场景。②硬件丰富通过对应用系统的平台的ARCH层与BSP层抽象,可以实现硬件平台的多样化,能够适配多种硬件平台。③智能检测软件完整性通过心跳检测功能,保证平台的健壮性以及完成性,保证上层应用正常运行。④稳定性强通过处理多核之间的影响如cachelock,广播屏蔽等操作保证平台稳定性。附图说明图1为本专利技术实施例中适用于多核板卡的通用系统的示意图。图2为本专利技术实施例中适用于多核板卡的通用系统的架构图。图3为本专利技术实施例中适用于多核板卡的通用系统的用户操作方法和平台运行方法的示意图。图4为本专利技术实施例中适用于多核板卡的通用系统实现多核之间的独立重启的流程图。图5为本专利技术实施例中适用于多核板卡的通用系统内部心跳检测的流程图。具体实施方式为了使本专利技术的专利技术目的、技术方案和有益技术效果更加清晰,以下结合实施例,对本专利技术进行进一步详细说明。应当理解的是,本说明书中描述的实施例仅仅是为了解释本专利技术,并能予以实施,但所举实施例不作为对本专利技术的限定。实施例1如图1和图2所示,本专利技术实施例中适用于多核板卡的通用系统,其特征在于,包括ARCH层与板级支持包BSP(BoardSupportPackage)层,自动化配置工具对应用所述通用系统的平台的资源进行修改,其中:主核和从核可以是任意操作系统,图1中的主核和从核均为SylixOS,所述主核和从核均包括通用异步收发传输器URAR1、媒体访问控制MAC、嵌入式多媒体卡eMMC和寄存器CACHE;硬件公有部分包括中断控制器GIC和片上存储器OCM。以下以主核运行Linux,其他核CPU运行SylixOS为例,其中SylixOS为国产大型嵌入式实时操作系统;主核CPU0运行Linux,其他核CPU运行SylixOS,将SylixOS的编译链部署在Linux上,ARCH层与BSP层提供不同的镜像库;自动化配置工具对脚本进行修改,自动定位到配置代码处对内存资源、CPU资源、中断资源、硬件架构选择修改,编译后自动运行。抽象出ARCH层与BSP层,其中,ARCH层与BSP层是操作系统为上层应用所提供通用接口设计的,在应用编写过程中,直接调用应用程序编程接口;当没有ARCH层与BSP层的具体实现时,本文档来自技高网
...

【技术保护点】
1.一种适用于多核板卡的通用系统,其特征在于,包括ARCH层与板级支持包BSP层,自动化配置工具对应用所述通用系统的平台的资源进行修改,其中:主核CPU0运行Linux,其他CPU运行SylixOS,将SylixOS的编译链部署在Linux上,ARCH层与BSP层提供不同的镜像库,其中SylixOS为国产大型嵌入式实时操作系统;自动化配置工具对脚本进行修改,自动定位到配置代码处对内存资源、CPU资源、中断资源、硬件架构选择修改,编译后自动运行。

【技术特征摘要】
1.一种适用于多核板卡的通用系统,其特征在于,包括ARCH层与板级支持包BSP层,自动化配置工具对应用所述通用系统的平台的资源进行修改,其中:主核CPU0运行Linux,其他CPU运行SylixOS,将SylixOS的编译链部署在Linux上,ARCH层与BSP层提供不同的镜像库,其中SylixOS为国产大型嵌入式实时操作系统;自动化配置工具对脚本进行修改,自动定位到配置代码处对内存资源、CPU资源、中断资源、硬件架构选择修改,编译后自动运行。2.根据权利要求1所述的适用于多核板卡的通用系统,其特征在于,抽象出ARCH层与BSP层,其中,ARCH层与BSP层是操作系统为上层应用所提供通用接口设计的,在应用编写过程中,直接调用应用程序编程接口;当没有ARCH层与BSP层的具体实现时,应用调用的仅为空函数接口,当操作系统将ARCH层与BSP层的具体实现链接到编程接口时,应用程序完成调用。3.一种应用如权利要求1-2任一项的所述适用于多核板卡的通用系统的用户操作方法,其特征在于,包括如下步骤:用户启动程序,打开所述配置工具,选择架构与所述BSP,对硬件资源进行配置,自动编译所有CPU上操作系统OS,从而启动应用所述通用系统的平台。4.一种应用如权利要求1-2任一项的所述适用于多核板卡的通用系统的运行方法,其特征在于,包括如下步骤:所述通用系统启动程序,打开所述配置工具,自动导入源码工程,自动寻找目录修改相关系统文件,自动编译所有CPU上的操作系统OS,从而启动应用所述通用系统的平台。5.一种应用如权利要求1-...

【专利技术属性】
技术研发人员:弓羽箭李孝成闫佳伟陈健王翾王东方焦进星韩辉
申请(专利权)人:北京翼辉信息技术有限公司
类型:发明
国别省市:北京,11

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

1