TMS320F28XX系列DSP测试方法研究与实现
2016-08-04集成电路测试技术北京市重点实验室北京自动测试技术研究所100088
于 明(集成电路测试技术北京市重点实验室,北京自动测试技术研究所,100088)
TMS320F28XX系列DSP测试方法研究与实现
于 明
(集成电路测试技术北京市重点实验室,北京自动测试技术研究所,100088)
摘要:本项目是基于美国TI公司TMS320F28xx系列DSP,进行的测试方法研究与实现。测试方法用于北京自动测试技术研究所自主研发的国产自测试设备(ATE)BC3192V50大规模集成电路测试系统。测试的原理是,通过TMS320F28xx系列DSP配备的SCI(Serial Communication Interface)串行通信接口,以此作为桥梁完成ATE与芯片之间的通信。同时,实现自动测试设备与测试系统的测试向量的匹配。而后,完成TMS320F28xx系列DSP的功能测试以及直流参数测试。
关键词:TMS320F28xx系列DSP;ATE;串行通信;测试向量匹配测试
0 引言
TMS320F28XX系列DSP集微控制器和高性能DSP的特点于一身,具有强大的控制和信号处理能力,能够实现复杂的控制算法,性能尤为以C28XX系列高精度数字信号处理器为最好。与并行接口相比,串行接口的最大特点是减少了器件引脚数目,降低了接口设计复杂性。目前所有的数字信号处理器都提供一个或多个串行接口,然而,也需要DSP能够与外设进行异步串行通信。特别在测试领域中,如何利用串行接口完成自动测试设备图形向量与芯片指令的匹配,并依据于此建立基于自动测试设备的测试方法,是本文探讨的内容。
1 SCI(Serial Communication Interface)基本原理
1.1SCI模块简介
图1 串行通信的三种方式
SCI(SerialCommunicationInterface)意为“串行通信接口”,是相对于并行通信的,是串行通信技术的一种总称,最早由Motorola公司提出的。它是一种通用异步通信接口UART,与MCS‐51的异步通信功能基本相同。
2812的SCI模块支持CPU与采用NRZ(non-return-zero不归零)标准格式的异步外围设备之间进行数字通信。
2812内部具有两个相同的SCI模块,SCIA和SCIB,每一个SCI模块都各有一个接收器和发送器。SCI的接收器和发送器各具有一个16级深度的FIFO(First in fist out 先入先出)队列,它们还都有自己独立的使能位和中断位,可以在半双工通信中进行独立的操作,或者在全双工通信中同时进行操作。
1.2SCI的cpu接口
图2 SCI的CPU接口
SCI的一些特点见下表1:
1.3SCI接收数据原理
SCI有独立的数据发送器和数据接收器,这样能够保证SCI既能够同时进行,也能够独立进行发送和接收的操作。
SCI接收数据的过程如下:如图的左半部分所示,首先,接收移位寄存器RXSHF逐位逐位的接收来自于SCIRXD引脚的数据,如果SCI的接收功能使能,RXSHF将这些数据传输给接收缓冲寄存器SCIRXBUF,CPU就能从SCIRXBUF读取外部发送来的数据。当然,如果FIFO功能使能的话,SCIRXBUF会将数据加载到RX FIFO的队列中,CPU再从FIFO的队列读取数据。
SCI发送数据的过程如下:如图右半部分所示,在FIFO功能使能的情况下,首先,发送数据缓冲寄存器SCITXBUF从TX FIFO中获取由CPU加载的需要发送的数据,然后SCITXBUF将数据传输给发送移位寄存器TXSHF,如果SCI的发送功能使能,TXSHF则将接收到的数据逐位逐位的移到SCITXD引脚上。
1.4SCI数据格式
表1
在进行通信的时候,一般都会涉及到协议,所谓协议就是通信双方预先约定好的数据格式,以及数据的具体含义。这种事先约定好的规则,我们就把它叫做通信协议。
在SCI中,通信协议体现在SCI的数据格式上。通常将SCI的数据格式称之为可编程的数据格式,原因就是可以通过SCI的通信控制寄存器SCICCR来进行设置,规定通信过程中所使用的数据格式。SCI使用的是NRZ的数据格式。
NRZ数据格式(表2):
真正的数据内容是1—8位,1个字符的长度。我们通常将带有格式信息的每一个数据字符叫做一帧,在通信中常常是以帧为单位的。SCI有空闲线模式和地址位模式,而在平常使用的时候,我们一般都是两个处理器之间的通信,例如2812和PC机或者2812和2812之间通信,这时候,更适合使用空闲线模式,而地址位模式一般用于多处理器之间的通信。在空闲线模式下,SCI发送或者接收一帧的数据格式如下图示,其中LSB是数据的最低位,MSB是数据的最高位。
空闲线模式下SCI一帧的数据格式---具体的定义这些数据格式的寄存器是通信控制寄存器SCICCR
1.5SCI的波特率设置
所谓的波特率就是指每秒所能发送的位数。2812的每个SCI都具有两个8位的波特率寄存器,SCIHBAUD和SCILBAUD,通过编程,可以实现达到64K不同的速率。
BRR=波特率选择寄存器中的值,从十进制转换成十六进制后,高8位赋值给SCIHBAUD,低8位赋值给SCILBAUD
LSPCLK=37.5M时,SCI常见的波特率(如表3)
在进行通信的时候,双方都必须以相同的数据格式和波特率进行通信,否则通信会失败。例如2812和PC机上的串口调试软件进行通信时,2812采用了什么样的数据格式和波特率,那么串口调试软件也需要设定成相同的数据格式和波特率,反之也一样。
2 DSP与自动测试设备(ATE)匹配
2.1测试向量匹配
查询方式:就是程序不断去查询状态标志位,看看SCI是不是已经做好了数据发送或者接收的准备。
当数据接收时,需要查询的是SCI接收状态寄存器(SCIRXST)中的RXRDY,接收器就绪标志。当从SCIRXBUF寄存器中已经准备好一个字符的数据,等待CPU去读时,RXRDY位就会置1。当数据被CPU从SCIRXBUF读出后,或者系统复位,都可以使RXRDY清0(如表4)。
查询匹配的流程如下:
1、RXENA (SCICTL1, bit 0)置高是的接收端打开;
2、数据(控制字)从SCIRXD管脚输入,由STRAT位识别;
3、数据从RXSHF到接收数据缓存器SCIRXBUF;中断被唤起,同时标志位置位及,RXRDY(SCIRXST.BIT6)置位,表示一个新字节已经收到;
4、读取SCIRXBUF,并且给控制字RXRDY清零;
5、下一数据将由SCIRXD管脚处到达,继续被识别,循环上面步骤;
6、当RXENA置低,终止接收端接受数据;数据被保存在RXSHF中;
2.2时序匹配
根据时钟的设置,即:
高速时钟预定标器和低速时钟预定标器,产生高速外设时钟HSPCLK和低速外设时钟LSPCLK:
SysCtrlRegs.HISPCP.all= 0x0001;// HSPCLK=150/2=75MHz
SysCtrlRegs.LOSPCP.all = 0x0002; // LSPCLK=150/4=37.5MHz
以及波特率寄存器的设置,得到空闲线模式波特率为19200,通信数据格式为1位停止位,8位数据位,无校验位。作为设置测试系统测试程序频率的标准。
3 测试向量生成
依据测试理论,测试模型需要考虑将芯片的所有管脚置于不同的状态进行测试。同时,通常情况下,会出现的不通故障,而设计模型,生成向量。
3.1测试向量配置
1——全0全1输出状态
2——0,1间隔输出状态
3——步进1输出状态
4——步进0输出状态
可以涵盖输出管脚IO,各类粘连,空缺等故障;
表3
表4
3.2 测试部分向量展示
4 整体设计思路
5 测试结果展示
6 结论
在测试领域中,如何将测试向量与芯片运行指令相匹配一直是技术的难点。在DSP等复杂集成电路中,此文实现了突破。
第一,通过本文的方法,不需要再去操作每一个寄存器的设置和复杂的指令,完全交给IDE 高级语言去完成,大大提高测试模型建立的效率。
利用所有器件上都配备的串行通信接口,完成测试向量和芯片运行指令精准匹配。同时,突破原先测试机提供时钟再去匹配芯片指令的被动机制,在此测试方法中测试机不再提供目标被测器件时钟,而是利用异步通信机制实现ATE与DUT的主动匹配。
第三,建立了针对器件所有GPIO的筛查向量组,以实现高故障覆盖率的测试。
测试方法已经应用到实际生产的测试中,提高的测试的开发时间,提高了测试效率,和故障覆盖率,得到了客户的认可。
参考文献
[1]TMS320F28XX DSP CPU And Peripherais Reference SetTexas Instruments, Vol, Aprii,2OOl
[2]TMS320F28XX DSPAppiications Guide Reference SerTexasInstruments, Voi4, October,2OOl
[3]TMS320F28XX Chip Support Library API User’s Guide,October,2OOl
[4]TMS320x281x Serial Communications Interface (SCI)Reference Guide.Vol, Oct,2OOl
[5]TMS320x281x DSP System Control and Interrupts Reference Guide.Vol, July ,2OOl
[6]万明山 TMS320F281X DSP 原理及应用实例[M].北京:北京航空航天大学出版社,2007.
[7]赵建领 51系列单片机开发宝典[M]. 北京:电子工业出版社. 2007
[8]王炼红,张克. TMS320F2812 DSP与PC机的串口通信设计[J].微计算机信息,2006(7):173-175
作者简介
于明,男,助理研究员,主要研究方向为芯片测试方法及测试系统实现等方面的研究。
Research and implementation of TMS320F28XX series DSP test method
Yu Ming
(Beijing Institute of Auto-Testing Technology,Beijing 100088)
Abstract:This project is based on the American company's TI TMS320F28xx series DSP,carries on the test method research and the realization.Test method for domestic ATE of Beijing Automatic Test Technology Research Institute developedBC3192V50——Large scale integrated circuit test system.The principle of testing is,throughSCI(Serial Communication Interface)of TMS320F28xxDSP,As a bridge to complete the communication between the ATE and the chip.Meanwhile,match test vectors of automatic test equipment and test system.Then Complete the function test of TMS320F28xx series DSP and the test of DC parameters and dynamic parameters.
Keywords:TMS320F28xxseriesDSP;Automatic test equipment(ATE);Serial Communication Interface;Test vector matching test