芯片程序更新系统的制作方法

文档序号:12946626阅读:197来源:国知局
芯片程序更新系统的制作方法与工艺

本发明涉及电子技术领域,尤其涉及一种芯片程序更新系统。



背景技术:

城市轨道交通作为支撑城市正常运行的大动脉,发展迅速,与此同时,轨道交通牵引控制技术也进入快速发展期,控制技术的发展,使得控制电路由单一简单时序逻辑运算向多块复杂逻辑运算控制电路板方向发展。控制电路板程序代码的维护也由简单的编程器烧写方式开始向在线式、远程式方向发展,以适应越来越复杂的牵引控制方式形势发展的需要。

目前,控制电路板上的控制芯片大多都支持在线远程完成程序代码的烧写更新,控制电路板通过控制电路的串行接口与外置的程序更新装置连接,控制电路板上的控制芯片通过串行接口接收更新程序,从而在线远程完成程序更新。

但是,控制电路通常只包括一个串行接口,一个串行接口只能与一个控制电路板连接,因此,通过一个串行接口仅能在线远程完成一个控制电路板的程序更新。而当控制电路中存在多块控制电路板时,通过一个串行接口无法实现所有控制电路板的程序更新,同时也降低了串行接口的通信效率。



技术实现要素:

本发明提供一种芯片程序更新系统,可以通过一个通信接口实现控制系统中多个控制电路板上控制芯片的在线远程程序更新,提高了芯片程序的更新效率和通信接口的通信效率。

本发明提供的芯片程序更新系统,包括:上位机、第一控制电路板和至少一个第二控制电路板;所述第一控制电路板包括相互连接的第一通信芯片和第一控制芯片,所述第二控制电路板包括相互连接的第二通信芯片和第二控制芯片;所述上位机与所述第一通信芯片通过通信接口连接,所述第一通 信芯片分别与各所述第二通信芯片连接;

所述上位机,用于通过所述通信接口向所述第一通信芯片发送更新数据;

所述第一通信芯片,用于将所述更新数据转发至所述第一控制芯片;

所述第一控制芯片,用于解析所述更新数据获得芯片标识;若所述芯片标识对应所述第一控制芯片,则根据所述更新数据完成所述第一控制芯片的程序更新;若所述芯片标识对应所述第二控制芯片,则控制所述第一通信芯片建立所述上位机与所述芯片标识相对应的第二通信芯片之间的通信信道;其中,所述芯片标识与第一通信芯片和第一控制芯片相对应,或者与位于同一个第二控制电路板上的第二通信芯片和第二控制芯片相对应;

所述第二通信芯片,用于将所述更新数据转发至与所述第二通信芯片连接的所述第二控制芯片;

所述第二控制芯片,用于根据所述更新数据完成所述第二控制芯片的程序更新。

本发明提供一种芯片程序更新系统,包括:上位机、第一控制电路板和至少一个第二控制电路板,第一控制电路板包括相互连接的第一通信芯片和第一控制芯片,第二控制电路板包括相互连接的第二通信芯片和第二控制芯片,上位机与第一通信芯片通过通信接口连接,第一通信芯片分别与各第二通信芯片连接。本发明提供的芯片程序更新系统,可以通过一个通信接口实现控制电路中所有控制电路板的远程程序更新,提高了芯片程序的更新效率和通信接口的通信效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例一提供的芯片程序更新系统的结构示意图;

图2为本发明实施例二提供的芯片程序更新系统的结构示意图;

图3为本发明实施例四提供的芯片程序更新系统的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1为本发明实施例一提供的芯片程序更新系统的结构示意图。如图1所示,本实施例提供的芯片程序更新系统,可以包括:

上位机1、第一控制电路板2和至少一个第二控制电路板3。第一控制电路板2包括相互连接的第一通信芯片21和第一控制芯片23,第二控制电路板3包括相互连接的第二通信芯片31和第二控制芯片33。上位机1与第一通信芯片21通过通信接口连接,第一通信芯片21分别与各第二通信芯片31连接。

上位机1,用于通过通信接口向第一通信芯片21发送更新数据。

第一通信芯片21,用于将更新数据转发至第一控制芯片23。

第一控制芯片23,用于解析更新数据获得芯片标识。若芯片标识对应第一控制芯片23,则根据更新数据完成第一控制芯片23的程序更新,若芯片标识对应第二控制芯片33,则控制第一通信芯片21建立上位机1与芯片标识相对应的第二通信芯片31之间的通信信道。其中,芯片标识与第一通信芯片21和第一控制芯片23相对应,或者与位于同一个第二控制电路板3上的第二通信芯片31和第二控制芯片33相对应。

第二通信芯片31,用于将更新数据转发至与第二通信芯片31连接的第二控制芯片33。

第二控制芯片33,用于根据更新数据完成第二控制芯片33的程序更新。

在本实施例中,芯片标识可以唯一区分第一控制芯片23或者任意一个第二控制芯片33,并且,芯片标识与位于同一块控制电路板上的通信芯片和控制芯片均具有对应关系,例如:芯片标识b与某一个第二控制芯片33相对应,则芯片标识b同时也和与该第二控制芯片33相连接的第二通信芯片31相对应。其中,芯片标识可以具有多种实现方式,例如:芯片标识可以是数字、字母的组合,也可以是芯片类型、数字的组合,本实施例对此不加以限制。

在本实施例中,芯片程序更新系统包括多个控制电路板,具体的,包括一个第一控制电路板2和至少一个第二控制电路板3,从物理连接关系上看,上位机1与第一控制电路板2通过通信接口和第一通信芯片21实现物理连接,上位机1与各第二控制电路板3通过通信接口、第一通信芯片21和各第二控制电路板3上的第二通信芯片31实现物理连接。

在本实施例中,第一通信芯片21和各第二通信芯片31实现了数据转发功能,第一通信芯片21可以将更新数据转发至第一控制芯片23或者各第二通信芯片31,第二通信芯片31可以将更新数据转发至与该第二通信芯片31连接的第二控制芯片33。

在本实施例中,第一控制芯片23可以对上位机1发送的更新数据进行解析,获得芯片标识,根据芯片标识,第一控制芯片23或者各第二控制芯片33可以实现芯片程序的更新。具体的,当芯片标识对应第一控制芯片23时,由于上位机1与第一控制芯片23之间通信信道连通,可以相互发送数据,则第一控制芯片23直接根据更新数据完成第一控制芯片23的程序更新。当芯片标识对应某一个第二控制芯片33时,由于上位机1与第二控制芯片33之间仅是物理连通,并没有实现通信信道连通,所以,首先第一控制芯片23控制第一通信芯片21建立上位机1与该第二通信芯片31之间的双工通信信道,然后,第二控制芯片33根据更新数据完成该第二控制芯片33的程序更新。

综上可见,本实施例提供的芯片程序更新系统,通过第一控制电路板2上的第一通信芯片21实现了多块控制电路板与上位机1之间的物理连接,通过第一控制电路板2上的第一控制芯片23对更新数据进行解析,可以获得需要更新的芯片标识,进而使得第一控制芯片23或者任意一个第二控制芯片33完成程序更新,实现了通过一个通信接口在线远程进行芯片程序更新,提高了芯片程序的更新效率和通信接口的通信效率。

需要说明的是,通信接口可以是第一控制电路板2上的任意通信接口,例如:串口,也可以是上位机1与第一控制电路板2自定义的通信接口,本实施例对此不加以限制。上位机1与第一通信芯片21根据通信接口遵循的通信协议进行数据传输。

需要说明的是,上位机1与芯片标识相对应的第二通信芯片31之间建立的通信信道为双工信道。

需要说明的是,第一通信芯片21和第二通信芯片31的型号可以相同,也可以不同,第一控制芯片23和第二控制芯片33的型号可以相同,也可以不同。

可选的,更新数据可以包括:芯片更新指令和芯片更新程序。其中,芯片更新指令是指在芯片程序更新过程中的各种指令,例如:程序更新开始指令、程序更新中断指令、程序更新暂缓指令、芯片重启指令,等等,每一种指令均包括芯片标识。

可选的,第一控制电路板2和至少一个第二控制电路板3通过电气接口直接连接。

本实施例提供一种芯片程序更新系统,包括:上位机、第一控制电路板和至少一个第二控制电路板,第一控制电路板包括相互连接的第一通信芯片和第一控制芯片,第二控制电路板包括相互连接的第二通信芯片和第二控制芯片,上位机与第一通信芯片通过通信接口连接,第一通信芯片分别与各第二通信芯片连接。本实施例提供的芯片程序更新系统,可以通过一个通信接口实现控制电路中所有控制电路板的远程程序更新,提高了芯片程序的更新效率和通信接口的通信效率。

图2为本发明实施例二提供的芯片程序更新系统的结构示意图,本实施例在实施例一的基础上,提供了芯片程序更新系统的另一种实现方式,具体实现了当控制电路板包括多个不同类型芯片时的芯片程序的远程更新。如图2所示,本实施例提供的芯片程序更新系统,可以包括:

上位机1、第一控制电路板2和至少一个第二控制电路板3。第一控制电路板2包括相互连接的第一通信芯片21和第一控制芯片23,第二控制电路板3包括相互连接的第二通信芯片31和第二控制芯片33。上位机1与第一通信芯片21通过通信接口连接,第一通信芯片21分别与各第二通信芯片31连接。

其中,第一控制芯片23包括第一类型芯片231和第二类型芯片233,第一类型芯片231和第二类型芯片233均与第一通信芯片21连接。

第一类型芯片231,用于解析更新数据获得芯片标识。若芯片标识对应第一类型芯片231,则根据更新数据完成第一类型芯片231的程序更新。若芯片标识对应第二类型芯片233,则控制第一通信芯片21建立上位机1与第 二类型芯片233之间的通信信道。

第二类型芯片233,用于根据更新数据完成第二类型芯片233的程序更新。

在上述结构中,第一控制电路板2上包括两种不同类型的控制芯片,分别为第一类型芯片231和第二类型芯片233。其中,芯片标识可以唯一区分第一类型芯片231或者第二类型芯片233。从物理连接关系上看,第一类型芯片231和第二类型芯片233均与第一通信芯片21连接,因此,上位机1与第一类型芯片231和第二类型芯片233均通过通信接口和第一通信芯片21实现物理连接。

在上述结构中,第一类型芯片231可以对上位机1发送的更新数据进行解析,获得芯片标识,根据芯片标识,第一类型芯片231或者第二类型芯片233可以实现芯片程序的更新。具体的,当芯片标识对应第一类型芯片231时,由于上位机1与第一类型芯片231之间通信信道连通,可以相互发送数据,则第一类型芯片231直接根据更新数据完成第一类型芯片231的程序更新。当芯片标识对应第二类型芯片233时,由于上位机1与第二类型芯片233之间仅是物理连通,并没有实现通信信道连通,所以,首先第一类型芯片231控制第一通信芯片21建立上位机1与第二类型芯片233之间的通信信道,然后,第二类型芯片233直接根据上位机发送的更新数据完成该第二类型芯片233的程序更新。

可见,本实施例提供的芯片程序更新系统,可以通过一个通信接口,实现当一个控制电路板上存在两个不同类型的控制芯片时的远程程序更新,提高了芯片程序的更新效率和通信接口的通信效率。

进一步,第二控制芯片33可以包括第三类型芯片331和第四类型芯片333,第三类型芯片331和第四类型芯片333均与第二通信芯片31连接。

第一类型芯片231还用于,若芯片标识对应第三类型芯片331或者第四类型芯片333,则控制第一通信芯片21建立上位机1与芯片标识相对应的第二通信芯片31之间的通信信道。

第三类型芯片331用于,若芯片标识对应第三类型芯片331,则根据更新数据完成第三类型芯片331的程序更新。若芯片标识对应第四类型芯片333,则控制与第三类型芯片331连接的第二通信芯片31建立上位机1与芯 片标识相对应的第四类型芯片333之间的通信信道。

第四类型芯片333,用于根据更新数据完成第四类型芯片333的程序更新。

在上述结构中,第二控制电路板3上包括两种不同类型的控制芯片,分别为第三类型芯片331和第四类型芯片333。其中,芯片标识可以唯一区分第三类型芯片331或者第四类型芯片333。从物理连接关系上看,第三类型芯片331和第四类型芯片333均与第二通信芯片31连接,因此,上位机1与第三类型芯片331和第四类型芯片333通过通信接口、第一通信芯片21和各第二通信芯片31实现物理连接。

在上述结构中,第一类型芯片231可以对上位机1发送的更新数据进行解析,获得芯片标识,根据芯片标识,第三类型芯片331或者第四类型芯片333可以实现芯片程序的更新。具体的,当芯片标识对应某一个第三类型芯片331时,由于上位机1与该第三类型芯片331之间仅是物理连通,并没有实现通信信道连通,所以,首先第一类型芯片231控制第一通信芯片21建立上位机1与该芯片标识相对应的第二通信芯片31之间的通信信道,然后,第三类型芯片331根据更新数据完成该第三类型芯片331的程序更新。当芯片标识对应第四类型芯片333时,由于上位机1与第四类型芯片333之间仅是物理连通,并没有实现通信信道连通,所以,首先第一类型芯片231控制第一通信芯片21建立上位机1与该芯片标识相对应的第二通信芯片31之间的通信信道,然后,第三类型芯片331控制与该第三类型芯片331连接的第二通信芯片31建立上位机1与该第四类型芯片333之间的通信信道,然后,第四类型芯片333直接根据上位机发送的更新数据完成该第四类型芯片333的程序更新。

可见,通过上述芯片程序更新系统,可以通过一个通信接口,实现当控制电路中存在多块控制电路板且每块控制电路板上存在两个不同类型的控制芯片时的远程程序更新,提高了芯片程序的更新效率和通信接口的通信效率。

需要说明的是,第一类型芯片231和第三类型芯片331的型号可以相同,第二类型芯片233和第四类型芯片333的型号可以相同。

可选的,第一类型芯片231和第三类型芯片331可以为现场可编程门阵列(field-programmablegatearray,简称fpga)。第二类型芯片233和第 四类型芯片333可以为数字信号处理器(digitalsignalprocessor,简称dsp)。第一通信芯片21和第二通信芯片31可以为复杂可编程逻辑器件(complexprogrammablelogicdevice,简称cpld)。

本实施例提供了一种芯片程序更新系统,可以通过一个通信接口,当控制电路中包括多块控制电路板且控制电路板上包括多种不同类型的控制芯片时,实现所有控制芯片的远程程序更新,提高了芯片程序的更新效率和通信接口的通信效率。

作为本发明实施例三提供的芯片程序更新系统,在实施例二的基础上,提供了芯片程序更新系统的另一种实现方式,具体实现了芯片更新成功之后控制芯片的重启功能。本实施例提供的芯片程序更新系统,具体包括:

第一类型芯片231或者第三类型芯片331还用于,在完成芯片程序更新之后,向上位机1反馈成功标识。

上位机1还用于,在接收到成功标识之后,通过通信接口向第一通信芯片21发送第一重启指令。第一重启指令用于指示重启第一类型芯片231或者重启第三类型芯片331。

第一通信芯片21,用于将第一重启指令转发至第一类型芯片231。

第一类型芯片231,用于解析第一重启指令获得芯片标识。若芯片标识对应第一类型芯片231,则控制第一通信芯片21触发第一类型芯片231进行复位。若芯片标识对应第三类型芯片331,则控制第一通信芯片21将第一重启指令转发至与芯片标识对应的第二通信芯片31。

第二通信芯片31,用于将第一重启指令转发至与第二通信芯片31连接的第三类型芯片331。

第三类型芯片331,用于控制与第三类型芯片331连接的第二通信芯片31触发第三类型芯片331进行复位。

可见,通过上述过程,使得芯片程序更新之后,仅复位重启完成程序更新的控制芯片,不会影响控制系统中其他部件以及整个控制系统,避免了因为程序更新而引起的整个控制系统的复位重启。

进一步地,上位机1还用于,在检测到第二类型芯片233或者第四类型芯片333完成芯片程序更新之后,通过通信接口向第一通信芯片21发送第二重启指令。第二重启指令用于指示重启第二类型芯片233或者重启第四类型 芯片333。

第一通信芯片21,用于将第二重启指令转发至第一类型芯片231。

第一类型芯片231,用于解析第二重启指令获得芯片标识。若芯片标识对应第二类型芯片233,则控制第一通信芯片21关闭上位机1与第二类型芯片233之间的通信信道,并控制第一通信芯片21触发第二类型芯片233进行复位。若芯片标识对应第四类型芯片333,则控制第一通信芯片21关闭上位机1与芯片标识相对应的第二通信芯片31之间的通信信道,并控制第一通信芯片21将第二重启指令转发至与芯片标识对应的第二通信芯片31。

第二通信芯片31,用于将第二重启指令转发至与第二通信芯片31连接的第三类型芯片331。

第三类型芯片331,用于控制与第三类型芯片331连接的第二通信芯片31关闭上位机1与芯片标识相对应的第四类型芯片333之间的通信信道,并控制与第三类型芯片331连接的第二通信芯片31触发第四类型芯片333进行复位。

本实施例提供了一种芯片程序更新系统,当某一个控制芯片远程完成程序更新之后,仅实现了该控制芯片的单独复位重启,避免了单次更新某控制芯片后整个控制系统的复位重启问题,保证了程序更新后整个控制系统的正常运行。

图3为本发明实施例四提供的芯片程序更新系统的结构示意图,本实施例在上述实施例的基础上,以具体芯片类型为例,详细说明了本发明提供的芯片程序更新系统的工作原理。如图3所示,本实施例提供的芯片程序更新系统,包括:上位机1、第一控制电路板和四个第二控制电路板。

其中,第一控制电路板包括:cpld1、fpga1、dsp1和闪存(flashmemory,简称flash)1,第一个第二控制电路板包括:cpld2、fpga2、dsp2和flash2,第二个第二控制电路板包括:cpld3、fpga3、dsp3和flash3,第三个第二控制电路板包括:cpld4、fpga4、dsp4和flash4。

其中,上位机1通过串口与cpld1连接。

下面以远程更新fpga1为例,详细说明本实施例提供的芯片程序更新系统的工作原理。

上位机1通过串口发送更新数据,更新数据中包括芯片标识fpga1。 cpld1收到更新数据后转发至fpga1,fpga1对更新数据进行解析,获得芯片标识为fpga1,fpga1将更新数据直接导入flash1。flash1代码导入结束后,fpga1通过cpld1向上位机1反馈成功标识,上位机1确认fpga1的程序代码更新成功,则通过cpld1发送复位指令,fpga1根据复位指令控制cpld1触发fpga1的复位接口,从而完成fpga1的复位重启。

下面以远程更新dsp1为例,详细说明本实施例提供的芯片程序更新系统的工作原理。

上位机1通过串口发送更新数据,更新数据中包括芯片标识dsp1。cpld1收到更新数据后转发至fpga1,fpga1对更新数据进行解析,获得芯片标识为dsp1,fpga1控制cpld1建立dsp1与上位机1的串行双工通道,上位机1直接调用ti插件c2prog即可完成dsp1程序的更新。当上位机1检测到dsp1的程序代码更新成功后,上位机1通过cpld1发送复位指令,fpga1控制cpld1关闭该串行通道,并控制cpld1触发dsp1的复位接口,从而完成dsp1的复位重启。

下面以远程更新fpga3为例,详细说明本实施例提供的芯片程序更新系统的工作原理。

上位机1通过串口发送更新数据,更新数据中包括芯片标识fpga3。cpld1收到更新数据后转发至fpga1,fpga1对更新数据进行解析,获得芯片标识为fpga3,fpga1控制cpld1建立上位机1到dpld3之间的串行全双工通道,fpga3将更新数据直接导入flash3。flash3代码导入结束后,fpga3通过cpld3和cpld1向上位机1反馈成功标识,上位机1确认fpga3的程序代码更新成功,则通过cpld1发送复位指令,fpga1对复位指令解析后获得芯片标识为fpga3,cpld1将复位指令转发至cpld3,fpga3根据复位指令控制cpld3触发fpga3的复位接口,从而完成fpga3的复位重启。

下面以远程更新dsp3为例,详细说明本实施例提供的芯片程序更新系统的工作原理。

上位机1通过串口发送更新数据,更新数据中包括芯片标识dsp3。cpld1收到更新数据后转发至fpga1,fpga1对更新数据进行解析,获得芯片标识为dsp3,fpga1控制cpld1建立上位机1到dpld3之间的串行全双工通道,fpga3控制cpld3建立dsp3与上位机1的串行双工通道,上位机1直接调 用ti插件c2prog即可完成dsp3程序的更新。当上位机1检测到dsp3的程序代码更新成功后,上位机1通过cpld1发送复位指令,fpga1对复位指令解析后获得芯片标识为dsp3,fpga1控制cpld1关闭上位机1到dpld3之间的串行全双工通道,fpga3控制cpld3关闭dsp3与上位机1之间的串行双工通道,fpga3控制cpld3触发dsp3的复位接口,从而完成dsp3的复位重启。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1