- UID
- 872238
|
调TMS320C5X的DSK提供了如下软硬件资源: 40MHZ的TMS320C50(内部具有10K字的RAM); 32K字节的BOOT EPROM; A/D和D/A转换芯片TLC32044; 与PC的RS-232C接口 汇编器; 调试器软件接口。 4.3 软件模拟器 软件模拟器是一种模拟DSP芯片各种功能并在非实时条件下进行软件调试的调试工具,它不需要目标硬件支持,只需在计算机(如PC)上运行,是一种廉价方便的调试工具。当然,由于DSP芯片用软件模拟实现,运行速度慢是软件模拟器的一个突出的缺点。软件模拟器模拟DSP芯片的I/O 口时采用与文件关联的方法来实现,因而调试中所需的I/O值可从文件中读取,输出到I/O口的值也可存储在文件中。 软件模拟器的主要特征有。 (1)在计算机上执行用户DSP程序; (2)可修改和查看寄存器;。 (3)可修改和显示数据和程序存储器:任何时候都可进行存储器的修改,也可在程序装人前进行存储器初始化; (4)可模拟外设、高速缓存(cache)及流水线、定时等功能; (5)可计算指令周期数; (6)可编程的断点设置:可在取指令、读写存储器及错误条件满足时设置断点; (7)可进行累加器、程序计数器、辅助寄存器的跟踪; (8)指令的单步执行; (9)用户可设定中断产生间隔; (10)在遇到非法操作码和无效数据访问时提示错误信息; (ll)从文件中执行命令。 在用模拟器调试程序前,首先必须对源文件进行汇编,如果程序由多个模块组成,还迎须进行链接。链接后的绝对代码可以装人模拟器进行调试。 TI 提供的软件模拟器有: •TMs320CIX软件模拟器 •TMs320C2X软件模拟器 •TMs320C2XX软件模拟器。 •wi320C3X软件模拟器 •TMS320C4X软件模拟器 •TMs320C5X软件模拟器 •TMs320C54X软件模拟器 在上述软件模拟器中,新版本的模拟器都采用了C和汇编源码调试器接口,允许用户用C语言或汇编语言进行调试,也可进行两种语言的混合调试,用户接口界面非常友好。其程序执行的方式有下列几种方式:单条指令/多条指令、单周期/多周期、执行到条件满足,如果条件满足一直执行、执行设置的循环次数、无条件执行至键输入等。 用软件模拟器模拟I/O口时,首先用与存储器配置相同的方法将I/O口增加到存储器映象中,然后用关联命令MC将I/O口与一个文件相关联,MC命令的格式为: MC 口地址,页,文件名,{READ/WRITE} 其中的“页”分别用1和2表示,“1’’表示串行口,“2”表示并行口。 下面我们以TMS320C50为例说明软件模拟器模拟I/O口时的使用方法。 在TMS320C5X中,若要将50H口配置为输入口,并与in.dat文件关联,命令如下: MC 0x50,1,0xl,IPORT ;口地址50H配置为输人口 MC 0x50,1,in.dat,READ ;口地址50H与文件in.dat关联 TMs320C50具有两个串行口,一个是标准的同步串行口,一个是TDM串行口。两个串行口的配置方法如下。 MA 0x20,1,1,IPORT ;配置DRR(0x20)为输入口 MA OX21,1,1,0PORT ;配置DXR(Ox2l)为输出口 MA 0x30,1,1,IPORT ;配置TRCV(0X30)为输入口 MA Ox31,1,1,OPORT ;配置TDXR(Ox31)为出口。MC 0x20,1,RECV.DAT,READ ;将DRR与RECV.DAT文件关联 MC Ox2l,1,XMIT.DAT,WRITE ;将DXR与XMIT.DAT文件关联 MC 0x30,1,TRCV.DAT,READ ;将TRCV与TRCV.DAT文件关联 MC OX31,1,TXMT.DAT,WRITE ;将TDXR与TXMT.DAT文件关联 上述配置可以放人Simlator的初始配置命令文件simlaor.cmd中,则每次启动simlator调试器自动进行配置,当然在调试过程中也可以重新进行配置。 关联文件具有特定的格式,对一般的I/O口和标准的同步串行口,文件格式为每行一个16进制数,如: OxO123 0x4567 Ox89ab 对TDM串行口,输入和输出文件格式需要三个区域:地址、数据和通道号,每个区域都是16进制格式,中间用空格分开,如: 0x80 OxO123 0 0x40 0x4567 1 0x20 Ox89ab 2 0x10 0xcdef 3 0x01 0x0123 4 Simlator模拟串行口中断和外部中断是通过设置伪寄存器的方法实现的。每一个中断设置两个伪寄存器,一个是中断周期寄存器,另一个是中断定时器寄存器。中断周期寄存器内设置的是两个中断间隔的机器周期数。中断定时器寄存器内包含的是当前至下一个中断之间的机器周期数,中断定时器寄存器以机器周期的速率进行递减,若中断使能,则递减至0时就产生一个中断,同时将中断周期寄存器中的值装人。表4.2列出了TMS320C5X串行口的伪寄存器 表4.2 串行口伪寄存器 伪寄存器 作 用 缺省值 XIRP 发送中断周期寄存器 64 XIRT 发送中断定时器寄存器 从XIRP装入 RIRP 接收中断周期寄存器 64 RIRT 接收中断定时器寄存器 从XIRT装入 TXIRP 独立方式TDM发送中断周期寄存器 64 TXIRT 独立方式TDM发送中断定时器寄存器 从TXIRP装入 TRIRP 独立方式TDM接收中断周期寄存器 64 TRIRT 独立方式TDM接收中断定时器寄存器 从TRIRP装入 TDMP TDM串行口周期寄存器 64 TDMT TDM串行口定时器寄存器 从TDMP装入 MS320C50的四个外部中断INTl、IN12、IN13和INT4的模拟也用同样的方法实现。每个中断用两个伪寄存器,一个是外部中断周期寄存器,寄存器名分别为TIC1P,TIC2P,TIC3P和TIC4P,另一个是外部中断走时器寄存器,寄存器名分别为TICIT、TIC2T、TIC3T和TIC4T。调试过程中可以用下列方法设置中断产生的间隔: ?RIRP=100 ;设置串行口接收中断间隔为100 ?XIRP=100 ; 设直串行口发送中断间隔为100 ?TDMP=1000 ;设置TDM串行口间隔为1000 ?TIC1P=128 ;设置INT1中断间隔为128 4.4 评价模块 (EVM) 评价模块是一种低成本的开发板,在EVM板上一般配置了一定数量的硬件资源,可用来进行DSP芯片评价、性能坪估和有限的系统调试。调试接口也采用上述的C/汇编源码调试器。 4.5 软件开发系统 (SWDS) 软件开发系统是一块PC插卡,可提供低成本的评价和实时软件开发。可用来进行实时的软件调试,程序在DSP芯片上实时运行。与仿真器不同的是软件开发系统不提供实时硬件调试功能,因此涉及目标I/O操作一般用文件I/O代替。TI提供了TMS320C2X和TMS320C5X 等软件开发系统 4.6 仿真器 (XDS) 仿真器,也即扩展开发系统(XDS),可用来进行系统级的集成调试,是进行DSP芯片软硬件开发的最佳工具。目前主要有两种类型的仿真器:一种是传统的电路仿真器,主要用于早期的TMS320CIX和TMS320C2X两代DSP芯片的仿真,这两代DSP芯片没有仿真信号线;另一种是先进的扫描仿真器,主要用于TMS320C3X、TMS320C4X、TMS320C5X、TMS320C54X。 TMS320C2XX和TMS320C8X等DSP芯片的仿真,在这些DSP芯片上提供了用于仿真的一些信号线。 采用传统的电路仿真器对用户板进行硬件仿真时,仿真器的电缆插头必须插入到用户硬件电路中DSP芯片的相应位置,也就是说,仿真电缆的插头引脚必须与DSP芯片的引脚一一对应。TI的XDS/22仿真器就属于这一类,主要用于TMS320CIX和TMS20C2X等芯片的仿真。 扫描仿真器不采用插入仿真的方法,而是通过DSP芯片上提供的几个仿真引脚实现仿真功能。这种方法为TI公司所开发,可用来解决高速DSP芯片的仿真。由于高速DSP芯片具有高度并行的结构、快速的指令周期、高密度的封装等特点,采用传统的电路仿真方法很难实现可靠的仿真。扫描仿真消除了传统的电路仿真存在的问题,例如,仿真电缆过长会引起信号失真,仿真插头会引起可靠性差等问题。用户程序可在目标系统的片内或片外存储器实时运行,而不会因仿真器引入额外的等待状态。 DSP芯片内部是通过移位寄存器扫描链实现扫描仿真,这个扫描链被外部的串行口访问。采用扫描仿真,即使芯片已经焊在电路板上,也可进行仿真调试,这对于在生产过程中调试DSP系统也带来极大的方便。 |
|