基于ADSP21062的雷达信号处理系统的调试
来源:eefocus 2022-11-24

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、和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的雷达信号处理系统的调试中获得了验证。

声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
0
评论
  • 相关技术文库
  • 处理器
  • DSP
  • CPU
  • GPU
  • 对比分析MPU和MCU

    当为你的下一个设计方案选择正确的核心处理器件时,你应该考虑哪些因素呢?本文将对MPU和MCU做些对比分析,并以此对器件的选择给出一些指导性建议和意见。每当在为新

    01-28
  • 在Linux下对IO端口与IO内存访问方式总结

    (一)地址的概念1)物理地址:CPU地址总线传来的地址,由硬件电路控制其具体含义。物理地址中很大一部分是留给内存条中的内存的,但也常被映射到其他存储器上(如显存

    01-18
  • 分清ARM CPU上的三个地址

    首先,我们要分清ARMCPU上的三个地址:虚拟地址(VA,VirtualAddress)、变换后的虚拟地址(MVA,ModifiedVirtualAddress

    01-12
  • 一文详解锁存器、触发器、寄存器、缓冲器

    一、锁存器锁存器(latch)---对脉冲电平敏感,在时钟脉冲的电平作用下改变状态锁存器是电平触发的存储单元,数据存储的动作取决于输入时钟(或者使能)信号的电平

    01-11
  • 基于多核DSP实现千兆以太网通信

    DSP的应用针对8核DSPTMS320C6678与外部设备进行数据通信的需求,以片上集成千兆以太网交换子系统为核心,选取芯片88E1111作为PHY设备,设计了

    01-03
  • 多核DSP C6678内部构造

    TMS320C6678是KeyStone架构的8核DSP处理器,每个CorePac核的频率最高为1.25GHz,提供强大的定点和浮点运算能力,同时芯片内部集成了

    2022-12-23
  • CPU为什么不容易坏

      虽然层层封装的保护加上生产工厂的良品控制,CPU很难因为外界原因造成芯片的物理损坏,但是断针、超频或雷击造成电压过高烧毁、遇水短路等等原因还是会让CPU变得

    2022-12-16
  • 数字电路逻辑设计中的注意事项

    这是一个在逻辑设计中注意事项列表,由此引起的错误常使得设计不可靠或速度较慢,为了提高设计性能和提高速度的可靠性,必须确定设计通过所有的这些检查。可靠性1.为时钟

    2022-12-14
  • pcie和pci插槽的区别

      现在主板上的插槽基本上都是PCI插槽或者PCI-E插槽,这两种插槽有什么区别呢?主要是插哪些卡的呢?现在我们就针对这两个不同的插槽进行详细的分析。   PC

    2022-11-30
  • 处理器单元优缺点对比

      带有多个处理单元的SoC器件目前是产品设计链上的重要一环。本文综合各种因素评估了不同处理单元的优缺点,并通过卫星无线电接收器的设计实例帮助开发人员理解SoC

    2022-11-30
  • 怎样设计实现一个基于DSP和PCI总线的通信数据采集系统?

    随着数字信号处理器性能的不断提高及其成本与售价的大幅下降,数字信号处理应用领域飞速扩展,信号处理进入了一个新的发展时期。同时随着计算机技术以及互联网络技术的不断

    2022-11-29
  • cpu总线逻辑上的三个分类

    cpu和其他芯片连接的导线,通常称为总线,从物理意义上讲,就是由一根根组成的。根据传送的信息的不同,从逻辑上可以分为地址总线、数据总线、控制总线。1.地址总线:

    2022-11-29
下载排行榜
更多
广告