多芯片初始化方法及装置制造方法及图纸

技术编号:18670132 阅读:28 留言:0更新日期:2018-08-14 21:00
本发明专利技术提供了多芯片初始化方法及装置,其中该方法包括:根据各芯片在初始化进程中不同任务之间的依赖关系确定当前可初始化任务,其中,该当前可初始化任务独立于其他初始化任务;以同一时间作为初始化起点,对该当前可初始化任务进行初始化处理;清除该当前可初始化任务的依赖关系,确定待初始化任务中的下一可初始化任务,直至所有待初始化任务都完成初始化。通过本发明专利技术,解决了相关技术中不支持不同类型芯片的问题,提高多芯片并行初始化的程度。

Multi chip initialization method and device

The invention provides a multi-chip initialization method and apparatus, wherein the method comprises: determining a current initializable task according to the dependency between different tasks in the initialization process of each chip, wherein the current initializable task is independent of other initializable tasks; and taking the same time as the initialization starting point, determining the current initializable task according to the dependency between different tasks in the initialization process of each chip; Pre-initializable tasks are initialized; the dependencies of the currently initializable tasks are cleared, and the next initializable task in the task to be initialized is determined until all the tasks to be initialized are initialized. The invention solves the problem that different types of chips are not supported in the related technology, and improves the degree of parallel initialization of multiple chips.

【技术实现步骤摘要】
多芯片初始化方法及装置
本专利技术涉及数据网络通信领域,尤其是涉及到多芯片初始化方法及装置。
技术介绍
大型分布式通信设备上电时通常需要启动多个处理器,每个处理器都要初始化不同种类的芯片,且不同种类的芯片初始化流程也不一样。每种芯片的初始化流程分为多个阶段,这些阶段之间有一定的依赖关系,导致不同种类的芯片无法进行完全独立的并行初始化。同时,由于每个处理器负责初始化的芯片种类和关系各不相同,而这种依赖关系并非是静态不变的,它随着内部协作关系变化而变化,不能通过固定的芯片并行初始化流程来解决。相关技术中,为了避免芯片初始化失败降低系统可靠性的问题,大多数设备都采用串行方式进行初始化。然而在芯片非常多的情况下采用串行初始化方案会导致设备上电耗时过长。相关并行初始化技术只对同种类没有依赖关系的芯片适用,没有解决不同种类芯片之间的依赖问题,因而只能在一定范围内进行并行初始化处理。针对相关技术中不支持不同类型芯片并行初始化的问题,现有技术还未提出有效的解决方案。
技术实现思路
本专利技术的目的在于提供了芯片初始化方法及装置,解决了相关技术中不支持不同类型芯片并行初始化的问题。根据本专利技术的一个方面,提供一种多芯片初始化方法,包括:根据各芯片在初始化进程中不同任务之间的依赖关系确定当前可初始化任务,其中,该当前可初始化任务独立于其他初始化任务;以同一时间作为初始化起点,对该当前可初始化任务进行初始化处理;清除该当前可初始化任务的依赖关系,确定待初始化任务中的下一可初始化任务,直至所有待初始化任务都完成初始化。进一步,在根据各芯片在初始化进程中不同任务之间的依赖关系确定当前可初始化任务之前,该方法还包括:解析预设的依赖关系配置文件;从该解析结果中获取该依赖关系。进一步,在根据各芯片在初始化进程中不同任务之间的依赖关系确定当前可初始化任务之后,该方法还包括:判断该依赖关系是否包括预设的需调整依赖关系,其中,该需调整依赖关系包括循环依赖和错误依赖;在判断结果为是的情况下,调整该依赖关系。进一步,该清除该当前可初始化任务的依赖关系包括:判断是否存在处于依赖于已初始化状态的当前可初始化任务;在判断结果为是的情况下,清除关于该当前可初始化任务的依赖关系。进一步,该依赖关系包括:可初始化任务依赖于多个初始化任务。根据本专利技术的另一方面,提供一种多芯片初始化装置,包括:确定模块,用于根据各芯片在初始化进程中不同任务之间的依赖关系确定当前可初始化任务;其中,该当前可初始化任务独立于其他初始化任务;初始化模块,用于以同一时间作为初始化起点,对该当前可初始化任务进行初始化处理;清除模块,用于清除该当前可初始化任务的依赖关系,确定待初始化任务中的下一可初始化任务,直至所有待初始化任务都完成初始化。进一步,该多芯片初始化装置还包括:解析模块,用于解析预设的依赖关系配置文件;获取模块,用于从该解析结果中获取该依赖关系。进一步,该装置还包括:判断模块,用于判断该依赖关系是否包括预设的需调整依赖关系,其中,该需调整依赖关系包括循环依赖和错误依赖;调整模块,用于在判断结果为是的情况下,调整该依赖关系。进一步,该清除模块包括:判断单元,用于判断是否存在处于依赖于已初始化状态的当前可初始化任务;清除单元,用于在判断结果为是的情况下,清除关于该当前可初始化任务的依赖关系。进一步,该依赖关系包括:可初始化任务依赖于多个初始化任务。通过本专利技术,采用通过定制生成依赖关系表的依赖配置文件,并根据依赖关系表的动态更新决定并行启动哪些芯片初始化任务的技术方案,解决了相关技术中不支持不同类型芯片的问题,提高多芯片并行初始化的程度。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1是根据本专利技术实施例的多芯片初始化方法的流程图;图2是根据本专利技术实施例的多芯片初始化装置的结构框图;图3是根据本专利技术优选实施例的多芯片初始化装置的结构框图一;图4是根据本专利技术优选实施例的多芯片初始化装置的结构框图二;图5是根据本专利技术优选实施例的多芯片初始化装置的结构框图三。具体实施方式下文中将参考附图并结合实施例来详细说明本专利技术。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。在本实施例中提供了一种多芯片初始化方法及装置,图1是根据本专利技术实施例的多芯片初始化方法的流程图,如图1所示,该流程包括如下步骤:步骤S102,根据各芯片在初始化进程中不同任务之间的依赖关系确定当前可初始化任务;其中,所述当前可初始化任务独立于其他初始化任务。上述依赖关系包括一对一的依赖关系,也包括一对多的依赖关系,也即一初始化任务依赖于多个初始化任务。使用任务(work)描述芯片初始化的各个阶段。多芯片初始化流程中首先启动设备,创建芯片初始化管理线程,读取依赖关系配置文件,其中该依赖关系配置文件包括各芯片在初始化进程中不同任务之间的依赖关系。遍历上述依赖关系,确定独立于其他初始化任务的可初始化任务,该当前可初始化任务不依赖于其他初始化任务。优选地,检查上述确定的依赖关系,确保没有循环依赖或错误依赖。所谓循环依赖是指至少两个待初始化任务之间相互存在依赖关系,换言之其依赖关系形成闭环。举例而言:对于两种待初始化任务,第一待初始化任务和第二待初始化任务,若待第一初始化任务依赖于第二待初始化任务,第二待初始化任务依赖于第一待初始化任务,则认为二者之间形成循环依赖。对于三种待初始化任务,第一待初始化任务、第二待初始化任务和第三待初始化任务,若待第一待初始化任务依赖于第二待初始化任务,第二待初始化任务依赖于第三待初始化任务,第三待初始化任务依赖于第二待初始化任务,则认为三者之间形成循环依赖。处于循环依赖的状态下的待初始化任务无法执行初始化。所谓错误依赖是指依赖关系存在错误。步骤S104,以同一时间作为初始化起点,对所述当前可初始化任务进行初始化处理。为每个芯片创建一个初始化处理线程,在需要进行初始化时,将该芯片投递到该初始化线程中去,并运行线程启动对应的可初始化任务。步骤S106,清除所述当前可初始化任务的依赖关系,确定待初始化任务中的下一可初始化任务,直至所有待初始化任务都完成初始化。在上述当前可初始化任务初始化完成后,清除与该已完成初始化的当前可初始化任务相关的依赖关系,包括依赖于上述已初始化完成的当前可初始化任务。由于该已完成初始化的当前可初始化任务,其不会再影响依赖于其的待初始化任务的初始化,仅依赖于其的待初始化任务可以启动初始化线程。针对大型通信设备芯片种类繁多,依赖关系复杂的情况,本实施例提出一种通过定制依赖配置文件,由依赖配置文件生成依赖关系表,并根据依赖关系表的动态更新决定并行启动哪些芯片初始化任务,最终达到多种芯片并行初始化,缩短设备启动时间的目标,同时解除了控制流程和特定硬件结构之间的耦合,保证了所支持设备的多样性。一种优选实施例为建立二维的依赖关系表,其横行和竖列都为初始化任务,单元格中用0和1表示任务之间的依赖关系。其中,1表示该行任务依赖于该列任务,0表示该行任务不依赖于该列任务。举例而言,某设备存在3组芯片,分别为为Chip1、Chip2、Chip3。Chip1初始化过程本文档来自技高网...

【技术保护点】
1.一种多芯片初始化方法,其特征在于,包括:根据各芯片在初始化进程中不同任务之间的依赖关系确定当前可初始化任务,其中,所述当前可初始化任务独立于其他初始化任务;以同一时间作为初始化起点,对所述当前可初始化任务进行初始化处理;清除所述当前可初始化任务的依赖关系,确定待初始化任务中的下一可初始化任务,直至所有待初始化任务都完成初始化。

【技术特征摘要】
1.一种多芯片初始化方法,其特征在于,包括:根据各芯片在初始化进程中不同任务之间的依赖关系确定当前可初始化任务,其中,所述当前可初始化任务独立于其他初始化任务;以同一时间作为初始化起点,对所述当前可初始化任务进行初始化处理;清除所述当前可初始化任务的依赖关系,确定待初始化任务中的下一可初始化任务,直至所有待初始化任务都完成初始化。2.根据权利要求1所述的方法,其特征在于,在根据各芯片在初始化进程中不同任务之间的依赖关系确定当前可初始化任务之前,所述方法还包括:解析预设的依赖关系配置文件;从所述解析结果中获取所述依赖关系。3.根据权利要求1或2所述的方法,其特征在于,在根据各芯片在初始化进程中不同任务之间的依赖关系确定当前可初始化任务之后,所述方法还包括:判断所述依赖关系是否包括预设的需调整依赖关系,其中,所述需调整依赖关系包括循环依赖和错误依赖;在判断结果为是的情况下,调整所述依赖关系。4.根据权利要求1所述的方法,其特征在于,所述清除所述当前可初始化任务的依赖关系包括:判断是否存在处于依赖于已初始化状态的当前可初始化任务;在判断结果为是的情况下,清除关于所述当前可初始化任务的依赖关系。5.根据权利要求1所述的方法,其特征在于,所述依赖关系包括:可初始化任务...

【专利技术属性】
技术研发人员:朱骏
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东,44

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

1