一种芯片的固件更新的方法及系统技术方案

技术编号:13239374 阅读:135 留言:0更新日期:2016-05-15 01:20
本发明专利技术提供了一种芯片的固件更新的方法及系统,该方法读取所述芯片的固件版本信息,并根据该信息更新所述固件。本发明专利技术所提供的方法及系统实现方便且简单,还可以对所传输数据的准确率进行验证,提高了安全性。

【技术实现步骤摘要】

本专利技术涉及固件更新领域,特别是一种利用系统控制总线的芯片的固件更新方法及系统。
技术介绍
集成芯片或转换芯片中通常需要配置固件来运行,对于固件的升级或更新主要是通过将硬件连接治具的方法来实现,这种方法通常需要相应的治具,还需要拆解系统,比较麻烦且不方便;另外,对于具有AUX接口的显示芯片,还可以通过AUX来进行升级,但是这种实现方式通常需要CPU的AUX接口的原始代码,且实现过程比较复杂。
技术实现思路
本专利技术所要解决的技术问题是提供一种系统控制总线SMBUS实现芯片的固件更新的方法及系统。为了解决上述技术问题,本专利技术采用了如下技术方案:—种芯片的固件更新的方法,读取所述芯片的固件版本信息,并根据该信息更新所述固件。其中,CPU通过系统控制总线与所述芯片建立数据连接,并且向所述芯片发送读取其内固件版本信息的指令;并根据其接收的固件版本信息选择向所述芯片发送该芯片的固件更新数据,以更新所述固件。其中,所述CPU将其读取的固件版本信息与最新的固件版本信息作比较,当其读取的固件版本低于所述最新的固件版本时,向所述芯片发送对应于最新的固件版本信息的固件更新数据。其中,所述CPU还向所述芯片发送与所述固件更新数据相对应的校验码,以验证传输至所述芯片的固件更新数据运算算法。其中,所述芯片利用运算算法对其接收到的固件更新数据进行运算,并将运算结果与所述校验码比较,并根据比较结果判断其接收到的固件更新数据是否准确;当所述运算结果与所述校验码存在差异时,所述芯片向CPU发送重新发送数据的请求。其中,所述CPU还向所述芯片发送所述固件更新数据的数据长度。其中,所述CPU将所述固件更新数据分割成至少2个数据块进行发送,并分别发送每个所述数据块的数据长度。本专利技术还提供了一种采用上述固件更新方法的芯片固件更新系统,其包括:处理器,其配置为读取所述芯片的固件版本信息,并根据该信息更新所述固件。其中,还包括数据连接所述处理器和芯片的系统控制总线,其中,所述处理器进一步配置为通过系统控制总线与所述芯片建立数据连接,并且包括:发送模块,其配置为向所述芯片发送读取其内固件版本信息的指令;接收模块,其配置为接收所述芯片固件版本信息;更新模块,其配置为根据所述接收模块接收的固件版本信息选择向所述芯片发送该芯片的固件更新数据,以更新所述固件。其中,所述系统控制总线为与所述处理器连接且用于读取系统内存的系统控制总线与现有技术相比,本专利技术的有益效果在于:1、本专利技术中的芯片的固件更新方法和系统,通过利用系统控制总线来进行数据的传输和通信,以实现芯片内的固件的更新和升级,该方法不需要外接治具也不要更改AUX接口的原始代码,实现方便且简单;2、本专利技术的更新方法和系统还可以通过发送校验码,以验证所传输的数据的安全性,保证芯片所接收到的固件更新数据的准确程度,提高了系统的安全性。【附图说明】图1为本专利技术实施例一的芯片的固件更新的方法的流程图;图2为本专利技术实施例二的芯片的固件更新的方法的流程图;图3为本专利技术实施例的芯片的固件更新的系统的结构框图。【具体实施方式】下面结合附图和具体实施例对本专利技术作进一步详细描述,但不作为对本专利技术的限定。本专利技术实施例提供的芯片的固件更新方法,通过读取芯片的固件版本信息,并根据该信息更新芯片的固件。如图1所示,为本专利技术的实施例一的芯片的固件更新的方法的流程图。其中,该更新方法可以包括以下步骤:S1:在开机的状态下,CPU通过系统控制总线SMBUS与芯片建立数据连接,本实施例中SMBUS还可以读取系统的内存的存储状态等数据,也就是说,本实施例中的系统控制总线SMBUS可以是与CPU连接且用于读取系统内存的系统控制总线,以实现节省资源的效果。S2:CPU通过系统控制总线向芯片发送读取其固件版本信息的指令;S3:芯片根据其接收到指令将其内的固件的版本信息发送至CPU;S4:CPU读取该芯片发送的固件版本信息,并将其读取的固件版本信息与最新的固件版本信息作比较,当其读取的固件版本低于所述最新的固件版本时,向所述芯片发送对应于最新的固件版本信息的固件更新数据;S5:芯片根据接收到的固件更新数据更新其内的固件,以实现固件的更新和升级。在一优选的实施例中,如图2所示,CPU还可以向芯片发送关于固件更新数据的长度的信息,以便芯片接收数据并验证数据的接收完成和准确性,其中,当所要发送的固件更新数据的数据量较大时,CPU还可以将该数据分割成多个(至少两组)数据块进行发送,以提高数据的传输速度和效率,同样的,也可以分别发送每组数据块的数据长度。图2为本专利技术实施例二的芯片的固件更新的方法的流程图,如图2所示,其中,该更新方法可以包括以下步骤:S1:在开机的状态下,CPU通过系统控制总线SMBUS与芯片建立数据连接,本实施例中SMBUS还可以读取系统的内存的存储状态等数据,也就是说,本实施例中的系统控制总线SMBUS可以是与CPU连接且用于读取系统内存的系统控制总线,以实现节省资源的效果。S2:CPU通过系统控制总线向芯片发送读取其固件版本信息的指令;S3:芯片根据其接收到指令将其内的固件的版本信息发送至CPU;S4:CPU读取该芯片发送的固件版本信息,并将其读取的固件版本信息与最新的固件版本信息作比较,当其读取的固件版本低于所述最新的固件版本时,向所述芯片发送对应于最新的固件版本信息的固件更新数据;S5:CPU在发送固件更新数据后,还可以向芯片发送与固件更新数据相对应的校验码,该校验码为通过一运算算法对发送的固件更新数据或数据块运算而得到的。该校验码用于验证传输至芯片的数据的准确性和成功率;S6:芯片利用运算算法对其接收到的固件更新数据进行运算,并将运算结果与其接收的校验码做比较,并根据比较结果判断当前第1页1 2 本文档来自技高网...

【技术保护点】
一种芯片的固件更新的方法,其特征在于,读取所述芯片的固件版本信息,并根据该信息更新所述固件。

【技术特征摘要】

【专利技术属性】
技术研发人员:黄永俊
申请(专利权)人:合肥联宝信息技术有限公司
类型:发明
国别省市:安徽;34

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

1