CN104021010A - 一种实时在线更新应用程序和图像模板数据的装置 - Google Patents
一种实时在线更新应用程序和图像模板数据的装置 Download PDFInfo
- Publication number
- CN104021010A CN104021010A CN201410120342.7A CN201410120342A CN104021010A CN 104021010 A CN104021010 A CN 104021010A CN 201410120342 A CN201410120342 A CN 201410120342A CN 104021010 A CN104021010 A CN 104021010A
- Authority
- CN
- China
- Prior art keywords
- data
- program
- application program
- real
- kernel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明涉及一种实时在线更新应用程序和图像模板数据的装置,包括:FLASH存储芯片,所述FLASH存储芯片中存储内核程序、应用程序和模板数据;所述内核程序包括:通信处理模块、数据缓存模块、数据存储模块以及程序跳转模块。本发明利用同步422串行接口,接收主控系统发送的上传数据,通过临时缓存、在线更新、程序跳转,实现对图像处理板中的模板和程序数据的实时在线更新,目前本发明的实时在线更新应用程序和图像模板数据的装置已经应用于飞行器工程硬件平台。
Description
技术领域
本发明属于图像处理技术领域,涉及一种实时在线更新应用程序和图像模板数据的装置。
背景技术
在图像制导过程中,主要通过匹配模板图和实时图自动识别并跟踪预先指定的打击目标。在战前准备阶段,需要在短时间内将预打击的目标模板图像上传入图像处理板卡的FLASH存储芯片,如果对应的目标捕获跟踪算法即应用程序也有更改,则需要与目标模板图像一起完成在线实时更新。在测试实验阶段,可以通过仿真器连接图像处理板卡,对FLASH数据进行手动更新。而在实际应用阶段,图像处理板卡已经封装,只能通过外部通信接口完成数据的实时上传更新。
发明内容
本发明要解决的技术问题是提供一种能够通过外部通信接口完成模板和程序数据的实时上传更新的装置,该装置可以在非捕获跟踪状态的任意时刻,接收上传数据,完成数据更新,数据量不小于4M Byte,更新时间不大于3分钟;更新后不需要系统重新启动,即可通过软件控制指令完成程序的跳转运行;同时在数据上传过程中,不会受到系统随机掉电的影响,上电后仍可以正常工作。
为了解决上述技术问题,本发明的技术方案具体如下:
一种实时在线更新应用程序和图像模板数据的装置,包括:FLASH存储芯片,所述FLASH存储芯片中存储内核程序、应用程序和模板数据;所述内核程序包括:
通信处理模块:根据同步422串行接口协议,完成主控系统与图像处理板卡间的数据通信传输及数据解析;
数据缓存模块:在DSP数字信号处理器的片上内存区开辟缓存空间,用于缓存接收到的上传数据;
数据存储模块:使用掉电不消失的FLASH存储芯片,存储更新的模板和程序数据;
程序跳转模块:在内核程序中,根据接收到主控系统发送的开始命令,将应用程序从FLASH存储芯片中搬移到片上内存,并跳转到片上内存应用程序入口处,运行目标捕获跟踪算法,完成内核程序到应用程序的跳转;在应用程序中,根据接收到主控系统发送的停止命令,将内核程序从FLASH存储芯片中搬移到片上内存,并跳转到片上内存内核程序入口处,完成应用程序到内核程序的跳转。
上述技术方案中,所述内核程序不可在线更新,所述应用程序需要在线更新。
本发明具有以下的有益效果:
本发明利用同步422串行接口,接收主控系统发送的上传数据,通过临时缓存、在线更新、程序跳转,实现对图像处理板中的模板和程序数据的实时在线更新,目前本发明的实时在线更新应用程序和图像模板数据的装置已经应用于飞行器工程硬件平台。
附图说明
下面结合附图和具体实施方式对本发明作进一步详细说明。
图1为本发明的结构框图。
图2为内核程序流程图。
图3为通讯处理流程框图。
图4为FLASH存储器存储划分示意图。
具体实施方式
本发明的发明思想为:
由于任务要求图像处理板在非捕获跟踪状态下,能够在任意时刻接收主控计算机命令,在线进行模板和程序的更新。考虑到更新程序过程中可能存在掉电等异常情况,如果通信处理程序和FLASH擦除读写操作程序放在现有应用程序中,当正在执行FLASH读写操作时,图像处理板断电,可能造成FLASH存储区内的现有应用程序丢失或错误,重新上电后,DSP无法从FLASH存储区中得到有效的现有应用程序数据,造成DSP无法启动工作。
因此,本发明将通讯处理模块、对FLASH的擦除读写操作模块从现有应用程序中分离出来,组成内核程序,存储在FLASH中的固定位置;将分离了对FLASH的擦除读写操作模块的应用程序存储在FLASH中另一块固定位置。当正在对FLASH进行读写操作时,突然出现板卡掉电等异常情况,只会造成分离了FLASH的擦除读写操作模块的现有应用程序区的应用程序的数据丢失或错误,内核程序区的数据不受影响,板卡重新上电后,仍然可以正常运行内核程序,等待主控系统重新发送更新数据。总结DSP中程序设计如下:
DSP程序分为内核程序和应用程序两个部分。内核程序负责与外部进行通信,当接收到数据上传命令后,根据数据类型,进行模板写入、应用程序更新,当接收到开始指令后,DSP将应用程序从FLASH中搬移到片上内存,并跳转到片上内存应用程序入口处,运行捕获跟踪操作,此时不再响应模板更新命令;应用程序负责目标捕获与跟踪,当接收到停止指令后,会将内核程序从FLASH中搬移到片上内存,并跳转到内核程序,继续等待外部通信指令。
下面结合附图对本发明做以详细说明。
本发明使用TMS320C6416DSP数字信号处理器作为主处理单元,外接同步串口芯片,完成与主控系统通信;FLASH存储芯片,存储更新的模板和程序数据。FLASH存储芯片中存储三部分内容,内核程序、应用程序和模板数据。内核程序为不可在线更新的程序,包括与主控系统的通信、数据缓存、擦除读写FLASH、程序跳转等功能模块。应用程序为目标捕获跟踪算法程序,即需要在线更新的程序数据。
如图1所示,本发明的内核程序包括:
通信处理模块:根据同步422串行接口协议,完成主控系统与图像处理板卡间的数据通讯通信传输及数据解析;
数据缓存模块:在DSP的片上内存区开辟缓存空间,用于缓存接收到的上传数据;
数据存储模块:使用掉电不消失的FLASH存储芯片,存储更新的模板和程序数据。
程序跳转模块:在内核程序中,根据接收到主控系统发送的开始命令,将应用程序从FLASH中搬移到片上内存,并跳转到片上内存应用程序入口处,运行目标捕获跟踪算法,完成内核程序到应用程序的跳转;在应用程序中,根据接收到主控系统发送的停止命令,将内核程序从FLASH中搬移到片上内存,并跳转到片上内存内核程序入口处,完成应用程序到内核程序的跳转。
具体的说:
1.通信处理模块
主控系统最大上传更新数据量为4M Byte。将4M Byte数据分成64包,每包64k Byte,对于每包数据,先发一个参数帧,然后发数据帧,数据帧32个字节,包括帧头帧尾,校验位和24个有效数据,64k Byte数据分解为24个一帧的数据帧,共分解成64×1024/24=2731个数据帧。当2731个数据帧都发完后,图像处理板统计漏帧数和帧号返回给主控系统,主控系统检查如果漏帧数小于12,就根据帧号重发漏帧数据,如果大于12就重发64k数据。
(1)通信协议如表1、2所示。
表1主控系统发给图像处理板的指令格式
表2图像处理板发给主控系统的指令格式
(2)处理流程
通讯处理流程如图3所示。完成通讯数据的解析,漏帧数据帧号的统计回传。
2.数据缓存模块
在DSP片上数据区开辟64k Byte大小缓存区域,并分成2731块,每块24字节大小,将每帧的24个有效数据按当前帧号存入对应的块内,如果出现漏帧情况,则该帧号对应区域暂时空闲,当数据补发时,再根据当前帧号存入对应的块地址。
3.数据存储模块
图4给出了FLASH芯片的存储区划分,空间划分如表3所示。
表3FLASH空间地址划分
名称 | 大小 | 起始地址 | 结束地址 |
内核程序区 | 128k | 0x64000000 | 0x6401FFFF |
应用程序区 | 128k | 0x64020000 | 0x6403FFFF |
模板数据区 | 7.75M | 0x64040000 | 0x647FFFFF |
根据接收到的数据类型完成对对应存储区的数据写入更新操作,主要包括对对应存储区的擦除和烧写。
4.程序跳转模块
在内核程序中,接收到开始命令后,将FLASH芯片中的应用程序搬入DSP片上内存的0x00000000地址,然后将中断向量表指针指向0x00000000地址,程序执行指针跳转到0x00000000地址,完成从内核程序到应用程序的跳转。
在应用程序中,接收到停止命令后,将FLASH芯片中的内核程序搬入DSP片上内存的0x000E0000地址,然后将中断向量表指针指向0x000E0000地址,程序执行指针跳转到0x000E0000地址,完成从应用程序到内核程序的跳转。
1.硬件环境:32bit定点,1GHz时钟的TMS320C6416定点数字信号处理器。
2.步骤
1)软件配置
名称:Data_Updating.c
位置:此文件位于系统中的数据上传位置
功能:能够根据主控指令完成对模板数据、应用程序的实时更新和程序跳转。
步骤:见下面
接口:输入为待上传数据,输出为上传数据烧写入FLASH的对应存储区。
2)上传步骤
a)主控系统将上传数据进行分解打包,每帧数据32字节,上传数据量不大于4M Byte。
b)主控系统给图像处理板卡发送控制命令,包括数据上传参数帧、数据帧,图像处理板卡响应以上命令完成数据接收和数据烧写更新。
c)主控系统给图像处理板卡发送开始命令,图像处理板卡完成程序跳转,进行目标的捕获和跟踪。
d)主控系统给图像处理板卡发送停止命令,图像处理板卡停止捕获跟踪,跳转入内核程序,等待主控系统命令。
e)从FLASH中读出应用程序区和模板数据区的数据,与上传数据对比,一致则证明数据上传功能正确。
为了验证该方法的有效性,本发明进行了大量实验,同时在传输过程中随机断电,证明数据上传功能正确。上传消耗时间如表4所示。
表4上传消耗时间
数据量大小 | 传输时间 | 擦除时间 | 写入时间 | 总计 |
64k | 371ms | 360ms | 320ms | 1051ms |
4M数据上传消耗时间大概为68s,满足系统要求不大于3分钟的指标要求。
从上述实验结果可以看出,利用本发明提供的通过外部通信接口完成模板和程序数据的实时上传更新的装置,能够在非捕获跟踪状态的任意时刻,接收上传数据,完成数据更新,数据量不小于4M Byte,更新时间不大于3分钟;更新后不需要系统重新启动,即可通过软件控制指令完成程序的跳转运行;同时在数据上传过程中,不会受到系统随机掉电的影响,上电后仍可以正常工作。目前该方法已经应用于飞行器工程硬件平台。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
Claims (2)
1.一种实时在线更新应用程序和图像模板数据的装置,其特征在于,包括:FLASH存储芯片,所述FLASH存储芯片中存储内核程序、应用程序和模板数据;所述内核程序包括:
通信处理模块:根据同步422串行接口协议,完成主控系统与图像处理板卡间的数据通信传输及数据解析;
数据缓存模块:在DSP数字信号处理器的片上内存区开辟缓存空间,用于缓存接收到的上传数据;
数据存储模块:使用掉电不消失的FLASH存储芯片,存储更新的模板和程序数据;
程序跳转模块:在内核程序中,根据接收到主控系统发送的开始命令,将应用程序从FLASH存储芯片中搬移到片上内存,并跳转到片上内存应用程序入口处,运行目标捕获跟踪算法,完成内核程序到应用程序的跳转;在应用程序中,根据接收到主控系统发送的停止命令,将内核程序从FLASH存储芯片中搬移到片上内存,并跳转到片上内存内核程序入口处,完成应用程序到内核程序的跳转。
2.根据权利要求1所述的装置,其特征在于,所述内核程序不可在线更新,所述应用程序需要在线更新。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410120342.7A CN104021010A (zh) | 2014-03-27 | 2014-03-27 | 一种实时在线更新应用程序和图像模板数据的装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410120342.7A CN104021010A (zh) | 2014-03-27 | 2014-03-27 | 一种实时在线更新应用程序和图像模板数据的装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104021010A true CN104021010A (zh) | 2014-09-03 |
Family
ID=51437783
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410120342.7A Pending CN104021010A (zh) | 2014-03-27 | 2014-03-27 | 一种实时在线更新应用程序和图像模板数据的装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104021010A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110381142A (zh) * | 2019-07-22 | 2019-10-25 | 中国科学院长春光学精密机械与物理研究所 | 数据实时上传更新装置 |
WO2020118656A1 (zh) * | 2018-12-14 | 2020-06-18 | 深圳鲲云信息科技有限公司 | 基于文件传输协议的数据传输方法、装置和电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN2758864Y (zh) * | 2004-12-22 | 2006-02-15 | 海信集团有限公司 | 软件在线升级接口电路 |
CN1851645A (zh) * | 2006-01-17 | 2006-10-25 | 华为技术有限公司 | 一种单片机系统在运行中升级的装置和方法 |
US20080040712A1 (en) * | 2006-08-11 | 2008-02-14 | Sharp Kabushiki Kaisha | Data processing apparatus, program managing apparatus, control program updating method, program managing method, program managing system, updating program, and recording medium |
-
2014
- 2014-03-27 CN CN201410120342.7A patent/CN104021010A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN2758864Y (zh) * | 2004-12-22 | 2006-02-15 | 海信集团有限公司 | 软件在线升级接口电路 |
CN1851645A (zh) * | 2006-01-17 | 2006-10-25 | 华为技术有限公司 | 一种单片机系统在运行中升级的装置和方法 |
US20080040712A1 (en) * | 2006-08-11 | 2008-02-14 | Sharp Kabushiki Kaisha | Data processing apparatus, program managing apparatus, control program updating method, program managing method, program managing system, updating program, and recording medium |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020118656A1 (zh) * | 2018-12-14 | 2020-06-18 | 深圳鲲云信息科技有限公司 | 基于文件传输协议的数据传输方法、装置和电子设备 |
CN110381142A (zh) * | 2019-07-22 | 2019-10-25 | 中国科学院长春光学精密机械与物理研究所 | 数据实时上传更新装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103246536B (zh) | 物联定位系统的固件无线升级方法 | |
CN105159731B (zh) | 一种fpga配置文件远程升级的装置 | |
CN100461105C (zh) | 一种智能化设备软件升级与修复的方法和系统 | |
CN105573800A (zh) | 一种基于zynq的单板或多板系统及在线更新方法 | |
CN102945179B (zh) | 基于mtd分区的软件升级方法和装置 | |
US20120272226A1 (en) | Control panel and firmware updating method | |
DK2245545T3 (da) | Tilvejebringelse af indirekte dataadressering til en styreblok i et kanalundersystem i et i/o-behandlingssystem | |
CN113407393B (zh) | 芯片验证方法、终端设备、验证平台以及存储介质 | |
CN105302612A (zh) | 快速升级电子系统机箱内单片机软件程序的方法 | |
CN103577310A (zh) | 记录软件调试日志的方法以及装置 | |
CN103324583A (zh) | 一种光纤陀螺离线高速数据采集方法 | |
CN104077166A (zh) | 基于fpga中ip核的epcs与epcq存储器在线升级方法 | |
CN105741883A (zh) | 测试方法和装置 | |
CN104991806A (zh) | 单片机程序远程固件升级系统和方法 | |
CN109728886A (zh) | 一种适于跨版本升级的数据同步方法、装置、设备及存储介质 | |
US9652416B2 (en) | Storage device for performing in-storage computing operations, method of operation the same, and system including the same | |
CN101452393A (zh) | 基于pci总线的dsp2812程序在线升级方法 | |
CN104021010A (zh) | 一种实时在线更新应用程序和图像模板数据的装置 | |
CN102722408A (zh) | 一种通讯设备软件更新的方法及装置 | |
CN102902630A (zh) | 一种访问本地文件的方法和装置 | |
CN104866397A (zh) | 计算机系统与控制方法 | |
CN111309740A (zh) | 一种数据处理的方法、装置、设备及存储介质 | |
CN113660123B (zh) | 虚拟交换机升级方法、装置、电子设备以及存储介质 | |
CN103164313A (zh) | 调试系统及方法 | |
US20230079432A1 (en) | Storage transaction log |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140903 |