用于dsp芯片程序升级的烧写方法和装置的制造方法

xiaoxiao2020-10-23  12

用于dsp芯片程序升级的烧写方法和装置的制造方法
【技术领域】
[0001]本发明涉及嵌入式芯片技术领域,尤其涉及一种用于DSP芯片程序升级的烧写方法和装置。
【背景技术】
[0002]随着嵌入式芯片技术的发展,DSP嵌入式设备越来越广泛地应用于通信、电子、工业控制等众多领域,因此,向DSP芯片中烧写程序的难易程度和产品的后续升级服务变得日渐重要。
[0003]目前,大多数DSP嵌入式设备升级都是通过传统的程序升级方法,每次升级都需要借助仿真器等辅助工具,例如通过TI (Texas Instruments,德州仪器)公司提供的程序烧写工具利用JTAG (Joint Test Act1n Group,联合测试行为组织)仿真器来烧写程序。但传统的升级方法大多存在烧写过程不可控,烧写结果不可靠等问题,且需要专职人员去客户处操作,给升级操作带来了极大的不便,增加了维护成本,用户体验差。

【发明内容】

[0004]本发明旨在至少解决上述技术问题之一。
[0005]为此,本发明的第一个目的在于提出一种用于DSP芯片程序升级的烧写方法。该方法能够实现DSP芯片程序的远程在线升级,降低对操作人员的技术要求,降低升级成本,提升用户体验。
[0006]本发明的第二个目的在于提出一种用于DSP芯片程序升级的烧写装置。
[0007]为了实现上述目的,本发明第一方面实施例的用于DSP芯片程序升级的烧写方法,包括以下步骤:将DSP程序烧写到存储器中的预设位置,其中,所述DSP程序包括标志信息、升级程序和应用程序;检测所述应用程序的当前版本是否为最新版本;当所述应用程序的当前版本低于最新版本时,获取所述应用程序的更新信息;对所述升级程序进行初始化,并根据所述标志信息和所述更新信息对所述应用程序进行升级;以及显示升级结果,并对所述DSP芯片进行复位。
[0008]本发明实施例的用于DSP芯片程序升级的烧写方法,通过将升级程序和应用程序分别存储在不同的预设地址段,在应用程序需要升级时执行升级程序对应用程序进行在线升级,无需借助仿真器等工具,实现了 DSP芯片程序的远程在线升级,降低了对操作人员的技术要求,减少了成本,简便高效,用户体验好。
[0009]为了实现上述目的,本发明第二方面实施例的用于DSP芯片程序升级的烧写装置,包括:写入模块,用于将DSP程序烧写到存储器中的预设位置,其中,所述DSP程序包括标志信息、升级程序和至少一个应用程序;检测模块,用于检测所述应用程序的当前版本是否为最新版本;第一获取模块,用于当所述应用程序的当前版本低于最新版本时,获取所述应用程序的更新信息;升级模块,用于对所述升级程序进行初始化,并根据所述标志信息和所述更新信息对所述应用程序进行升级;显示模块,用于显示升级结果;以及复位模块,用于对所述DSP芯片进行复位。
[0010]本发明实施例的用于DSP芯片程序升级的烧写装置,通过将升级程序和应用程序分别存储在不同的预设地址段,在应用程序需要升级时执行升级程序对应用程序进行在线升级,无需借助仿真器等工具,实现了 DSP芯片程序的远程在线升级,降低了对操作人员的技术要求,减少了成本,简便高效,用户体验好。
[0011]本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
【附图说明】
[0012]本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中,
[0013]图1是根据本发明一个实施例的用于DSP芯片程序升级的烧写方法的流程图;
[0014]图2是根据本发明又一个实施例的用于DSP芯片程序升级的烧写方法的流程图;
[0015]图3是根据本发明一个实施例的main函数功能示意图;
[0016]图4是根据本发明一个实施例的根据标志信息和更新信息对应用程序进行升级的流程图;
[0017]图5是根据本发明一个实施例的用于DSP芯片程序升级的烧写装置的结构框图;
[0018]图6是根据本发明又一个实施例的用于DSP芯片程序升级的烧写装置的结构框图。
【具体实施方式】
[0019]下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
[0020]在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
[0021]流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
[0022]下面结合说明书附图详细说明本发明实施例的用于DSP芯片程序升级的烧写方法和装置。
[0023]图1是根据本发明一个实施例的用于DSP芯片程序升级的烧写方法的流程图。
[0024]如图1所示,用于DSP芯片程序升级的烧写方法包括以下步骤:
[0025]S101,将DSP程序烧写到存储器中的预设位置,其中,DSP程序包括标志信息、升级程序和应用程序。
[0026]具体地,在初次烧写程序时,可通过仿真器烧写DSP程序到存储器中的预设位置,其中,标志信息、升级程序和应用程序分别位于存储器中预设的不同地址段,标志信息中包括起始跳转指令和可跳转的程序所在的地址,可通过读取标志信息判断所要执行的程序,并获取升级程序或应用程序所在的地址。
[0027]S102,检测应用程序的当前版本是否为最新版本。
[0028]具体地,可根据DSP芯片接收到的版本查询指令,查询存储器中用于存储应用程序的区域中是否存在应用程序,若存在,则获取应用程序的版本信息,然后将当前版本信息与获取到的最新版本信息进行对比,以确定应用程序的当前版本是否为最新版本。
[0029]S103,当应用程序的当前版本低于最新版本时,获取应用程序的更新信息。
[0030]具体地,当应用程序的当前版本低于最新版本时,可在线获取应用程序的更新信息,以对当前的应用程序进行升级操作。
[0031]其中,更新信息包括安装该应用程序的最新版本所需使用的所有信息。
[0032]S104,对升级程序进行初始化,并根据标志信息和更新信息对应用程序进行升级。
[0033]具体地,在确定要对当前的应用程序进行升级操作后,可根据对应的标志信息跳转至升级程序,并对升级程序进行初始化,从而升级程序可根据标志信息和获取到的应用程序更新信息对应用程序进行升级。
[0034]S105,显示升级结果,并对DSP芯片进行复位。
[0035]具体地,在升级程序执行结束后可通过串口在对应的用户交互界面上显示升级结果,若升级失败,则返回失败信号和导致失败的原因;若升级成功,则返回升级成功信号,并对DSP芯片进行复位操作,以执行升级后的应用程序。
[0036]本发 明实施例的用于DSP芯片程序升级的烧写方法,通过将升级程序和应用程序分别存储在不同的预设地址段,在应用程序需要升级时执行升级程序对应用程序进行在线升级,无需借助仿真器等工具,实现了 DSP芯片程序的远程在线升级,降低了对操作人员的技术要求,减少了成本,简便高效,用户体验好。
[0037]图2是根据本发明又一个实施例的用于DSP芯片程序升级的烧写方法的流程图。如图2所示,用于DSP芯片程序升级的烧写方法包括以下步骤:
[0038]S201,将DSP程序烧写到存储器中的预设位置,其中,DSP程序包括标志信息、升级程序和应用程序。
[0039]具体地,在初次烧写程序时,可通过仿真器烧写DSP程序到存储器中的预设位置,其中,标志信息、升级程序和应用程序分别位于存储器中预设的不同地址段,标志信息中包括起始跳转指令和可跳转的程序所在的地址,可通过读取标志信息判断所要执行的程序,并获取升级程序或应用程序所在的地址。
[0040]在本发明的一个具体实施例中,可通过功能如图3所示的main函数实现程序的跳转,其中,main函数用于根据读取的标志信息跳转到boot (升级程序)或app (应用程序)相应的地址段。
[0041]S202,检测应用程序的当前版本是否为最新版本。
[0042]具体地,可根据DSP芯片接收到的版本查询指令,查询存储器中用于存储应用程序的区域中是否存在应用程序,若存在,则获取应用程序的版本信息,然后将当前版本信息与获取到的最新版本信息进行对比,以确定应用程序的当前版本是否为最新版本。
[0043]S203,当应用程序的当前版本为最新版本时,获取应用程序的更新时间。
[0044]具体地,在本发明的一个实施例中,若当前版本与检测到的最近版本相同,则获取当前应用程序的最近一次更新时间。
[0045]其中,更新时间为应用程序当前版本的安装时间和最近一次检查更新的时间中距离当前时间较近的时间点。
[0046]S204,当更新时间与当前时间的间隔大于预设阈值时,检测应用程序的当前版本是否为最新版本。
[0047]具体地,当更新时间与当前时间的间隔大于预设阈值时,可再次执行版本检测,检测应用程序的当前版本是否为最新版本,即可实现按预设的周期自动检测应用程序是否需要升级。
[0048]S205,当应用程序的当前版本低于最新版本时,获取应用程序的更新信息。
[0049]具体地,当应用程序的当前版本低于最新版本时,可在线获取应用程序的更新信息,以对当前的应用程序进行升级操作。
[0050]其中,更新信息包括安装该应用程序的最新版本所需使用的所有信息。
[0051]S206,对升级程序进行初始化,并根据标志信息和更新信息对应用程序进行升级。
[0052]具体地,在确定要对当前的应用程序进行升级操作后,可根据对应的标志信息跳转至升级程序,并对升级程序进行初始化,从而通过升级程序根据标志信息和获取到的应用程序更新信息对应用程序进行升级。
[0053]在本发明的一个实施例中,如图4所示,根据标志信息和更新信息对应用程序进行升级进一步包括:
[0054]S2061,根据标志信息获取待升级的应用程序对应的地址段。
[0055]S2062,获取预设的应用程序接口,以对存储器中的内容进行预设长度的读写和/或擦除操作。
[0056]在本发明的一个实施例中,可预先加载Ti公司开发的存储器操作API(Applicat1n Programming Interface,应用程序编程接口),实现对存储器中内容的预设长度的读写和/或擦除操作,同时防止擦除到标志信息和升级程序本身,可实现循环擦除、烧写的功能。
[0057]S2063,擦除对应地址段内的应用程序。
[0058]具体地,可通过预设的应用程序接口擦除该地址段内的应用程序。
[0059]S2064,根据更新信息,将最新版本的应用程序烧写至地址段。
[0060]具体地,在擦除原来的应用程序后,可根据更新信息将接收到的最新版本的应用程序烧写到对应的地址段内。
[0061]S207,显示升级结果,并对DSP芯片进行复位。
[0062]具体地,在升级程序执行结束后可通过串口在对应的用户交互界面上显示升级结果,若升级失败,则返回失败信号和导致失败的原因;若升级成功,则返回升级成功信号,并对DSP芯片进行复位操作,以执行升级后的应用程序。
[0063]本发明实施例的用于DSP芯片程序升级的烧写方法,通过将升级程序和应用程序分别存储在不同的预设地址段,定时检测更新,在需要升级时执行升级程序对应用程序进行升级,无需借助仿真器等工具,实现了 DSP芯片程序的远程在线升级,同时引用Ti的存储器操作接口,防止擦除升级程序本身,实现循环擦除/烧写,降低了对操作人员的技术要求,减少了成本,简便高效,用户体验好。
[0064]为了实现上述实施例,本发明的实施例还提出一种本发明实施例的用于DSP芯片程序升级的烧写装置。
[0065]图5是根据本发明一个实施例的本发明实施例的用于DSP芯片程序升级的烧写装置的结构框图。
[0066]如图5所示,用于DSP芯片程序升级的烧写装置包括:写入模块100、检测模块200、第一获取模块300、升级模块400、显示模块500和复位模块600。
[0067]具体地,写入模块100用于将DSP程序烧写到存储器中的预设位置,其中,DSP程序包括标志信息、升级程序和至少一个应用程序。更具体地,在初次烧写程序时,写入模块100可通过仿真器烧写DSP程序到存储器中的预设位置,其中,标志信息、升级程序和应用程序分别位于存储器中预设的不同地址段,标志信息中包括起始跳转指令和可跳转的程序所在的地址,可通过读取标志信息判断所要执行的程序,并获取升级程序或应用程序所在的地址。
[0068]在本发明的一个具体实施例中,可通过功能如图3所示的main函数实现程序的跳转,其中,main函数用于根据读取的标志信息跳转到boot (升级程序)或app (应用程序)相应的地址段。
[0069]检测模块200用于检测应用程序的当前版本是否为最新版本。更具体地,检测模块200可根据DSP芯片接收到的版本查询指令,查询存储器中用于存储应用程序的区域中是否存在应用程序,若存在,则获取应用程序的版本信息,然后将当前版本信息与获取到的最新版本信息进行对比,以确定应用程序的当前版本是否为最新版本。
[0070]第一获取模块300用于当应用程序的当前版本低于最新版本时,获取应用程序的更新信息。更具体地,当应用程序的当前版本低于最新版本时,第一获取模块300可在线获取应用程序的更新信息,以对当前的应用程序进行升级操作。其中,更新信息包括安装该应用程序的最新版本所需使用的所有信息。
[0071]升级模块400用于对升级程序进行初始化,并根据标志信息和更新信息对应用程序进行升级。更具体地,在确定要对当前的应用程序进行升级操作后,升级模块400可根据对应的标志信息跳转至升级程序,并对升级程序进行初始化,从而升级程序可根据标志信息和获取到的应用程序更新信息对应用程序进行升级。
[0072]显示模块500用于显示升级结果。
[0073]复位模块600用于对DSP芯片进行复位。
[0074]更具体地,在升级程序执行结束后,显示模块500可通过串口在对应的用户交互界面上显示升级结果,若升级失败,则返回失败信号和导致失败的原因;若升级成功,则返回升级成功信号,并由复位模块600对DSP芯片进行复位操作,以执行升级后的应用程序。
[0075]本发明实施例的用于DSP芯片程序升级的烧写装置,通过将升级程序和应用程序分别存储在不同的预设地址段,在应用程序需要升级时执行升级程序对应用程序进行在线升级,无需借助仿真器等工具,实现了 DSP 芯片程序的远程在线升级,降低了对操作人员的技术要求,减少了成本,简便高效,用户体验好。
[0076]图6是根据本发明又一个实施例的用于DSP芯片程序升级的烧写装置的结构框图。
[0077]如图6所示,用于DSP芯片程序升级的烧写装置还包括:写入模块100、检测模块200、第一获取模块300、升级模块400、第一获取子模块410、第二获取子模块420、擦除子模块430、写入子模块440、显示模块500、复位模块600和第二获取模块700,其中,升级模块400包括第一获取子模块410、第二获取子模块420、擦除子模块430和写入子模块440。
[0078]具体地,第一获取子模块410用于根据标志信息获取待升级的应用程序对应的地址段。
[0079]第二获取子模块420用于获取预设的应用程序接口,以对存储器中的内容进行预设长度的读写和/或擦除操作。在本发明的一个实施例中,第二获取子模块420可预先加载Ti公司开发的存储器操作APKApplicat1n Programming Interface,应用程序编程接口),实现对存储器中内容的预设长度的读写和/或擦除操作,同时防止擦除到标志信息和升级程序本身,可实现循环擦除、烧写的功能。
[0080]擦除子模块430用于擦除地址段内的应用程序。更具体地,擦除子模块430可通过预设的应用程序接口擦除该地址段内的应用程序。
[0081]写入子模块440用于根据更新信息,将最新版本的应用程序烧写至地址段。更具体地,在擦除原来的应用程序后,写入子模块440可根据更新信息将最新版本的应用程序烧写到对应的地址段内。
[0082]第二获取模块700用于当应用程序的当前版本为最新版本时,获取应用程序的更新时间。更具体地,在本发明的一个实施例中,若当前版本与检测到的最近版本相同,则第二获取模块700获取当前应用程序的最近一次更新时间。其中,更新时间为应用程序当前版本的安装时间和最近一次检查更新的时间中距离当前时间较近的时间点。
[0083]在本发明的一个实施例中,检测模块200还用于当更新时间与当前时间的间隔大于预设阈值时,检测应用程序的当前版本是否为最新版本。更具体地,当更新时间与当前时间的间隔大于预设阈值时,检测模块200可再次执行版本检测,检测应用程序的当前版本是否为最新版本,即可实现按预设的周期自动检测应用程序是否需要升级。
[0084]本发明实施例的用于DSP芯片程序升级的烧写装置,通过将升级程序和应用程序分别存储在不同的预设地址段,定时检测更新,在需要升级时执行升级程序对应用程序进行升级,无需借助仿真器等工具,实现了 DSP芯片程序的远程在线升级,同时引用Ti的存储器操作接口,防止擦除升级程序本身,实现循环擦除/烧写,降低了对操作人员的技术要求,减少了成本,简便高效,用户体验好。
[0085]应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
[0086]在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
[0087]尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
【主权项】
1.一种用于DSP芯片程序升级的烧写方法,其特征在于,包括以下步骤: 将DSP程序烧写到存储器中的预设位置,其中,所述DSP程序包括标志信息、升级程序和应用程序; 检测所述应用程序的当前版本是否为最新版本; 当所述应用程序的当前版本低于最新版本时,获取所述应用程序的更新信息; 对所述升级程序进行初始化,并根据所述标志信息和所述更新信息对所述应用程序进行升级;以及 显示升级结果,并对所述DSP芯片进行复位。2.根据权利要求1所述的用于DSP芯片程序升级的烧写方法,其特征在于,所述根据所述标志信息和所述更新信息对所述应用程序进行升级进一步包括: 根据所述标志信息获取所述待升级的应用程序对应的地址段; 擦除所述地址段内的所述应用程序;以及 根据所述更新信息,将所述最新版本的所述应用程序烧写至所述地址段。3.根据权利要求1所述的用于DSP芯片程序升级的烧写方法,其特征在于,在所述擦除所述地址段内的所述应用程序之前,还包括: 获取预设的应用程序接口,以对存储器中的内容进行预设长度的读写和/或擦除操作。4.根据权利要求2所述的用于DSP芯片程序升级的烧写方法,其特征在于,还包括: 当所述应用程序的当前版本为最新版本时,获取所述应用程序的更新时间;以及 当所述更新时间与当前时间的间隔大于预设阈值时,检测所述应用程序的当前版本是否为最新版本。5.一种用于DSP芯片程序升级的烧写装置,其特征在于,包括: 写入模块,用于将DSP程序烧写到存储器中的预设位置,其中,所述DSP程序包括标志信息、升级程序和至少一个应用程序; 检测模块,用于检测所述应用程序的当前版本是否为最新版本; 第一获取模块,用于当所述应用程序的当前版本低于最新版本时,获取所述应用程序的更新信息; 升级模块,用于对所述升级程序进行初始化,并根据所述标志信息和所述更新信息对所述应用程序进行升级; 显示模块,用于显示升级结果;以及 复位模块,用于对所述DSP芯片进行复位。6.根据权利要求5所述的用于DSP芯片程序升级的烧写装置,其特征在于,所述升级模块进一步体包括: 第一获取子模块,用于根据所述标志信息获取所述待升级的应用程序对应的地址段; 擦除子模块,用于擦除所述地址段内的所述应用程序;以及 写入子模块,用于根据所述更新信息,将所述最新版本的所述应用程序烧写至所述地址段。7.根据权利要求5所述的用于DSP芯片程序升级的烧写装置,其特征在于,所述升级模块还包括: 第二获取子模块,用于获取预设的应用程序接口,以对存储器中的内容进行预设长度的读写和/或擦除操作。8.根据权利要求6所述的用于DSP芯片程序升级的烧写装置,其特征在于,还包括:第二获取模块,用于当所述应用程序的当前版本为最新版本时,获取所述应用程序的更新时间;其中,所述检测模块还用于当所述更新时间与当前时间的间隔大于预设阈值时,检测所述应用程序的当前版本是否为最新版本。
【专利摘要】本发明提出一种用于DSP芯片程序升级的烧写方法和装置。其中,用于DSP芯片程序升级的烧写方法包括:将DSP程序烧写到存储器中的预设位置,其中,DSP程序包括标志信息、升级程序和应用程序;检测应用程序的当前版本是否为最新版本;当应用程序的当前版本低于最新版本时,获取应用程序的更新信息;对升级程序进行初始化,并根据标志信息和更新信息对应用程序进行升级;以及显示升级结果,并对DSP芯片进行复位。本发明的用于DSP芯片程序升级的烧写方法和装置适用于C2000系列的任意一种数字信号处理芯片。
【IPC分类】G06F9/445
【公开号】CN104881301
【申请号】CN201410073500
【发明人】闫海英
【申请人】北京谊安医疗系统股份有限公司
【公开日】2015年9月2日
【申请日】2014年2月28日
转载请注明原文地址:https://www.famiwei.com/read-8138774.html

最新回复(0)