多核固件加载方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:21140497 阅读:35 留言:0更新日期:2019-05-18 04:59
本发明专利技术涉及多核固件加载方法、装置、计算机设备及存储介质,该方法包括获取SSD固件以及包头信息;对SSD固件进行拆分处理,以形成若干个数据包;对若干个数据包逐一进行搬运处理,以得到CRC累加值;判断CRC累加值与包头信息是否一致;若是,则释放主控芯片的各核,以运行SSD固件;若否,则返回获取SSD固件以及包头信息。本发明专利技术摒弃串口Xmodem协议传输结束后统一处理并搬运的观念,实现降低对SSD开发的硬件条件的依赖,缩减SSD产品的硬件开发成本。

【技术实现步骤摘要】
多核固件加载方法、装置、计算机设备及存储介质
本专利技术涉及固态硬盘,更具体地说是指多核固件加载方法、装置、计算机设备及存储介质。
技术介绍
目前固态硬盘控制器加载固件的流程如图1所示,芯片上电后,由嵌入在微控制器内部且用于芯片正常工作的代码加载多核加载工程,再由多核加载工程通过串口的Xmodem协议将SSD(固态硬盘,SolidStateDrives)固件下载至一段连续的内存区域,解析出SSD固件包中的包头信息和SSD固件信息,经过CRC(循环冗余校验,CyclicRedundancyCheck)校验正确后,通过DMAC(直接存储器访问控制器,DirectMemoryAccessController)模块将SSD固件搬运到各主控芯片的执行域,搬运完成后释放各主控芯片,以完成SSD固件加载。多核SSD固件一般拥有几百KB甚至更大的数据量,系统需要提供一块连续的内存区域用于存放SSD固件信息,一般的方法是存放在SRAM(静态随机访问存储器,StaticRandomAccessMemory)或DDR(双倍速率同步动态随机存储器,DoubleDataRateSDRAM)中,但由于SSD主控芯片要适应各种结构的SSD产品,然而为了控制SSD产品的开发成本,并不是所有SSD产品都能提供大块ISRAM或SSD内存区域,这导致当前加载SSD固件的方法已不完全适用,会增加SSD的硬件成本。因此,有必要设计一种新的方法,实现缩减SSD产品的硬件开发成本。
技术实现思路
本专利技术的目的在于克服现有技术的缺陷,提供多核固件加载方法、装置、计算机设备及存储介质。为实现上述目的,本专利技术采用以下技术方案:多核固件加载方法,包括:获取SSD固件以及包头信息;对SSD固件进行拆分处理,以形成若干个数据包;对若干个数据包逐一进行搬运处理,以得到CRC累加值;判断所述CRC累加值与包头信息是否一致;若是,则释放主控芯片的各核,以运行SSD固件;若否,则返回所述获取SSD固件以及包头信息。其进一步技术方案为:所述获取SSD固件以及包头信息,包括:对主控芯片进行上电,并加载和运行嵌入在微控制器内部且用于芯片正常工作的代码;利用所述代码加载多核加载工程;利用加载多核工程以及串口Xmodem协议获取SSD固件以及包头信息。其进一步技术方案为:所述包头信息包括搬运参数以及SSD固件的CRC校验值。其进一步技术方案为:所述数据包包括包头、包序列号、包序列号反码、固件信息以及CRC校验信息。其进一步技术方案为:所述对若干个数据包逐一进行搬运处理,以得到CRC累加值,包括:通过串口Xmodem协议下载数据包,以获取固件信息;将固件信息存储于CRC累加变量中;根据包头信息将固件信息搬运到目的地址;对CRC累加变量进行累加,以形成累加值;将所述累加值存储于CRC累加变量中;判断所有数据包是否均下载完成;若是,则将当前的CRC累计变量中的累加值作为CRC累加值;若否,则进入所述通过串口Xmodem协议下载数据包,以获取固件信息。其进一步技术方案为:所述判断所述CRC累加值与包头信息是否一致,包括:获取包头信息内的SSD固件的CRC校验值;判断所述CRC累加值与所述SSD固件的CRC校验值是否一致;若是,则所述CRC累加值与包头信息一致;若否,则所述CRC累加值与包头信息不一致。本专利技术还提供了多核固件加载装置,包括:固件获取单元,用于获取SSD固件以及包头信息;拆分单元,用于对SSD固件进行拆分处理,以形成若干个数据包;搬运处理单元,用于对若干个数据包逐一进行搬运处理,以得到CRC累加值;判断单元,用于判断所述CRC累加值与包头信息是否一致,若否,则返回所述获取SSD固件以及包头信息;释放单元,用于若是,则释放主控芯片的各核,以运行SSD固件。其进一步技术方案为:所述固件获取单元包括:代码处理子单元,用于对主控芯片进行上电,并加载和运行嵌入在微控制器内部且用于芯片正常工作的代码;工程加载子单元,用于利用所述代码加载多核加载工程;固件及信息获取子单元,用于利用加载多核工程以及串口Xmodem协议获取SSD固件以及包头信息。本专利技术还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。本专利技术还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现上述的方法。本专利技术与现有技术相比的有益效果是:本专利技术通过将SSD固件下载后进行拆分成若干个数据包,分别对这些数据包内的固件信息进行逐一搬移至目的地址,且每搬移完成一个数据包的固件信息,则对该固件信息进行CRC累加,所有数据包的固件信息搬移完成后,将CRC累加得到的数值为CRC累加值,与SSD固件包头内的SSD固件的CRC校验值进行对比,在两者一致的情况进行执行SSD固件,摒弃串口Xmodem协议传输结束后统一处理并搬运的观念,实现降低对SSD开发的硬件条件的依赖,缩减SSD产品的硬件开发成本。下面结合附图和具体实施例对本专利技术作进一步描述。附图说明为了更清楚地说明本专利技术实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为现有技术的固件加载的流程示意图;图2为本专利技术实施例提供的多核固件加载方法的流程示意图;图3为本专利技术实施例提供的多核固件加载方法的子流程示意图;图4为本专利技术实施例提供的多核固件加载方法的固件拆分示意图;图5为本专利技术实施例提供的多核固件加载方法的子流程示意图;图6为本专利技术实施例提供的多核固件加载方法的子流程示意图;图7为本专利技术实施例提供的多核固件加载装置的示意性框图;图8为本专利技术实施例提供的多核固件加载装置的固件获取单元的示意性框图;图9为本专利技术实施例提供的多核固件加载装置的搬运处理单元的示意性框图;图10为本专利技术实施例提供的多核固件加载装置的判断单元的示意性框图;图11为本专利技术实施例提供的计算机设备的示意性框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。还应当理解,在此本专利技术说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本专利技术。如在本专利技术说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本专利技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。请参阅图2,图2为本专利技术实施例提供的多核固件加载方法的应用场景示意图。该多核固件加载方法应用于带本文档来自技高网...

【技术保护点】
1.多核固件加载方法,其特征在于,包括:获取SSD固件以及包头信息;对SSD固件进行拆分处理,以形成若干个数据包;对若干个数据包逐一进行搬运处理,以得到CRC累加值;判断所述CRC累加值与包头信息是否一致;若是,则释放主控芯片的各核,以运行SSD固件;若否,则返回所述获取SSD固件以及包头信息。

【技术特征摘要】
1.多核固件加载方法,其特征在于,包括:获取SSD固件以及包头信息;对SSD固件进行拆分处理,以形成若干个数据包;对若干个数据包逐一进行搬运处理,以得到CRC累加值;判断所述CRC累加值与包头信息是否一致;若是,则释放主控芯片的各核,以运行SSD固件;若否,则返回所述获取SSD固件以及包头信息。2.根据权利要求1所述的多核固件加载方法,其特征在于,所述获取SSD固件以及包头信息,包括:对主控芯片进行上电,并加载和运行嵌入在微控制器内部且用于芯片正常工作的代码;利用所述代码加载多核加载工程;利用加载多核工程以及串口Xmodem协议获取SSD固件以及包头信息。3.根据权利要求2所述的多核固件加载方法,其特征在于,所述包头信息包括搬运参数以及SSD固件的CRC校验值。4.根据权利要求1所述的多核固件加载方法,其特征在于,所述数据包包括包头、包序列号、包序列号反码、固件信息以及CRC校验信息。5.根据权利要求4所述的多核固件加载方法,其特征在于,所述对若干个数据包逐一进行搬运处理,以得到CRC累加值,包括:通过串口Xmodem协议下载数据包,以获取固件信息;将固件信息存储于CRC累加变量中;根据包头信息将固件信息搬运到目的地址;对CRC累加变量进行累加,以形成累加值;将所述累加值存储于CRC累加变量中;判断所有数据包是否均下载完成;若是,则将当前的CRC累计变量中的累加值作为CRC累加值;若否,则进入所述通过串口Xmodem协议下载数据包,以获取固件信息。6.根据...

【专利技术属性】
技术研发人员:董亚冯元元冷志源
申请(专利权)人:深圳忆联信息系统有限公司
类型:发明
国别省市:广东,44

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

1