一种嵌入式装置及其程序并行下载方法
技术领域
本发明属于嵌入式装置开发领域,涉及各种文件的下载方法,具体涉及一种嵌入式装置及其程序并行下载方法。
背景技术
嵌入式装置是电力系统、工业控制等领域安全稳定运行的关键设备。嵌入式装置内需要程序驱动来完成特定的功能,所以嵌入式装置首先需要下载程序文件。程序文件有些往往比较大,如果板卡较多时,就会表现出耗费超长的时间问题,对于生产效率造成严重的影响,因此研究出下载数据效率较高的方法是很有必要的。
现有技术中,并行下载方式可分为两种,一种是针对同一型号的插件采用多线程的下载方式这种方式大多是基于网络传输,从宏观上讲是并行,但是实际上从微观上看还是串行的;另一种是多个板卡分别连接各自对应的下载器,这种下载方式比较浪费资源,而且从本质上来讲还是单个板卡的下载,即还是一个下载器对应一个板卡。
发明内容
发明目的:本发明的目的在于提供一种嵌入式装置,其采用灵活的独有地址和公有地址相结合的方式,实现并行高速数据下载;本发明的第二目的在于通过一种可靠且高效的嵌入式装置的程序并行下载方法。
技术方案:本发明的嵌入式装置,包括一个主CPU板和多个其它板卡,主CPU板和多个其它板卡通过一条数据总线连接,主CPU板用于将需要下载的程序下载到其他板卡;所述多个其它板卡包括独有地址和公有地址。
所述公有地址需提前约定,且不与独有地址重复;公有地址用于并行传输程序。
所述嵌入式装置支持多个程序文件并行下载,提高下载效率。
所述数据总线为CAN总线。
本发明还包括一种嵌入式装置的程序并行下载方法,包括以下步骤:
(1)下载程序前,主CPU板询问其它板卡是否支持并行下载;
(2)若支持,则主CPU板询问其它板卡是否完成并行下载的准备工作;
(3)若完成,则主CPU板向多个其它板卡发送并行下载数据;
(4)下载完成后主CPU板校验每个板卡是否下载成功;
(5)若下载成功,则查询是否还有文件需要并行下载,若没有,则下载结束。
步骤(4)中,下载完成后每个板卡通过各自的独有地址将下载结果反馈给主CPU板进行校验。
步骤(4)中,若主CPU板在校验时发现存在下载失败的板卡,则主CPU板根据配置确定重新下载或直接失败告警。
若重新下载,则下载失败的板卡通过其独有地址再次下载。
有益效果:本发明与现有技术相比,其有益效果在于:真正实现了并行下载,节省了时间,提高了生产效率。
附图说明
图1为本发明所述方法的流程示意图。
具体实施方式
下面结合具体实施方式和说明书附图对本发明的技术方案做进一步详细描述。
本发明的嵌入式装置包括一个主CPU板和多个其它板卡,主CPU板用于将需要下载的程序下载到其他板卡,主CPU板和多个其它板卡通过一条数据总线连接;本实施例中,数据总线为CAN总线。多个其它板卡包括独有地址和公有地址。其中,公有地址需提前约定,且不与独有地址重复,公有地址的作用是并行传输程序。本发明的嵌入式装置支持多个程序文件并行下载,即下载完文件A,紧接着下载文件B,文件个数不限。
如图1所示,本发明还包括一种嵌入式装置的程序并行下载方法,包括以下步骤:
(1)下载程序前,主CPU板询问其它待下载程序的板卡是否支持并行下载;
(2)若支持,则主CPU板询问其它待下载程序的板卡是否完成并行下载的准备工作;
(3)若完成,则主CPU板向多个其它待下载程序的板卡发送并行下载数据;
(4)下载完成后每个板卡通过各自的独有地址将下载结果反馈给主CPU板进行校验,主CPU板校验每个板卡是否下载成功;若主CPU板在校验时发现存在下载失败的板卡,则主CPU板根据配置确定重新下载或直接失败告警;若重新下载,则下载失败的板卡通过其独有地址再次下载。
(5)若下载成功,则查询是否还有文件需要并行下载,若没有,则下载结束。
下载过程如下:主CPU板通过待下载程序板卡的独有地址询问其是否支持并行下载,获知到如果支持并行下载功能,则主CPU板将下载的文件进行分组,通过每个板卡的独有地址获知到所有板卡已经准备好接收并行下载的数据时,通过CAN总线将数据发送出去,其他板卡解析到公共地址后,则将数据保存在本板卡里。数据下载完成后,主CPU板通过每个板卡的独有地址询问是否下载成功,其他板卡通过自己的独有地址将校验结果返回给CPU板,CPU板根据收到的校验信息,可以判断出是否下载成功。如果成功,且存在下一文件需要下载,则接着启动并行下载。如果返回信息显示下载失败,则根据配置采用重新下载或者直接失败告警。