CN115373720A - 一种多个c2000 dsp启动及在线升级方法及装置 - Google Patents
一种多个c2000 dsp启动及在线升级方法及装置 Download PDFInfo
- Publication number
- CN115373720A CN115373720A CN202211019116.0A CN202211019116A CN115373720A CN 115373720 A CN115373720 A CN 115373720A CN 202211019116 A CN202211019116 A CN 202211019116A CN 115373720 A CN115373720 A CN 115373720A
- Authority
- CN
- China
- Prior art keywords
- program
- chip
- format
- dsp
- flash
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/656—Updates while running
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种多个C2000DSP启动及在线升级方法及装置,多个C2000DSP启动及在线升级方法包括:数据读取步骤:通过启动模式配置电路设置启动模式,从片外SPI FLASH程序中读取数据内容;数据内容校验步骤:校验所述数据内容是否符合RAM程序格式要求后,根据校验结果启动片内RAM格式DSP程序或片内FLASH格式DSP程序;程序更新步骤:根据协议格式,将所述片内RAM格式DSP程序或所述片内FLASH格式DSP程序的数据转存到所述片外SPI FLASH程序中。本发明通过增加片外SPI FLASH解决了高实时性场景下程序的快速执行及所有代码与数据全部在RAM中运行的难题。并且在只使用一片SPI FLASH的情况下实现了多个DSP的程序存储与加载,同时,实现了RAM格式与FLASH格式程序的兼容启动。
Description
技术领域
本申请涉及数字信号处理器应用技术领域,尤其涉及一种多个C2000DSP启动及在线升级方法及装置。
背景技术
C2000 DSP作为TI的高性能数字信号处理器广泛应用于工业控制领域,但是应用过程中有诸多的不便。首先,在C2000 DSP产品研发的流程一般是先将代码分配至RAM中,通过仿真器调试完毕后,通过修改cmd文件后将代码分配至FLASH后固化。由于CPU对RAM和FLASH读写速度有较大差异,CPU对片内RAM的访问速度要快于FLASH,在RAM中执行的程序速度要快于在FLASH中执行的程序的速度。这就导致调试的程序与真正执行的程序有较大差异。产生这个问题的根源就是C2000 DSP无法直接固化RAM格式的可执行程序。其次,C2000DSP程序一般将程序固化至片内FLASH中,程序的升级要么使用仿真器,要么使用TI官方提供的串口工具,仿真器由于设备的专用和复杂性与抗电磁干扰能力差,一般不具备现场作业的条件,而TI官方提供的串口工具需要修改DSP的启动模式,并且存在下载速度慢、连接不稳定、软件参数配置复杂的问题。再次,C2000 DSP FLASH资源相较SRAM资源丰富,以TMS320F28335为例,其拥有256KX16 FLASH,而SRAM为34KX16,有些应用场景强调程序的执行速率,需要将代码全部在RAM中执行,有些应用场景需要较大的代码存储空间,只能将代码全部放在FLASH中执行,但这两种应用不能兼容。
发明内容
本申请实施例提供了一种多个C2000 DSP启动及在线升级方法及装置,以至少通过本发明解决了C2000 DSP无法直接固化RAM格式的可执行程序、程序升级效率低及复杂、RAM格式与FLASH格式程序无法兼容启动等问题。
本发明提供了一种多个C2000 DSP启动及在线升级方法,包括:
数据读取步骤:通过启动模式配置电路设置启动模式,从片外SPI FLASH程序中读取数据内容;
数据内容校验步骤:校验所述数据内容是否符合RAM程序格式要求后,根据校验结果启动片内RAM格式DSP程序或片内FLASH格式DSP程序;
程序更新步骤:根据协议格式,将所述片内RAM格式DSP程序或所述片内FLASH格式DSP程序的数据转存到所述片外SPI FLASH程序中。
上述的多个C2000 DSP启动及在线升级方法,其中,所述启动模式包括片外SPIFLASH启动模式、片内FLASH启动模式。
上述的多个C2000 DSP启动及在线升级方法,其中,所述数据读取步骤包括:
进入所述片外SPI FLASH启动模式并运行BOOT程序,从所述片外SPI FLASH程序中读取所述数据内容。
上述的多个C2000 DSP启动及在线升级方法,其中,所述数据内容校验步骤包括:
若所述校验结果为所述数据内容符合所述RAM程序格式要求,则将所述数据内容复制到所述片内RAM格式DSP程序后,启动所述片内RAM格式DSP程序;
所述片内RAM格式DSP程序启动后,发送启动信号;
下一个DSP程序根据所述启动信号启动。
上述的多个C2000 DSP启动及在线升级方法,其中,所述数据内容校验步骤还包括:
若所述校验结果为所述数据内容不符合所述RAM程序格式要求,则退出所述片外SPI FLASH启动模式,进入所述片内FLASH启动模式;
从所述片内FLASH格式DSP程序中启动二级Boot程序;
所述二级Boot程序通过DSP地址配置电路读取DSP地址。
上述的多个C2000 DSP启动及在线升级方法,其中,所述数据内容校验步骤还包括:
根据所述DSP地址判断所述片内FLASH格式DSP程序是否需要更新;
若判断结果为所述片内FLASH格式DSP程序需要更新,则所述二级Boot程序读取所述DSP地址对应的片外SPI FLASH程序数据,并调用片内FLASH API;
通过所述片内FLASH API将所述片外SPI FLASH程序数据复制到所述片内FLASH格式DSP程序后,启动所述片内FLASH格式DSP程序。
上述的多个C2000 DSP启动及在线升级方法,其中,所述数据内容校验步骤还包括:
所述片内FLASH格式DSP程序启动后,发送所述启动信号;
下一个所述DSP程序根据所述启动信号启动。
本发明还提供一种多个C2000 DSP启动及在线升级装置,其中,适用于上述所述的多个C2000 DSP启动及在线升级方法,所述多个C2000 DSP启动及在线升级装置包括:
数据读取模块:通过启动模式配置电路设置启动模式,从片外SPI FLASH程序中读取数据内容;
数据内容校验模块:校验所述数据内容是否符合RAM程序格式要求后,根据校验结果启动片内RAM格式DSP程序或片内FLASH格式DSP程序;
程序更新模块:根据协议格式,将所述片内RAM格式DSP程序或所述片内FLASH格式DSP程序的数据转存到所述片外SPI FLASH程序中。
上述的多个C2000 DSP启动及在线升级系统,所述数据读取模块还包括:
片外SPI FLASH芯片,通过SPI总线与DSP相连。
上述的多个C2000 DSP启动及在线升级装置,其中,所述数据内容校验模块还包括:
DSP,通过GPIO与MCU相连,从所述片外SPI FLASH芯片读取数据内容后,校验所述数据内容是否符合RAM程序格式要求,根据校验结果启动片内RAM格式DSP程序或片内FLASH格式DSP程序;
MCU,通过所述SPI总线与所述片外SPI FLASH芯片相连,通过所述GPIO连接于DSP复位引脚RST,所述片内RAM格式DSP程序或所述片内FLASH格式DSP程序启动后,所述MCU释放所述SPI总线,并通过所述GPIO向所述MCU发送启动信号;
所述MCU根据所述启动信号,释放下一个DSP复位引脚RST,下一个DSP退出所述复位状态,所述MCU控制其他DSP继续保持所述复位状态。
相比于相关技术,本发明提出了一种多个C2000 DSP启动及在线升级方法及装置,通过增加片外SPI FLASH实现了C2000系列DSP RAM格式程序固化,同时,实现了仿真调试程序与正式产品程序的完全一致;通过开发二级BootLoader程序,实现了多片C2000系列DSPFLASH格式程序的加载运行;在不改变硬件配置和软件配置的情况下,实现了RAM格式与FLASH格式程序的兼容启动;通过WIFI模块实现了程序的远程在线升级。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的多个C2000 DSP启动及在线升级方法流程图;
图2是根据本申请实施例的多个C2000 DSP启动流程图;
图3是根据本申请实施例的片外SPI FLASH结构图;
图4是根据本申请实施例的DSP片内FLASH结构图;
图5是根据本申请实施例的多个C2000 DSP启动及在线升级装置结构图;
图6是根据本申请实施例的多个C2000 DSP启动及在线升级装置结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
本发明提供了一种多个C2000 DSP启动及在线升级方法及装置,解决了C2000 DSP无法直接固化RAM格式的可执行程序、程序升级效率低及复杂度高、RAM格式与FLASH格式程序无法兼容启动等问题。
下面结合具体实施例对本发明进行说明。
实施例一
本实施例还提供了一种多个C2000 DSP启动及在线升级方法。请参照图1至4,图1是根据本申请实施例的多个C2000 DSP启动及在线升级方法流程图;图2是根据本申请实施例的多个C2000 DSP启动流程图;图3是根据本申请实施例的片外SPI FLASH结构图;图4是根据本申请实施例的DSP片内FLASH结构图。如图1至4所示,多个C2000 DSP启动及在线升级方法包括:
数据读取步骤S1:通过启动模式配置电路设置启动模式,从片外SPI FLASH程序中读取数据内容;
数据内容校验步骤S2:校验数据内容是否符合RAM程序格式要求后,根据校验结果启动片内RAM格式DSP程序或片内FLASH格式DSP程序;
程序更新步骤S3:根据协议格式,将片内RAM格式DSP程序或片内FLASH格式DSP程序的数据转存到片外SPI FLASH程序中。
在实施例中,启动模式包括片外SPI FLASH启动模式、片内FLASH启动模式。
在实施例中,数据读取步骤S1包括:
进入片外SPI FLASH启动模式并运行BOOT程序,从片外SPI FLASH程序中读取所述数据内容。
在具体实施中,多个C2000 DSP启动及在线升级系统上电后,MCU释放SPI总线,并通过GPIO将除DSP1以外的DSP的RST引脚拉低,使除DSP1以外的DSP进入复位状态;DSP1的RST复位引脚处于释放状态即退出复位状态后,DSP1运行ROM内置的BOOT程序,默认从片外SPI FLASH芯片的“0地址”加载数据。
其中,DSP的RST引脚拉低,则该DSP处于复位状态,可使得该DSP的SPI总线处于释放状态;由于多个DSP连接同一个SPI FLASH,如果多个DSP同时启动则会争夺对SPI总线的控制,因此拉低除DSP1以外的DSP的RST复位引脚,可以使得DSP1与SPI FLASH直连,不受其他DSP SPI总线的影响。
在实施例中,数据内容校验步骤S2包括:
若校验结果为数据内容符合RAM程序格式要求,则将数据内容复制到片内RAM格式DSP程序后,启动片内RAM格式DSP程序;
所述片内RAM格式DSP程序启动后,发送启动信号;
下一个DSP程序根据所述启动信号启动;
若校验结果为数据内容不符合RAM程序格式要求,则退出片外SPI FLASH启动模式,进入片内FLASH启动模式;
从片内FLASH格式DSP程序中启动二级Boot程序;
二级Boot程序通过DSP地址配置电路读取DSP地址;
根据DSP地址判断片内FLASH格式DSP程序是否需要更新;
若判断结果为片内FLASH格式DSP程序需要更新,则二级Boot程序读取DSP地址对应的片外SPI FLASH程序数据,并调用片内FLASH API;
通过片内FLASH API将片外SPI FLASH程序数据复制到片内FLASH格式DSP程序后,启动片内FLASH格式DSP程序;
所述片内FLASH格式DSP程序启动后,发送所述启动信号;
下一个所述DSP程序根据所述启动信号启动。
在具体实施中,若校验结果为数据内容符合RAM程序格式要求,则将数据内容复制到片内RAM格式DSP程序后,启动片内RAM格式DSP程序,启动后片内RAM格式DSP程序发送启动信号;详细的为,DSP1加载SPI FLASH数据后校验数据内容是否符合RAM程序格式要求,如果校验结果为数据内容符合RAM程序格式要求,则将数据从SPI FLASH复制到片内RAM格式DSP1程序中,并在加载完成后直接运行程序,程序启动后先释放与SPI FLASH相连的SPI总线,并且DSP1会通过与MCU相连的GPIO向MCU发送启动信号,这样就实现了RAM格式DSP1程序程序启动加载。
下一个所述DSP程序根据所述启动信号启动;详细的为,MCU收到启动信号后,将下一个DSP的复位引脚RST释放,并保持其他DSP的RST信号拉低状态,已启动的DSP1除外,因为启动完的DSP1主动释放SPI总线不会影响后续DSP的SPI总线,下一DSP先从片外FLASH启动,然后按图2所示步骤启动;通过上述技术方案实现了只使用一片SPI FLASH的情况下实现多个DSP的程序存储与加载。
若校验结果为数据内容不符合RAM程序格式要求,则退出片外SPI FLASH启动模式,进入片内FLASH启动模式,从片内FLASH格式DSP程序中启动二级Boot程序后,二级Boot程序通过DSP地址配置电路读取DSP地址;详细的为,若校验结果为数据内容不符合RAM程序格式要求,则退出片外SPI FLASH启动模式,进入片内FLASH启动模式,系统默认从DSP1片内FLASH的“0地址”加载程序,而该“0地址”位置存放的是用户自己设计的二级Boot程序,该二级BOOT会通过地址配置电路读取DSP1地址。
根据DSP地址判断片内FLASH格式DSP程序是否需要更新,若判断结果为片内FLASH格式DSP程序需要更新,则二级Boot程序读取DSP地址对应的片外SPI FLASH程序数据,并调用片内FLASH API,通过片内FLASH API将片外SPI FLASH程序数据复制到片内FLASH格式DSP程序后,启动片内FLASH格式的DSP程序,启动后片内FLASH格式DSP程序发送启动信号;详细的为,获取地址后二级Boot程序会根据不同的地址去读片外SPI FLASH对应程序存储空间,比如DSP的地址为n就会读取SPI FLASH片区n的内容;首先会读该片区最后一个地址的标志位,如果改标志位为‘1’则说明片外有新程序需要加载,此时就会将片外SPI FLASH片区的全部数据复制到片内FLASH的“UserProgram”区域,完成数据复制后二级Boot程序会将SPI FLASH片区最后地址的标志位清零,这就完成了程序的更新;如果该片外SPI FLASH标志位为“0”则不复制片外SPI FLASH的程序而直接跳转至片内“UserProgram”的区域实现FLASH格式DSP1程序的启动;FLASH格式DSP程序启动后,会先释放与SPI FLASH相连的SPI总线,并且DSP1会通过与MCU相连的另一GPIO向MCU发送启动信号。
下一个DSP程序根据启动信号退出复位状态,其他DSP继续保持复位状态;详细的为,MCU收到启动信号后,将下一个DSP的RST复位引脚释放,并保持其他DSP的RST复位引脚拉低状态,已启动的DSP1除外,因为启动完的DSP1主动释放SPI总线不会影响后续DSP的SPI总线,下一DSP先从片外FLASH启动,然后按图2所示步骤启动,这样就实现了只使用一片SPIFLASH的情况下实现多个DSP的程序存储与加载。
实施例二
本实施例还提供了一种多个C2000 DSP启动及在线升级装置。图5是根据本申请实施例的多个C2000 DSP启动及在线升级装置结构图;图6是根据本申请实施例的多个C2000DSP启动及在线升级装置结构图。如图5至图6所示,发明的个C2000 DSP启动及在线升级装置,适用于上述的多个C2000 DSP启动及在线升级方法,所述多个C2000 DSP启动及在线升级装置包括:
数据读取模块51:通过启动模式配置电路设置启动模式,从片外SPI FLASH程序中读取数据内容;
数据内容校验模块52:校验所述数据内容是否符合RAM程序格式要求后,根据校验结果启动片内RAM格式DSP程序或片内FLASH格式DSP程序;
程序更新模块53:根据协议格式,将所述片内RAM格式DSP程序或所述片内FLASH格式DSP程序的数据转存到所述片外SPI FLASH程序中。
在实施例中,数据读取模块51还包括:
片外SPI FLASH芯片,通过SPI总线与DSP相连。
在实施例中,数据内容校验模块52还包括:
DSP,通过GPIO与MCU相连,从片外SPI FLASH芯片读取数据内容后,校验数据内容是否符合RAM程序格式要求,根据校验结果启动片内RAM格式DSP程序或片内FLASH格式DSP程序;
MCU,通过SPI总线与片外SPI FLASH芯片相连,通过GPIO连接于DSP复位引脚RST,片内RAM格式DSP程序或片内FLASH格式DSP程序启动后,MCU释放SPI总线,并通过GPIO向MCU发送启动信号;
MCU根据启动信号,释放下一个DSP复位引脚RST,下一个DSP退出复位状态,MCU控制其他DSP继续保持复位状态。
在实施例中,程序更新模块53还包括:
WIFI设备,与MCU相连,根据协议格式,通过WIFI设备将片内RAM格式DSP程序或片内FLASH格式DSP程序的数据传送到所述MCU。
在实施例中,多个C2000 DSP启动及在线升级装置还包括:
启动模式配置模块,与DSP相连,通过启动模式配置模块设置启动模式;
DSP地址配置模块,与DSP相连,通过DSP地址配置模块读取DSP地址。
实施例三
本实施例还提供了一种多个C2000 DSP启动流程步骤。图2是根据本申请实施例的多个C2000 DSP启动流程图。如图2所示,多个C2000 DSP启动流程步骤如下:
步骤1:DSP1从片外SPI FLASH程序中读取数据内容;
步骤2:校验数据内容是否符合RAM程序格式要求,若数据内容符合RAM程序格式要求,执行步骤3,若数据内容不符合RAM程序格式要求,跳到步骤4,执行步骤4;
步骤3:将数据内容复制到片内RAM格式的DSP1程序后,启动片内RAM格式的DSP1程序,启动后判断该DSP1是否为最后一个DSP,若不是,片内RAM格式DSP1程序发送启动信号,DSP2根据启动信号退出复位状态,回到步骤1,从步骤1开始按顺序执行;若DSP1为最后一个DSP,则结束流程;
步骤4:退出片外SPI FLASH启动模式,进入片内FLASH启动模式后,从片内FLASH格式DSP1程序中启动二级Boot程序,二级Boot程序读取DSP1地址;根据DSP1地址判断片内FLASH格式DSP1程序是否需要更新;
若需要更新,则二级Boot程序读取DSP1地址对应的片外SPI FLASH程序数据,并调用片内FLASH API,通过片内FLASH API将片外SPI FLASH程序数据复制到片内FLASH格式DSP1程序后,启动片内FLASH格式DSP1程序,启动后判断DSP1是否为最后一个DSP,若不是,片内FLASH格式DSP1程序发送启动信号,DSP2根据启动信号退出复位状态,回到步骤1,从步骤1开始按顺序执行,若DSP1为最后一个DSP,则结束流程;
若不需要更新,直接启动片内FLASH格式DSP1程序,启动后判断该DSP1是否为最后一个DSP,若不是,片内FLASH格式DSP1程序发送启动信号,DSP2根据启动信号退出复位状态,回到步骤1,从步骤1开始按顺序执行,若DSP1为最后一个DSP,则结束流程。
综上所述,本发明提供了一种多个C2000 DSP启动及在线升级方法及装置,通过增加片外SPI FLASH实现了C2000系列DSP RAM格式程序固化,解决了高实时性场景下程序的快速执行与所有代码与数据全部在RAM中运行的难题,并且实现了仿真调试程序与正式产品程序的完全一致。同时,通过开发二级BootLoader程序,实现了多片C2000系列DSP FLASH格式程序的加载运行,并且在只使用一片SPI FLASH的情况下实现了多个DSP的程序存储与加载。RAM格式与FLASH格式程序的兼容启动,使用户无需关心程序格式,实现了不同的应用场景不同格式程序的兼容。并且通过WIFI模块实现了程序的远程在线升级,解决了DSP程序升级不稳定性和不能远程升级的问题。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求的保护范围为准。
Claims (10)
1.一种多个C2000 DSP启动及在线升级方法,其特征在于,所述多个C2000 DSP启动及在线升级方法包括:
数据读取步骤:通过启动模式配置电路设置启动模式,从片外SPI FLASH程序中读取数据内容;
数据内容校验步骤:校验所述数据内容是否符合RAM程序格式要求后,根据校验结果启动片内RAM格式DSP程序或片内FLASH格式DSP程序;
程序更新步骤:根据协议格式,将所述片内RAM格式DSP程序或所述片内FLASH格式DSP程序的数据转存到所述片外SPI FLASH程序中。
2.根据权利要求1所述的多个C2000 DSP启动及在线升级方法,其特征在于,所述启动模式包括片外SPI FLASH启动模式、片内FLASH启动模式。
3.根据权利要求2所述的多个C2000 DSP启动及在线升级方法,其特征在于,所述数据读取步骤包括:
进入所述片外SPI FLASH启动模式并运行BOOT程序,从所述片外SPI FLASH程序中读取所述数据内容。
4.根据权利要求2所述的多个C2000 DSP启动及在线升级方法,其特征在于,所述数据内容校验步骤包括:
若所述校验结果为所述数据内容符合所述RAM程序格式要求,则将所述数据内容复制到所述片内RAM格式DSP程序后,启动所述片内RAM格式DSP程序;
所述片内RAM格式DSP程序启动后,发送启动信号;
下一个DSP程序根据所述启动信号启动。
5.根据权利要求2所述的多个C2000 DSP启动及在线升级方法,其特征在于,所述数据内容校验步骤还包括:
若所述校验结果为所述数据内容不符合所述RAM程序格式要求,则退出所述片外SPIFLASH启动模式,进入所述片内FLASH启动模式;
从所述片内FLASH格式DSP程序中启动二级Boot程序;
所述二级Boot程序通过DSP地址配置电路读取DSP地址。
6.根据权利要求5所述的多个C2000 DSP启动及在线升级方法,其特征在于,所述数据内容校验步骤还包括:
根据所述DSP地址判断所述片内FLASH格式DSP程序是否需要更新;
若判断结果为所述片内FLASH格式DSP程序需要更新,则所述二级Boot程序读取所述DSP地址对应的片外SPI FLASH程序数据,并调用片内FLASH API;
通过所述片内FLASH API将所述片外SPI FLASH程序数据复制到所述片内FLASH格式DSP程序后,启动所述片内FLASH格式DSP程序。
7.根据权利要求4所述的多个C2000 DSP启动及在线升级方法,其特征在于,所述数据内容校验步骤还包括:
所述片内RAM格式DSP程序启动后,发送启动信号;
下一个DSP程序根据所述启动信号启动。
8.一种多个C2000 DSP启动及在线升级装置,其特征在于,所述多个C2000 DSP启动及在线升级装置包括:
数据读取模块:通过启动模式配置电路设置启动模式,从片外SPI FLASH程序中读取数据内容;
数据内容校验模块:校验所述数据内容是否符合RAM程序格式要求后,根据校验结果启动片内RAM格式DSP程序或片内FLASH格式DSP程序;
程序更新模块:根据协议格式,将所述片内RAM格式DSP程序或所述片内FLASH格式DSP程序的数据转存到所述片外SPI FLASH程序中。
9.根据权利要求8所述的多个C2000 DSP启动及在线升级装置,其特征在于,所述数据读取模块还包括:
片外SPI FLASH芯片,通过SPI总线与DSP相连。
10.根据权利要求8所述的多个C2000 DSP启动及在线升级装置,其特征在于,所述数据内容校验模块还包括:
DSP,通过GPIO与MCU相连,从所述片外SPI FLASH芯片读取数据内容后,校验所述数据内容是否符合RAM程序格式要求,根据校验结果启动片内RAM格式DSP程序或片内FLASH格式DSP程序;
MCU,通过所述SPI总线与所述片外SPI FLASH芯片相连,通过所述GPIO连接于DSP复位引脚RST,所述片内RAM格式DSP程序或所述片内FLASH格式DSP程序启动后,所述MCU释放所述SPI总线,并通过所述GPIO向所述MCU发送启动信号;
所述MCU根据所述启动信号,释放下一个DSP复位引脚RST,下一个DSP退出所述复位状态,所述MCU控制其他DSP继续保持所述复位状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211019116.0A CN115373720A (zh) | 2022-08-24 | 2022-08-24 | 一种多个c2000 dsp启动及在线升级方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211019116.0A CN115373720A (zh) | 2022-08-24 | 2022-08-24 | 一种多个c2000 dsp启动及在线升级方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115373720A true CN115373720A (zh) | 2022-11-22 |
Family
ID=84067296
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211019116.0A Pending CN115373720A (zh) | 2022-08-24 | 2022-08-24 | 一种多个c2000 dsp启动及在线升级方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115373720A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117193887A (zh) * | 2023-11-06 | 2023-12-08 | 深圳市优特杰科技有限公司 | 调音台分布式控制方法、装置及可读存储介质 |
-
2022
- 2022-08-24 CN CN202211019116.0A patent/CN115373720A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117193887A (zh) * | 2023-11-06 | 2023-12-08 | 深圳市优特杰科技有限公司 | 调音台分布式控制方法、装置及可读存储介质 |
CN117193887B (zh) * | 2023-11-06 | 2024-03-15 | 深圳市优特杰科技有限公司 | 调音台分布式控制方法、装置及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109062617B (zh) | 一种支持多类型设备的平台的应用方法、移动终端 | |
WO2018028055A1 (zh) | 在Windows系统上运行Android应用程序的方法及装置 | |
US20160162272A1 (en) | Method and apparatus for loading a rendering engine | |
EP1717700A2 (en) | Multimedia devices with enhanced functionality | |
CN115658160B (zh) | 基于多核异构soc的多操作系统升级方法、装置及系统 | |
WO2023143020A1 (zh) | 实时操作系统的生成、使用方法及装置、电子设备、介质 | |
JP2005202963A (ja) | Javaプログラムの処理速度を向上させるシステム及びその方法 | |
CN111176739A (zh) | 一种系统启动方法、装置、设备及存储介质 | |
US11016769B1 (en) | Method and apparatus for processing information | |
CN105739961A (zh) | 一种嵌入式系统的启动方法和装置 | |
CN115373720A (zh) | 一种多个c2000 dsp启动及在线升级方法及装置 | |
JP2013178799A (ja) | 無線デバイスのための、工場でのプログラム時間を低減するシステムおよび方法 | |
CN109800032A (zh) | Bootrom多核加载方法及装置 | |
JP2003167751A (ja) | プロセッサ処理方法およびプロセッサシステム | |
CN110045966A (zh) | 安装器的处理方法、装置及设备 | |
CN112313620A (zh) | 安卓系统启动的方法、装置、设备及存储介质 | |
Zhang et al. | Porting an autosar-compliant operating system to a high performance embedded platform | |
CN111459564A (zh) | boot阶段初始化兼容的实现方法、系统及计算机设备 | |
CN117311853B (zh) | Apk文件的处理方法、装置、计算机设备及存储介质 | |
WO2012119380A1 (zh) | 一种复位向量的代码实现方法、系统及设备 | |
CN117555605B (zh) | 操作系统启动方法、装置、电子设备及可读存储介质 | |
CN114579198B (zh) | 内存芯片的启动方法、装置、计算机设备及存储介质 | |
CN115098170A (zh) | 计算机启动方法、装置、设备以及存储介质 | |
KR100629464B1 (ko) | 다중 마이크로프로세서 이동통신 단말기에 펌웨어의다운로드 속도를 향상하기 위한 병렬 다운로드 방법 | |
KR100490743B1 (ko) | 부트로더 상에서 유에스비를 이용한 파일 다운로드 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |