一种基于jtag总线的DSP程序在线升级装置及方法制造方法及图纸

技术编号:31760766 阅读:13 留言:0更新日期:2022-01-05 16:44
本发明专利技术公开了一种基于jtag总线的DSP程序在线升级装置及方法,本发明专利技术能够将DSP应用程序对应的.out文件直接转为bin文件,通过USB转JTAG装置烧写,针对不同的DSP只需开发一种软件,即可完成不同DSP程序的烧写。即便对于采用不同BSDL文件的DSP芯片,或不同操作码的Flash,均能够满足不同DSP芯片外接不同Flash芯片的程序烧写要求。相比传统烧写方法,本发明专利技术不用维护针对DSP处理器及Flash芯片选型不同的产品维护多份烧写代码,祛除了传统方法中配置脚本生成bin文件,加载烧写程序烧写bin文件的复杂流程,简化了烧写过程,降低了烧写过程中出错的可能性。程中出错的可能性。程中出错的可能性。

【技术实现步骤摘要】
一种基于jtag总线的DSP程序在线升级装置及方法


[0001]本专利技术属于嵌入式软件升级领域,具体涉及一种基于jtag总线的DSP程序在线升级装置及方法。

技术介绍

[0002]现有技术中针对TI DSP程序的烧写,往往通过TI提供的集成开发环境(IDE)和DSP仿真器进行。这种方式,首先需要针对具体的TI DSP芯片在通用集成开发环境中进行程序开发,配置DSP芯片与外部Flash连接的接口,编写该接口下针对DSP芯片外部Flash芯片的烧写程序。将用户的应用程序通过TI公司提供hex6x工具转换为bin文件。最终通过仿真器将烧写程序加载至DSP上运行,借助集成开发环境读取bin文件,将bin文件烧写至Flash。
[0003]这种技术方案有诸多缺陷,首先这种方案不具有通用性,针对不同的DSP处理器需要开发不同的烧写程序。第二在将用户应用程序转换为烧写bin文件时,由于采用的hex6x为window的命令行程序,这种程序在window系统下常常被杀毒软件误认为病毒,导致生成bin文件异常。第三,通过hex6x生成最终烧写的bin文件需要编写脚本,通过脚本配置相关参数并调用hex6x生成最终的bin文件。这个过程对于新手不够友好,专业化要求较高。

技术实现思路

[0004]本专利技术的目的在于克服上述不足,提供一种基于jtag总线的DSP程序在线升级装置及方法,通过上位机软件直接解析用户应用程序,读取文件中程序运行时所需数据和代码,将其转换为烧写所用的bin文件。上位机软件读取最终的bin文件,通过本专利技术中USB转jtag装置,将bin文件中的数据直接通过DSP芯片上jtag接口烧写至其外部EMIF接口所连接的Flash上。
[0005]为了达到上述目的,一种基于jtag总线的DSP程序在线升级方法,包括以下步骤:
[0006]S1,解析用户应用程序对应的.out文件,生成烧写所用bin文件;
[0007]S2,对DSP处理器上jtag接口进行复位;
[0008]S3,根据DSP芯片对应的BSDL文件建立与边界扫描单元对应的缓存;
[0009]S4,获取DSP各个管脚的当前状态,对边界扫描寄存器进行初始数据加载;
[0010]S5,通过jtag接口控制DSP芯片的EMIF接口输出复位时序,对Flash芯片进行复位;
[0011]S6,通过jtag接口控制DSP芯片的EMIF接口输出片擦除时序,对Flash进行片擦除;
[0012]S7,通过jtag接口控制DSP芯片的EMIF接口输出编程时序,对Flash进行编程;
[0013]S8,读取用户应用程序.out文件转换后的bin文件,重复S7通过USB转jtag装置将bin文件中所有数据编程进Flash,完成用户程序通过jtag装置的在线升级。
[0014]S1的具体方法如下:
[0015]解析.out文件各个section的信息,将section的alloc属性为Y的section根据该section在ELF文件中偏移,读出该section的有效数据和长度,将其写入bin文件中,完成烧写所用bin文件。
[0016]S2中,对DSP处理器上jtag接口进行复位是操作驱动保持TMS管脚输出高电平至少5个TCK时钟周期。
[0017]S3的具体方法如下:
[0018]建立无符号char型数组,由于BSDL文件中所有跟EMIF接口相关的管脚在边界扫描链上全部标示为双向,因此通过边界扫描寄存器配置管脚对应的边界扫描单元方向。
[0019]S4的具体方法如下:
[0020]通过上位机软件控制jtag接口控制器状态机依次切换为Run

Test/Idle状态、DR

Scan状态、IR

Scan状态、Capture

IR状态和Shift

IR状态;
[0021]在Shift

IR状态时,输入BSDL文件中SAMPLE指令的序列,各个管脚的状态在TCK的上升沿装入边界扫描单元的寄存器中,切换到Exit1

IR状态;
[0022]上位机软件控制jtag接口控制器状态机依次切换为Update

IR状态、Run

Test/Idle状态、DR

Scan状态、Capture

DR状态和Shift

DR状态;
[0023]采集TDO引脚的当前值,存入bscan数组,在N+1周期时,N为边界扫描链长度,切换到Exit1

DR状态;
[0024]上位机软件控制Jtag接口控制器状态机切换为Run

Test/Idle状态。
[0025]S5的具体方法如下:
[0026]Flash中任意地址写入0xF0;
[0027]即通过上位机软件控制Jtag接口控制器状态机依次切换为Run

Test/Idle状态、DR

Scan状态、IR

Scan状态、Capture

IR状态和Shift

IR状态;
[0028]在Shift

IR状态时,输入BSDL文件中EXTEST指令的序列,切换到Exit1

IR状态;
[0029]上位机软件控制jtag接口控制器状态机依次切换为Update

IR状态、Run

Test/Idle状态、DR

Scan状态、Capture

DR状态和Shift

DR状态;
[0030]配置bscan数组,使得DSP芯片EMIF接口的数据线能够输出0xF0对应的时序。输出bscan数组对应的电平,每个数组值对应的输出电平持续一个jtag接口TCK引脚输出时钟的时钟周期,在N+1周期时,N为边界扫描链长度,切换到Exit1

DR状态;
[0031]上位机软件控制jtag接口控制器状态机依次切换为Update

DR状态和Run

Test/Idle状态。
[0032]S6的具体方法如下:
[0033]通过USB转jtag装置控制DSP的EMIF接口依次输出以下时序;
[0034]向Flash芯片0x555地址写入0xAA;
[0035]向Flash芯片0x2AA地址写入0x55;
[0036]向Flash芯片0x555地址写入0x80;
[0037]向Flash芯片0x555地址写入0xAA;
[0038]向Flash芯片0x2AA地址写入0x55;
[0039]向Flash本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于jtag总线的DSP程序在线升级方法,其特征在于,包括以下步骤:S1,解析用户应用程序对应的.out文件,生成烧写所用bin文件;S2,对DSP处理器上jtag接口进行复位;S3,根据DSP芯片对应的BSDL文件建立与边界扫描单元对应的缓存;S4,获取DSP各个管脚的当前状态,对边界扫描寄存器进行初始数据加载;S5,通过jtag接口控制DSP芯片的EMIF接口输出复位时序,对Flash芯片进行复位;S6,通过jtag接口控制DSP芯片的EMIF接口输出片擦除时序,对Flash进行片擦除;S7,通过jtag接口控制DSP芯片的EMIF接口输出编程时序,对Flash进行编程;S8,读取用户应用程序.out文件转换后的bin文件,重复S7通过USB转jtag装置将bin文件中所有数据编程进Flash,完成用户程序通过jtag装置的在线升级。2.根据权利要求1所述的一种基于jtag总线的DSP程序在线升级方法,其特征在于,S1的具体方法如下:解析.out文件各个section的信息,将section的alloc属性为Y的section根据该section在ELF文件中偏移,读出该section的有效数据和长度,将其写入bin文件中,生成烧写所用bin文件。3.根据权利要求1所述的一种基于jtag总线的DSP程序在线升级方法,其特征在于,S2中,对DSP处理器上jtag接口进行复位是操作驱动保持TMS管脚输出高电平至少5个TCK时钟周期。4.根据权利要求1所述的一种基于jtag总线的DSP程序在线升级方法,其特征在于,S3的具体方法如下:建立无符号char型数组,由于BSDL文件中所有跟EMIF接口相关的管脚在边界扫描链上全部标示为双向,因此通过边界扫描寄存器配置管脚对应的边界扫描单元方向。5.根据权利要求1所述的一种基于jtag总线的DSP程序在线升级方法,其特征在于,S4的具体方法如下:通过上位机软件控制jtag接口控制器状态机依次切换为Run

Test/Idle状态、DR

Scan状态、IR

Scan状态、Capture

IR状态和Shift

IR状态;在Shift

IR状态时,输入BSDL文件中SAMPLE指令的序列,在TMS管脚输入低电平,切换到Exit1

IR状态;上位机软件控制jtag接口控制器状态机依次切换为Update

IR状态、Run

Test/Idle状态、DR

Scan状态、Capture

DR状态,此时边界扫描单元寄存器存储的是芯片各个管脚的当前电平;在Shift

DR状态,采集TDO引脚的当前值,存入bscan数组,在N+1周期时,N为边界扫描链长度,切换到Exit1

DR状态;上位机软件控制jtag接口控制器状态机切换为Run

Test/Idle状态。6.根据权利要求1所述的一种基于jtag总线的DSP程序在线升级方法,其特征在于,S5的具体方法如下:通过上位机软件控制jtag接口控制器状态机依次切换为Run

Test/Idle状态、DR

Scan状态、IR

Scan状态、Capture

IR状态和Shift
‑...

【专利技术属性】
技术研发人员:李珂史杨梅梁勇匡乃亮
申请(专利权)人:西安微电子技术研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1