CN104407878B - C6000数字信号处理器在线升级方法 - Google Patents

C6000数字信号处理器在线升级方法 Download PDF

Info

Publication number
CN104407878B
CN104407878B CN201410558178.8A CN201410558178A CN104407878B CN 104407878 B CN104407878 B CN 104407878B CN 201410558178 A CN201410558178 A CN 201410558178A CN 104407878 B CN104407878 B CN 104407878B
Authority
CN
China
Prior art keywords
software
bin
flash
digital signal
upgrading
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.)
Active
Application number
CN201410558178.8A
Other languages
English (en)
Other versions
CN104407878A (zh
Inventor
王盛
朱燕萍
白焕旭
刘希强
卫瑞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Academy of Launch Vehicle Technology CALT
Beijing Institute of Space Launch Technology
Original Assignee
China Academy of Launch Vehicle Technology CALT
Beijing Institute of Space Launch Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Academy of Launch Vehicle Technology CALT, Beijing Institute of Space Launch Technology filed Critical China Academy of Launch Vehicle Technology CALT
Priority to CN201410558178.8A priority Critical patent/CN104407878B/zh
Publication of CN104407878A publication Critical patent/CN104407878A/zh
Application granted granted Critical
Publication of CN104407878B publication Critical patent/CN104407878B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明C6000数字信号处理器在线升级方法,提高软件升级的可靠性,摒弃了在线升级模块内嵌于产品软件的传统方案,而是将Flash分为启动代码区和产品程序区两个不同的分区,启动代码区存储的在线升级软件,可以通过RS422/RS232/CAN接口对产品程序区进行读写,并能实现产品软件的引导和启动;产品程序区存储实际的产品软件。本发明C6000数字信号处理器在线升级方法,不仅可以实现产品在不开机箱、不使用仿真器的情况下在线升级产品软件,还能通过Flash分区存储的方式提高软件升级的可靠性。

Description

C6000数字信号处理器在线升级方法
技术领域
本发明涉及一种数字信号处理器在线升级方法,具体的说,是涉及一种C6000数字信号处理器在线升级方法。
背景技术
美国TI公司的C6000系列数字信号处理器DSP在工业控制、高性能计算、音视频处理和航空航天等领域应用广泛,但是该数字信号处理器本身并不支持串口启动等在线软件更新,产品交付后无法通过外部接口进行软件在线升级,必须开箱维护。
通常,该型数字信号处理器的软件烧写方法需要预先编写Flash烧写软件,利用仿真加载配合CCS的加载功能完成,过程复杂。虽然可以在产品软件中嵌入flash烧写代码进行软件在线升级,但是该方法可靠性较差,在升级过程中如若发生死机、断电或者升级文件错误均可能导致升级失败,并再也无法升级,必须开箱维护。
发明内容
针对上述现有技术中的不足,本发明提供一种在不开箱的基础上通过RS422/RS232/CAN接口对产品软件在线升级;提高了软件升级的可靠性,升级过程中死机、意外断电或者其它人为操作失误均不影响再次进行软件在线升级的C6000数字信号处理器在线升级方法。
本发明所采取的技术方案是:
一种C6000数字信号处理器在线升级方法,包括如下步骤:首次固化步骤和在线步骤;
所述首次固化步骤为:
将数字信号处理器与数字信号仿真器相连接;数字信号处理器上电;
在Code Composer Studio集成开发环境中打开Flash固化工程FlashBurn.prj,并在Flash擦除完成处设置断点,开始运行;
当程序执行到断点处时,通过CCS软件加载在线升级软件Bootloader.bin到0x80000000处;
完成加载后继续运行程序,程序自动将在线升级软件Bootloader.bin写入Flash的起始地址;
所述在线步骤为包括:接口配置步骤、启动引导步骤、输入用户命令步骤、Xmodem数据传输步骤、软件升级以及软件启动步骤,具体过程如下:
接口配置步骤:将数字信号处理器连接上电源线缆和通讯线缆,并在与之相连的电脑中打开超级终端软件,设置超级终端软件的串口参数。
启动引导步骤:上电后,终端显示press s to stop,1s内键入字符s进入命令行状态;
用户命令步骤:在命令行状态下,输入命令update;开始计时等待产品软件传输;
Xmodem数据传输步骤:点击菜单栏的传送,选择待升级软件data.bin,选择1KXmodem的传输协议;开始传输升级软件data.bin;
软件升级步骤:升级软件data.bin传输结束,超级终端将显示Flash擦除、写入和读取校验操作;校验完成未显示错误信息,软件在线更新结束。
软件启动步骤:断电重启,系统在线升级软件Bootloader.bin首先执行并自动引导并跳转至data.bin的入口地址0x400,执行data.bin。
所述Flash的起始地址为:0x90000000
所述设置串口参数为:115200,8,n,1。
本发明相对现有技术的有益效果:
本发明C6000数字信号处理器在线升级方法,该方法为提高软件升级的可靠性,摒弃了在线升级模块内嵌于产品软件的传统方案,而是将Flash分为启动代码区和产品程序区两个不同的分区。启动代码区存储的在线升级软件,可以通过RS422/RS232/CAN接口对产品程序区进行读写,并能实现产品软件的引导和启动;产品程序区存储实际的产品软件。该方法不仅可以实现产品在不开机箱、不使用仿真器的情况下在线升级产品软件,还能通过Flash分区存储的方式提高软件升级的可靠性。
附图说明
图1是本发明C6000数字信号处理器在线升级方法的首次固化bootloader.bin操作流程图;
图2是本发明C6000数字信号处理器在线升级方法的软件在线升级流程图;
图3是本发明C6000数字信号处理器在线升级方法的固化bootloader.bin后产品程序的启动和更新流程图。
具体实施方式
以下参照附图及实施例对本发明进行详细的说明:
附图1-3可知,一种C6000数字信号处理器在线升级方法,其特征在于,包括如下步骤:首次固化步骤和在线步骤;
所述首次固化步骤为:
将数字信号处理器与数字信号仿真器相连接;数字信号处理器上电;
在Code Composer Studio集成开发环境中打开Flash固化工程FlashBurn.prj,并在Flash擦除完成处设置断点,开始运行;
当程序执行到断点处时,通过CCS软件加载在线升级软件Bootloader.bin到0x80000000处;
完成加载后继续运行程序,程序自动将在线升级软件Bootloader.bin写入Flash的起始地址;
所述在线步骤为包括:接口配置步骤、启动引导步骤、输入用户命令步骤、Xmodem数据传输步骤、软件升级以及软件启动步骤,具体过程如下:
接口配置步骤:将数字信号处理器连接上电源线缆和通讯线缆,并在与之相连的电脑中打开超级终端软件,设置超级终端软件的串口参数。
启动引导步骤:上电后,终端显示press s to stop,1s内键入字符s进入命令行状态;
用户命令步骤:在命令行状态下,输入命令update;开始计时等待产品软件传输;
Xmodem数据传输步骤:点击菜单栏的传送,选择待升级软件data.bin,选择1KXmodem的传输协议;开始传输升级软件data.bin;
软件升级步骤:升级软件data.bin传输结束,超级终端将显示Flash擦除、写入和读取校验操作;校验完成未显示错误信息,软件在线更新结束。
软件启动步骤:断电重启,系统在线升级软件Bootloader.bin首先执行并自动引导并跳转至data.bin的入口地址0x400,0x400可以在编译程序的gel文件中设置,进而执行data.bin。
所述Flash的起始地址为:0x90000000
所述设置串口参数为:115200,8,n,1,其中,通讯波特率为:115200bps;数据为8位;无校验位,1位为停止位。
本发明C6000数字信号处理器在线升级方法,提高软件升级的可靠性,摒弃了在线升级模块内嵌于产品软件的传统方案,而是将Flash分为启动代码区和产品程序区两个不同的分区。启动代码区存储的在线升级软件,可以通过RS422/RS232/CAN接口对产品程序区进行读写,并能实现产品软件的引导和启动;产品程序区存储实际的产品软件。该方法不仅可以实现产品在不开机箱、不使用仿真器的情况下在线升级产品软件,还能通过Flash分区存储的方式提高软件升级的可靠性。
启动代码区在flash中的地址空间为0x90000000-0x900FFFFF,存储在线升级软件;产品程序区在flash中的地址为0x90100000-0x90400000存储实际的产品软件。
如图1流程示意图。
该流程开始于步骤s101。
在步骤s102,将设备与DSP仿真器相连,并给设备上电。
在步骤s103,在CCS软件环境中打开Flash固化工程FlashBurn.prj,并在Flash擦除完成处设置断点,开始运行。
在步骤s104,程序执行到断点后,通过CCS软件加载Bootloader.bin到0x80000000处。
在步骤s105,继续运行程序,程序自动将Bootloader.bin写入Flash的起始地址,即0x90000000。
该流程结束于步骤s106。
如图2流程示意图。
该流程开始于步骤s201。
在步骤s202,接口配置步骤。
在步骤s203,启动引导步骤。
在步骤s204,输入用户命令步骤。
在步骤s205,Xmodem数据传输步骤。
在步骤s206,软件升级以及软件启动步骤。
该流程结束于步骤s207。
如图3流程示意图。
该流程开始于步骤s301,。
在步骤s302,判断是否首次使用,是首次使用执行步骤s303,不是首次使用执行步骤s304。
在步骤s303,将在线升级软件写入flash中的启动代码区。
在步骤s304,线缆连接串口参数设置。
在步骤s305,系统上电。
在步骤s306,判断是否进入命令行模式,是进入命令行模式执行步骤s307;不是进入命令行模式,执行步骤s308。
在步骤s307,手动选择待升级产品软件进行传输。
在步骤s308,自动执行用户程序。
在步骤s309,flash擦除、写入、读取校验操作是否成功,flash擦除、写入、读取校验操作成功,执行步骤s311;flash擦除、写入、读取校验操作是否成功,flash擦除、写入、读取校验操作不成功,执行步骤s310。
在步骤s310,判断是否在线更新软件,是在线更新软件执行步骤s312;不是在线更新软件执行步骤s313。
在在步骤s311,软件在线更新成功。
在步骤s312,系统断电后执行步骤s305。
步骤s313,软件在线更新失败。
该流程结束于步骤s314。
设备成功固化bootloader.bin后,产品程序的启动和更新流程如下:
1.DSP上电后,位于Flash起始地址的1k代码将自动拷贝到内部sram中,并从内部sram的地址0处开始执行代码。在线升级软件的启动引导模块就在这1k代码中,它负责初始化中断向量,初始化外设和SDRAM,并将剩下的代码从flash中拷贝到外部SDRAM中,并跳转到SDRAM中执行接口配置模块;
2.接口配置模块负责完成对RS422/RS232/CAN接口的驱动配置,实现DSP和外部升级软件的通讯。
3.接口配置模块完成后,上位机终端软件可以接收到用户命令模块发送出来的提示信息,在固定时间内(1秒,该时间可设置)如果上位机终端软件向DSP发送字符‘s’,在线升级软件将进行命令行状态,等待升级命令;否则,它将从flash中的产品程序区中拷贝产品软件,执行该软件。
4.如果进行命令行状态,输入”update”指令,DSP将进行软件在线升级。并提示上位机终端软件按照xmodem协议发送待更新的产品软件文件data.bin。传输结束后,执行flash擦除、写入和读取校验操作,校验成功即实现软件在线更新。
5.断电,重新启动DSP。1s内不输入字符‘s’,DSP自动引导执行更新的产品软件data.bin。
本发明C6000数字信号处理器在线升级方法,实际使用过程中,可以实现在不开箱、不使用仿真器的情况下通过RS422/RS232/CAN接口对产品软件在线升级;无需专用上位软件和协议,采用通用的超级终端软件和Xmodem协议即可实现软件在线升级;将在线升级软件和产品用户程序在flash中分区存储,对产品用户程序的擦出不影响在线升级软件,提高在线升级的可靠性。

Claims (2)

1.一种C6000数字信号处理器在线升级方法,其特征在于,包括如下步骤:首次固化步骤和在线步骤;
所述首次固化步骤为:
将数字信号处理器与数字信号仿真器相连接;数字信号处理器上电;
在Code Composer Studio集成开发环境中打开Flash固化工程FlashBurn.prj,并在Flash擦除完成处设置断点,开始运行;
当程序执行到断点处时,通过CCS软件加载在线升级软件Bootloader.bin到flash中的启动代码区:0x80000000处;
完成加载后继续运行程序,程序自动将在线升级软件Bootloader.bin写入Flash的起始地址;
所述在线步骤为包括:接口配置步骤、启动引导步骤、输入用户命令步骤、Xmodem数据传输步骤、软件升级以及软件启动步骤,具体过程如下:
接口配置步骤:将数字信号处理器连接上电源线缆和通讯线缆,并在与之相连的电脑中打开超级终端软件,设置超级终端软件的串口参数;
启动引导步骤:上电后,终端显示press s to stop,1s内键入字符s进入命令行状态;
用户命令步骤:在命令行状态下,输入命令update;开始计时等待产品软件传输;
Xmodem数据传输步骤:点击菜单栏的传送,选择待升级软件data.bin,选择1K Xmodem的传输协议;开始传输升级软件data.bin;
软件升级步骤:升级软件data.bin传输结束,超级终端将显示Flash擦除、写入和读取校验操作;校验完成未显示错误信息,软件在线更新结束;
软件启动步骤:断电重启,系统在线升级软件Bootloader.bin首先执行并自动引导并跳转至data.bin的入口地址0x400,执行data.bin;
所述Flash的起始地址为:0x90000000。
2.根据权利要求1所述C6000数字信号处理器在线升级方法,其特征在于:所述设置串口参数为:115200,8,n,1。
CN201410558178.8A 2014-10-20 2014-10-20 C6000数字信号处理器在线升级方法 Active CN104407878B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410558178.8A CN104407878B (zh) 2014-10-20 2014-10-20 C6000数字信号处理器在线升级方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410558178.8A CN104407878B (zh) 2014-10-20 2014-10-20 C6000数字信号处理器在线升级方法

Publications (2)

Publication Number Publication Date
CN104407878A CN104407878A (zh) 2015-03-11
CN104407878B true CN104407878B (zh) 2018-02-23

Family

ID=52645511

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410558178.8A Active CN104407878B (zh) 2014-10-20 2014-10-20 C6000数字信号处理器在线升级方法

Country Status (1)

Country Link
CN (1) CN104407878B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106155715A (zh) * 2015-03-30 2016-11-23 北京自动化控制设备研究所 一种基于实时mcu的软件引导固化方法
CN106648803A (zh) * 2016-12-30 2017-05-10 南京科远自动化集团股份有限公司 一种dsp芯片在线升级方法
CN106648807B (zh) * 2017-01-10 2020-12-01 北京电子工程总体研究所 一种基于flash存储器的dsp软件上传更新方法
CN107015833B (zh) * 2017-04-14 2020-06-09 湖南威胜信息技术有限公司 嵌入式设备应用程序的自恢复方法
CN108037943B (zh) * 2017-12-08 2021-11-09 成都华力创通科技有限公司 一种基于nios ii的fpga在线升级方法
CN109165037A (zh) * 2018-07-31 2019-01-08 西安霍威航空科技有限公司 一种基于串口处理器的程序在线更新方法及系统
CN109766116B (zh) * 2018-12-11 2022-07-15 湖北航天飞行器研究所 一种基于can通讯的多核控制组件在线引导升级方法
CN111008033A (zh) * 2019-10-30 2020-04-14 中国航空工业集团公司洛阳电光设备研究所 一种基于串口的通用dsp在线升级系统及升级方法
CN111459468A (zh) * 2020-04-09 2020-07-28 西安现代控制技术研究所 高可靠性串口通讯的dsp程序在线升级系统和方法
CN112346769A (zh) * 2020-10-28 2021-02-09 北京航天发射技术研究所 一种基于tms320f28335的dsp软件在线升级方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102230374A (zh) * 2011-06-13 2011-11-02 电子科技大学 一种基于485总线的井下程序远程更新装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102230374A (zh) * 2011-06-13 2011-11-02 电子科技大学 一种基于485总线的井下程序远程更新装置

Also Published As

Publication number Publication date
CN104407878A (zh) 2015-03-11

Similar Documents

Publication Publication Date Title
CN104407878B (zh) C6000数字信号处理器在线升级方法
CN111008033A (zh) 一种基于串口的通用dsp在线升级系统及升级方法
CN104102518B (zh) 一种双cpu系统及其程序升级方法
CN106897090B (zh) 一种嵌入式设备程序升级方法及系统
CN110597542B (zh) 软件自动ota升级方法及装置、电子设备
CN110187909B (zh) 一种基于安卓系统的单片机固件升级方法
CN101963910A (zh) 基于通用usb总线的设备固件升级方法
CN103745167B (zh) 单片机的iap方法及装置
CN101216773A (zh) 一种嵌入式Linux系统固件下载方法和装置
CN102693144B (zh) 一种Android移动终端的电容屏固件升级的方法
CN109189434A (zh) 一种电能表的在线升级方法
CN105760191A (zh) 嵌入式系统设备程序烧写量产方法
CN112947977A (zh) 一种软件在线升级方法及系统
CN107678765A (zh) 一种基于c8051f系列单片机的在线升级方法
CN104077166A (zh) 基于fpga中ip核的epcs与epcq存储器在线升级方法
CN108170480A (zh) 一种基于u-boot引导μC/OS操作系统的启动方法
CN111338925A (zh) 小程序测试方法及装置、系统、电子设备和存储介质
CN110442356A (zh) Dsp固件的升级方法及装置
CN111459744A (zh) 视频处理芯片的固件烧录方法和固件调试方法
WO2018049798A1 (zh) 一种缓存分区重构的方法和装置
CN109358891B (zh) 一种嵌入式控制器的dsp软件升级方法及系统
CN107729090A (zh) 一种基于串口传输的用户程序下载方法
CN103677919A (zh) 一种基于串口的机载软件更新方法
CN116700765A (zh) 伺服驱动器的固件升级方法及装置、伺服驱动器
CN103729202A (zh) 一种基于gel脚本的dsp可靠在线flash烧写方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant