ADSP21062信号处理板的一种简易测试方法

2006-05-07 15:49:44来源: 电子技术应用

DSP2106x处理系统的开发研究,提出了一种简单易行的测试方法。该方法既可判别DSP能否正常工作,又可测试多处理器通过Link口传输信彷的有效性。所提的测试方法在基于ADSP21062的雷达信号处理系统的调试获得了验证。

ADSP2106x SHARC是一个适用于语音、通信和图像处理的高速32位数字信号处理器。该芯片是基于ADSP21000系列DSP芯片发展起来的一个完整的单片系统,增加一个双口片内SRAM,并集成了I/O设备。借助它的片内指令缓存,处理器可以在一个时钟周期内执行每一个指令。ADSP2106x SHARC体现了数字信号处理器的一个新的集成标准,它把一个高速运行的浮点DSP主处理器与集成的片内部件结合在一起,包括一个主机接口、DMA控制器、串口和连接口。由于它处理速度快、便于DSP多处理系统的连接和通信,目前已在更多的领域获得了开发和应用[1]。但如何对基于ADSP2106x的处理系统进行调试是人们在应用该芯片时必须解决的关键问题。本文提出了一种简单易行的测试方法,并在基于ADSP21062的雷达信号处理系统调试中获得了成功,验证了该方法的可行性。

1 雷达信号处理系统设计简介

我们应用ADSP21062处理器设计了一个雷达信号处理系统。此系统可以独立地进行工作,也可通过Link口与其它DSP进行通信。ADSP21062利用JTAG接口与EZ-ICE仿真器连接,实现对系统的仿真和测试。系统的电路结构见图1。

EZ-ICE仿真器应用IEEE1149.1 JTAG测试标准,监视和控制目标板处理器的工作。EZ-ICE仿真器的测试头通过一个14针的连接头与目标板处理器的CLKIN(可选)、TMS、TCK、TRST、TDI、TDO、EMU和GND信号相连。在电路板上设计了一个14针的接口,其信号的接口如图2所示。

2 电路的测试

电路测试主要应用EZ-ICE仿真器。该仿真器插在PC机的ISA槽中,通过JTAG口与ADSP21062处理系统相连,可在PC机的显示器上利用Emulator控制界面对DSP系统运行情况进行实时监控。ADSP2106x提供了模拟(Simulator)和仿真(Emulator)两套软件,它们的界面完全相同,只是一个不需要硬件,一个需要硬件。测试程序可先由Assembler汇编器汇编,再经Simulator模拟通过。最后在Emulator界面控制下可以装入由汇编生成的可执行文件(.EXE文件)和汇编的结构文件(.ACH文件),实现对硬件的测试和仿真。

2.1 硬件测试基本操作

对硬件测试时,先对存储器的内部控制、状态寄存器和存储器做简单的操作,确定EZ-ICE仿真器与处理器的通信正常。

对寄存器的操作一般有两种:位操作和字操作[2~3]。

(1)位操作:寄存器的位操作主要用于BIT SET,BIT CLR。

例如:BIT SET MODE2 0x00000001;

BIT CLR MODE2 0x00000001;

以上操作将MODE2的第一位置位或清除,而不影响到其它位。

(2)字操作:寄存器的字操作用DM()寻址指令。

例如:R0=0x00000001;

DM(SYSCON)=R0。

以上操作将SYSCON的第一位置位,其它位清除。

对存储器的操作采用DM()指令寻址,在指令中加入立即数、寄存器Rx(内容为寻址值)、基址(Ix)和变址(Mx)可实现直接寻址、间接寻址和变址寻址。

例如:R0=0x23;

DM(0x00030000)=R0。

以上操作将0x23放入0x00030000的地址内。

2.2 系统运行测试

设计一个对FLAG位的四个指示灯的操作,让其交替地闪烁,来检验ADSP21062处理器是否能够正常运行。程序采用中方式,利用定时器溢出时产生两个中断TMZHI和TMZLI。一个中断的服务程序设置FLAG0,1的指示灯亮,FLAG2,3的指示灯灭;另一个中断服务程序设置情况相反。两个服务程序交替执行,交替的间隔由定时器的初值确定。程序流程图见图3。

由于处理器在系统复位时MODE2寄存器被清除,使FLAG管脚作为输入,处理器不能改变其状态。所以主程序需对其初始化,使FLAG管脚作为输出,然后才能在ASTAT寄存器中改变FLAG的状态。同样,对定时器也要进行设置。

(1)定时器的设置:

BIT SET MODE1 0x1000;(开放全局中断)

BIT SET MODE2 0x20;(开放定时器)

BIT SET IMASK 0x10;(开放TMZHI中断)

(2)FLAG位的设置:

BIT SET MODE2 0x78000;(设置为输出)

BIT CLR ASTAT 0x180000;(FLAG0,1亮)

BIT SET ASTAT 0x600000;(FLAG2,3灭)

此程序可通过JTAG仿真测试,用通用编程器将此程序写入EPROM,然后让系统单独工作,来验证系统能否正常引导和工作。上电后四个指示灯交替闪烁,经验证系统顺利地完成了引导,并且工作正常。

2.3 Link口测试

用传输线把处理器的两个Link口连在一起,然后让一个Link口发数据,另一个收数据,通过Emulator(JTAG)采用单步执行的方式对其测试,观察发送和接收的过程。

(1)Link口传输速率的设置:

R0=0x00006000;

DM(LCOM)=R0; (2倍速率)

(2)LBUF的设置:

R0=0x0003fe8f;

DM(LAR)=R0; (LBUF1给Link口1,LBUF2给Link口2)

(3)开放Link口:

R0=0x00000190;

DM(LCTL)=R0;(Link口1发,Link口2收)

(4)传输操作:

R0=0x12345678;

DM(LBUF1)=R0;(Link口1发0x12345678)

R1=DM(LBUF2);(Link口2收到的数据)

经测试,Link口的工作正常。通过Emulator的Link口控制窗口可以看到:当Link口设置完成,执行DM(LBUF1)=R0指令时,可以看到Link口2缓冲区的状态(通过LxSTAT寄存器)为有一个数据;当执行R1=DM(LBUF2)指令时,Link口2缓冲区的状态为空,寄存器R1口的值为Link口1的缓冲区(LBUF1)的内容。证明通过Link口1顺利地数传给Link口2,通过Link口可以完成处理器之间的通信。

2.4 DSP算法的执行时间

将一个用汇编编写的DSP算法通过EZ-ICE仿真器放到系统中执行,由Emulator提供的时钟(指令)计数功能,可以知道算法在处理器中实际执行时的间。在Emulator的计数窗口中有一个时钟计数(Cycle Count),它记录程序从开始执行到停止所用时钟周期的个数,用时钟的个数(Cycle Count)乘以时钟周期就可以得到执行的总的时间。

针对ADSP2106x处理系统的开发研究,本文提出简单易行的测试方法既可判别DSP能否正常工作,又可测试多处理器互联时通过Link口传输信息的有效性。所提的测试方法在我们研制的基于ADSP21062的雷达信号处理系统的调试中获得了验证。

关键字:简易  测试  方法

编辑: 引用地址:http://www.eeworld.com.cn/Test_and_measurement/zhzx/200605/2134.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
简易
测试
方法

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved