一种双芯片程序更新装置及方法制造方法及图纸

技术编号:22218147 阅读:31 留言:0更新日期:2019-09-30 00:54
本发明专利技术公开了一种双芯片程序更新装置及方法,其能够避免芯片间数据透传引入的时间延迟以及可能的数据传输解析错误。一种双芯片程序更新装置,包括:第一芯片、第二芯片及外扩存储器;还包括:第一缓冲电路,其连接于第一芯片和外扩存储器之间;第二缓冲电路,其连接于第二芯片和外扩存储器之间;在第一芯片更新状态时,第一芯片通过第一缓冲电路和外扩存储器连通以获取需要更新的程序数据,第二芯片和外扩存储器断开;在第二芯片更新状态时,第二芯片通过第二缓冲电路和外扩存储器连通以获取需要更新的程序数据,第一芯片和外扩存储器断开;双芯片程序更新装置还包括用于在第一芯片更新状态和第二芯片更新状态之间切换的非门电路。

A Dual Chip Program Updating Device and Method

【技术实现步骤摘要】
一种双芯片程序更新装置及方法
本专利技术属于嵌入式系统
,涉及一种双芯片程序更新装置及方法。
技术介绍
为了存储运行数据或可靠升级程序,嵌入式平台中一般会使用外扩Flash作为非易失性存储设备。通用型平台中包含一个主控芯片和一个外扩Flash,有的也会扩展并口外扩SDRAM。常用的方案是一个主控芯片与一个外扩Flash进行数据交互或者程序升级。图1示出了现有技术中的一种常规的外扩Flash使用方式,在该系统中,若芯片2若需要升级程序,则需要通过芯片1读取外扩Flash3的数据然后再传递给芯片2,时间上延迟较多且传递过程易出现数据干扰或解析问题。
技术实现思路
为了解决上述技术问题,本专利技术的目是提供一种双芯片程序更新装置及方法,其能够避免芯片间数据透传引入的时间延迟以及可能的数据传输解析错误。为达到上述目的,本专利技术采用的一种技术方案为:一种双芯片程序更新装置,包括:第一芯片、第二芯片及用于存储需要更新的程序数据的外扩存储器;所述双芯片程序更新装置还包括:第一缓冲电路,其连接于所述第一芯片和所述外扩存储器之间;第二缓冲电路,其连接于所述第二芯片和所述外扩存储器之间;所述双芯片程序更新装置具有第一芯片更新状态和第二芯片更新状态,当所述双芯片程序更新装置在所述第一芯片更新状态时,所述第一芯片通过所述第一缓冲电路和所述外扩存储器连通以获取所述需要更新的程序数据,所述第二芯片和所述外扩存储器断开;当所述双芯片程序更新装置在所述第二芯片更新状态时,所述第二芯片通过所述第二缓冲电路和所述外扩存储器连通以获取所述需要更新的程序数据,所述第一芯片和所述外扩存储器断开;所述双芯片程序更新装置还包括用于在所述第一芯片更新状态和所述第二芯片更新状态之间切换的非门电路。具体地,第一芯片及第二芯片为微控制器、数字处理器、单片机中的一种;外部存储器为外扩Flash;第一缓冲电路和第二缓冲电路分别为逻辑控制芯片;非门电路为非门逻辑IC。在一些实施例中,所述第一芯片、所述第一缓冲电路和所述第二缓冲电路分别具有OE管脚,所述第一芯片的OE管脚连接于所述第一缓冲电路的OE管脚,所述非门电路连接于所述第一芯片的OE管脚和所述第二缓冲电路的OE管脚之间。在一些实施例中,所述第一芯片、所述第二芯片及所述外扩存储器分别具有SPI接口,各所述SPI接口分别包括MISO连接端口、MOSI连接端口、CLK连接端口及Slave_Set连接端口;所述第一芯片的CLK连接端口和Slave_Set连接端口连接于所述第一缓冲电路,所述第二芯片的CLK连接端口和Slave_Set连接端口连接于所述第二缓冲电路,所述外扩存储器的CLK连接端口和Slave_Set连接端口均连接于所述第一缓冲电路和所述第二缓冲电路。利用第一缓冲电路和第二缓冲电路仅连接芯片和外扩存储器的CLK连接端口及Slave_Set连接端口,可以减少逻辑控制芯片的使用,降低通讯线路的延迟。优选地,所述第一芯片的MOSI连接端口和所述第二芯片的MOSI连接端口分别连接于所述外扩存储器的MOSI连接端口;所述外扩存储器的MISO连接端口分别连接于所述第一芯片的MISO连接端口和所述第二芯片的MISO连接端口。在一些实施例中,所述第一缓冲电路具有接所述第一芯片的A端口、连接所述外扩存储器的Y端口及用于切换控制所述A端口能否将数据传递到所述Y端口的OE管脚。在一些实施例中,所述第二缓冲电路具有接所述第二芯片的A端口、连接所述外扩存储器的Y端口及用于切换控制所述A端口能否将数据传递到所述Y端口的OE管脚。在一些实施例中,所述第一芯片具有用于连接外部数据传输模块以获取所述需要更新的程序数据的对外通讯接口。在一些实施例中,所述第二芯片具有输入监测单元,所述输入监测单元连接所述非门电路的输入端。输入监测单元主要用于检测第一芯片与第二芯片当前对外扩存储器的工作状态。本专利技术采用的另一种技术方案为:一种如上所述的双芯片程序更新装置的双芯片程序更新方法,包括第一芯片更新步骤和第二芯片更新步骤,在执行所述第一芯片更新步骤时,所述第一芯片获得所述外扩存储器的控制权;在执行所述第二芯片更新步骤时,所述第二芯片获得所述外扩存储器的控制权。在一些实施例中,所述双芯片程序更新方法还包括需要更新的程序数据的获取及存储步骤,该获取及存储步骤具体包括:通过第一芯片获取外部传输的需要更新的程序数据,并将所述需要更新的程序数据传递到所述外扩存储器并存储到所述外扩存储器的相应区域;其中,所述外扩存储器具有第一芯片存储信息标记区、第一芯片程序暂存区、第一芯片程序备份区、第二芯片存储信息标记区、第二芯片程序暂存区及第二芯片程序备份区;当获得的所述需要更新的程序数据为第一芯片的程序,则存储在所述第一芯片程序暂存区,当获得的所述需要更新的程序数据为第二芯片的程序,则存储在所述第二芯片程序暂存区。优选地,所述第一芯片更新步骤具体如下:S401、使能第一缓冲电路的OE管脚,使第一芯片获取外扩存储器的控制权;S402、第一芯片获取外扩存储器的第一芯片存储信息标记区的信息;S403、擦除第一芯片的ROM区域中的数据;S404、将外扩存储器的第一芯片程序暂存区的数据传递到第一芯片的ROM区域;S405、若第一芯片程序更新完成,则更新对应的状态并将第一芯片程序暂存区的数据复制到第一芯片程序备份区;所述第二芯片更新步骤具体如下:S501、使能第二缓冲电路的OE管脚,使第二芯片获取外扩存储器的控制权;S502、第二芯片获取外扩存储器的第二芯片存储信息标记区的信息;S503、擦除第二芯片的ROM区域中的数据;S504、将外扩存储器的第二芯片程序暂存区的数据传递到第二芯片的ROM区域;S505、若第二芯片程序更新完成,则更新对应的状态并将第二芯片程序暂存区的数据复制到第一芯片程序备份区。优选地,所述第一芯片程序暂存区包括第一芯片程序暂存区A和第一芯片程序暂存区B,所述第一芯片程序暂存区A和所述第一芯片程序暂存区B均存储有第一芯片的所述需要更新的程序数据;所述步骤S404的传递过程中,将所述第一芯片程序暂存区A和所述第一芯片程序暂存区B的数据分成若干数据帧,设定每个数据帧的数据长度和CRC检验码;对应到第一芯片程序暂存区B中每个数据帧传递的程序数据与所述数据长度进行异或操作,然后与第一芯片程序暂存区A中的每个数据帧传递的程序数据进行数据位加法,若所得结果均为所述数据长度,则判定程序数据正确;否则判定程序数据出错,设定标志位;第一芯片对接收到的数据进行CRC校验,若计算结果与传递的CRC检验码一致,则判定该帧数据有效,写入第一芯片的ROM区域;所述第二芯片程序暂存区包括第二芯片程序暂存区A和第二芯片程序暂存区B,所述第二芯片程序暂存区A和所述第二芯片程序暂存区B均存储有第二芯片的所述需要更新的程序数据;所述步骤S504的传递过程中,将所述第二芯片程序暂存区A和所述第二芯片程序暂存区B的数据分成若干数据帧,设定每个数据帧的数据长度和CRC检验码;对应到第二芯片程序暂存区B中每个数据帧传递的程序数据与所述数据长度进行异或操作,然后与第二芯片程序暂存区A中的每个数据帧传递的程序数据进行数据位加法,若所得结果均为所述数据长度,则判定程序数据正确;否则判定程序数据出错,设定标志本文档来自技高网...

【技术保护点】
1.一种双芯片程序更新装置,包括:第一芯片、第二芯片及用于存储需要更新的程序数据的外扩存储器;其特征在于,所述双芯片程序更新装置还包括:第一缓冲电路,其连接于所述第一芯片和所述外扩存储器之间;第二缓冲电路,其连接于所述第二芯片和所述外扩存储器之间;所述双芯片程序更新装置具有第一芯片更新状态和第二芯片更新状态,当所述双芯片程序更新装置在所述第一芯片更新状态时,所述第一芯片通过所述第一缓冲电路和所述外扩存储器连通以获取所述需要更新的程序数据,所述第二芯片和所述外扩存储器断开;当所述双芯片程序更新装置在所述第二芯片更新状态时,所述第二芯片通过所述第二缓冲电路和所述外扩存储器连通以获取所述需要更新的程序数据,所述第一芯片和所述外扩存储器断开;所述双芯片程序更新装置还包括用于在所述第一芯片更新状态和所述第二芯片更新状态之间切换的非门电路。

【技术特征摘要】
1.一种双芯片程序更新装置,包括:第一芯片、第二芯片及用于存储需要更新的程序数据的外扩存储器;其特征在于,所述双芯片程序更新装置还包括:第一缓冲电路,其连接于所述第一芯片和所述外扩存储器之间;第二缓冲电路,其连接于所述第二芯片和所述外扩存储器之间;所述双芯片程序更新装置具有第一芯片更新状态和第二芯片更新状态,当所述双芯片程序更新装置在所述第一芯片更新状态时,所述第一芯片通过所述第一缓冲电路和所述外扩存储器连通以获取所述需要更新的程序数据,所述第二芯片和所述外扩存储器断开;当所述双芯片程序更新装置在所述第二芯片更新状态时,所述第二芯片通过所述第二缓冲电路和所述外扩存储器连通以获取所述需要更新的程序数据,所述第一芯片和所述外扩存储器断开;所述双芯片程序更新装置还包括用于在所述第一芯片更新状态和所述第二芯片更新状态之间切换的非门电路。2.根据权利要求1所述的双芯片程序更新装置,其特征在于:所述第一芯片、所述第一缓冲电路和所述第二缓冲电路分别具有OE管脚,所述第一芯片的OE管脚连接于所述第一缓冲电路的OE管脚,所述非门电路连接于所述第一芯片的OE管脚和所述第二缓冲电路的OE管脚之间。3.根据权利要求1所述的双芯片程序更新装置,其特征在于:所述第一芯片、所述第二芯片及所述外扩存储器分别具有SPI接口,各所述SPI接口分别包括MISO连接端口、MOSI连接端口、CLK连接端口及Slave_Set连接端口;所述第一芯片的CLK连接端口和Slave_Set连接端口连接于所述第一缓冲电路,所述第二芯片的CLK连接端口和Slave_Set连接端口连接于所述第二缓冲电路,所述外扩存储器的CLK连接端口和Slave_Set连接端口均连接于所述第一缓冲电路和所述第二缓冲电路;所述第一芯片的MOSI连接端口和所述第二芯片的MOSI连接端口分别连接于所述外扩存储器的MOSI连接端口;所述外扩存储器的MISO连接端口分别连接于所述第一芯片的MISO连接端口和所述第二芯片的MISO连接端口。4.根据权利要求1所述的双芯片程序更新装置,其特征在于:所述第一缓冲电路具有接所述第一芯片的A端口、连接所述外扩存储器的Y端口及用于切换控制所述A端口能否将数据传递到所述Y端口的OE管脚;所述第二缓冲电路具有接所述第二芯片的A端口、连接所述外扩存储器的Y端口及用于切换控制所述A端口能否将数据传递到所述Y端口的OE管脚。5.根据权利要求1所述的双芯片程序更新装置,其特征在于:所述第一芯片具有用于连接外部数据传输模块以获取所述需要更新的程序数据的对外通讯接口;所述第二芯片具有输入监测单元,所述输入监测单元连接所述非门电路的输入端。6.一种如权利要求1-5任一项所述的双芯片程序更新装置的双芯片程序更新方法,包括第一芯片更新步骤和第二芯片更新步骤,其特征在于,在执行所述第一芯片更新步骤时,所述第一芯片获得所述外扩存储器的控制权;在执行所述第二芯片更新步骤时,所述第二芯片获得所述外扩存储器的控制权。7.根据权利要求6所述的双芯片程序更新方法,其特征在于,所述双芯片程序更新方法还包括需要更新的程序数据的获取及存储步骤,该获取及存储步骤具体包括:通过第一芯片获取外部传输的需要更新的程序数据,并将所述需要更新的程序...

【专利技术属性】
技术研发人员:王进城
申请(专利权)人:爱士惟新能源技术扬中有限公司
类型:发明
国别省市:江苏,32

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

1