您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 基于SOPC的便携式边界扫描故障诊断仪
1PortableBoundary-ScanFaultDiagnosisDevicebasedonSOPCAbstract:Thispaperdesignsanoriginalboundary-scandevice,whichisaportableboundary-scanfaultdiagnosisdevice.ItmakesuseofSOPCsolutiontointegratemostofboundary-scanfaultdiagnosis’sfunctionalmodulesonaFPGAwhichisproposedbyAlteraCorporation.Itoptimizesthesystem’sperformancegreatly.ThisprojectadoptsalowcostandhighdensityFPGAascarrier,whichisdevelopedwithembeddedNIOSCPUbyAlteraCorporation.Itimprovestheflexibilityofdesigningsystem.MultitaskandrealtimeOSappliesonNiosCPU,whichbuildsuptheabilityofdealingtaskandcutstestingtime.ThisprojectimprovestheefficiencyoftestinganddiagnosisbydevelopingIEEE1149.1testingbusIPcore.Thisschemereducesthecostandrisesthereliabilitygreatlycomparingwiththesamefunctionalproducts.Keywords:boundary-scan;faultdiagnosis;Nios;uC/OS-Ⅱ;SOPC基于SOPC的便携式边界扫描故障诊断仪彭立章杨春玲(哈尔滨工业大学电气工程及自动化学院,哈尔滨,150001)摘要:本文设计了一种新颖的边界扫描设备——便携式边界扫描故障诊断仪,利用Altera公司提出的SOPC解决方案把边界扫描故障诊断系统大部分的功能模块集成在一片FPGA上,大大优化了整个系统的性能。该方案采用Altera公司推出的低成本、高密度、具有嵌入式Nios软核CPU的CycloneⅡ系列FPGA,大大提高了系统的设计灵活性。多任务实时操作系统uC/OS-Ⅱ在Nios处理器上的应用,增强了系统多任务的处理能力,缩短了测试时间。IEEE1149.1测试总线IP核的开发,提高了边界扫描诊断的效率。该方案使得整个边界扫描故障诊断系统与同类功能型产品相比,在成本显著降低的同时稳定性和可靠性大幅度提升。关键词:边界扫描;故障诊断;Nios;uC/OS-Ⅱ;SOPC引言随着超大规模集成电路(VLSI)和表面贴装(SMT)技术的广泛应用,使印刷电路板上电路节点的物理可访问性逐步恶化,电路及其系统的可测试性急剧下降,常规测试面临挑战[1]。在这种情况下,联合测试行动组(JTAG)提出的新型电路板可测性设计—边界扫描技术脱颖而出,克服了测试复杂数字电路的技术障碍,大大提高了数字电路特别是VLSI系统的可控性和可观测性。边界扫描技术被IEEE接纳后,受到军方和工业界的普遍重视,在F-22、波音777等飞机中和个人计算机Compaq等设备中得到了成功的应用,成为新型电子设备的主要测试技术。国内外传统的边界扫描测试设备及相关软件都是基于PC平台,在特殊的军事现场具有相当局限性。鉴于这种考虑,本文设计开发的便携式边界扫描故障诊断仪具有很大的现实意义和实用价值。目前市场上的边界扫描测试设备主要有两种类型:一种是直接通过PC的并口模拟边界扫描测试总线信号对被测系统电路进行边界扫描测试;另一种是利用传统的MCU作为下位机微处理器通过PCI、USB等通信方式与PC机进行测试数据的交换。前者在真正的边界扫描测试过程中速度太慢、效率太低,同时这种方式基于PC平台不适合便携式。后者虽然也基于PC平台,但较低运算能力、有限外设扩展能力的MCU在作为便携式设备微处理器面前就会力不从心。鉴于此,本文采用Altera公司SOPC的解决方案,将处理器、存储器、I/O口、LVDS、CDR等系统大部分的功能模块集成到一个PLD器件上设计开发边界扫描故障诊断仪,大大优化了系统的整体性能,具有低功耗、可裁减、可升级和软硬件系统可编程的特点。1边界扫描原理剖析边界扫描技术的核心思想是在器件内部的核心逻辑与I/O引脚之间插入的边界扫描单元,在芯片正常工作时是“透明”的,不影响电路板的正常工作[2]。各边界扫描单元以串行方式连接成扫描链,通过扫描输入端将测试矢量以串行扫描的方式输入,对相应的管脚状态进行设定,实现测试矢量的加2载;通过扫描输出端将系统的测试响应串行输出,进行数据分析与处理,完成电路系统的故障诊断及定位,边界扫描测试基本原理示意图如图1所示。图1边界扫描测试基本原理示意图边界扫描测试的物理基础是IEEE1149.1边界扫描测试总线和设计在器件内的边界扫描结构,标准的边界扫描结构如图2所示。其中边界扫描测试总线由测试数据输入(TDI)、测试数据输出(TDO)、测试时钟(TCK)、测试模式选择(TMS)和复位信号(TRST)五根信号线组成。而标准的边界扫描结构就是在器件内部的核心逻辑I/O引脚增加了边界扫描单元(BSC,BoundaryScanCell),同时还增加了和边界扫描测试相关的指令寄存器、数据寄存器、测试访问端口TAP(TestAccessPort)控制器等电路。其中TAP控制器是在TCK与TMS作用下进行十六个状态转换的同步有限状态机。边界扫描结构在TAP状态机的控制下顺序运行,在复位状态时,边界扫描结构相对于芯片内核是透明的,器件正常工作;在测试状态时,边界扫描结构可以对数据寄存器或指令寄存器进行操作[3],即从TDI端口把测试矢量移入边界扫描单元,从TDO端口把测试响应移出。图2标准边界扫描结构在进行任何边界扫描测试之前,首先进行对边界扫描结构中的指令寄存器的访问,即把期望的边界扫描测试指令通过TAP测试访问通道把指令串行加载到边界扫描结构中的指令寄存器中并使之生效。然后根据指令寄存器中的指令选择访问数据寄存器,进行边界扫描的各种测试。在IEEE1149.1标准中提供了三条的强制指令和若干条可选择的指令[4],强制指令为旁路指令(BYPASS)、采样/预装指令(SAMPLE/PRELOAD)和外测试指令(EXTEST),而可选指令有内测试(INTEST)、内建自测试指令(RUNBIST)、器件标识指令(IDCODE)、用户代码指令(USERCODE)、组件指令(CLAMP)和高阻指令(HIGHZ)。通过这些指令可以实现扫描链完备性、互连、功能和簇等边界扫描测试,来检测和定位隔离系统电路的开路故障、固定型故障、桥接短路故障等。2总体设计方案根据边界扫描技术基本原理,便携式边界扫描故障诊断仪需要根据被测系统电路的描述文件生成边界扫描测试矢量,然后转换为IEEE1149.1边界扫描测试总线信号自动加载到被测系统中,同时从TDI管脚自动读取边界扫描测试响应进行分析处理,根据边界扫描相应算法作出故障诊断决策及定位隔离,最后通过LCD显示诊断结果。本文采用Altera公司提出的片上可编程系统解决方案将便3携式故障诊断仪进行软硬件协同设计在一片Altera公司的FPGA上,使所设计的电路系统在其规模、可靠性、体积、功耗、上市周期、开发成本、产品维护及硬件升级等多方面实现最优化。即主要把边界扫描故障诊断应用软件、边界扫描测试控制和JTAG协议转换集成在一个可编程片上系统芯片上,使边界扫描测试控制系统达到最优化,大大提高了边界扫描的测试诊断效率。利用FPGA中嵌入的软核CPU作为整个系统的处理器,同时采用uC/OS高实时性的操作系统来处理边界扫描算法、测试矢量的转换、数据的加载和读取、LCD的显示等。同时利用JTAG将被测系统的边界扫描描述文件、电路板网络表等描述文件通过FPGA下载固化到Flash存储器中,供边界扫描测试矢量生成之用。便携式边界扫描故障诊断仪的整体结构示意图如图3所示。图3便携式边界扫描故障诊断仪电路结构示意图3硬件设计3.1边界扫描故障诊断SOPC系统硬件设计在分析边界扫描基本原理和IEEE1149.1协议的基础上设计开发基于Nios的边界扫描故障诊断仪。本文采用Altera公司嵌入软核Nios处理器的FPGA作为载体来实现边界扫描故障诊断仪的SOPC系统。边界扫描故障诊断仪主要实现边界扫描测试矢量的生成、JTAG总线信号发生器、边界扫描故障诊断应用软件、故障显示等功能,是便携式边界扫描故障诊断系统的核心。利用SOPCBuilder[5]创建NIOS软核CPU并进行参数化配置,同时构建储存器、计时器、LCD接口组件、IEEE1149.1测试总线用户逻辑为一体的SOPC系统,边界扫描故障诊断片上可编程系统内部模块配置图如图4所示。Nios软核CPU片上ROM计时器IEEE1149.1测试总线JTAG调试SDRAM控制器LCD接口组件Avalon三态总线桥AVALON总线JTAG标准接口LCD显示SDRAM存储器Flash存储器CycloneⅡ/FPGA图4边界扫描故障诊断SOPC系统内部模块配置图通常的嵌入式系统开发,CPU的硬件构成是不可更改的,同时外围设备的变动也受到CPU的限制。然而基于Nios的嵌入式系统的开发则不同,其中Nios是采用流水线技术和哈佛结构的通用RISC处理器,其大部分指令可以在一个时钟周期内完成。Nios处理器是一种软核CPU,专门针对Altera公司的可编程逻辑器件以及片上可编程系统的设计思想做了相应的优化。本文利用向导式界面灵活定制边界扫描故障诊断系统,NiosⅡ软核处理器为标准型,添加4K字节的指令缓存Cache。同时为了方便调试边界扫描故障诊断系统的软硬件,在处理器模块中添加JTAG调试单元,在SOPC系统软硬件调试成功且能独立运行后,也可以将JTAG调试单元去掉以节省约为2500个LE资源。其中添加的片上ROM、计时器、SDRAM接口控制器、JTAGUART组件是Altera公司免费提供的IP核。除了公司免费提供的组件外,本文根据边界扫描故障诊断的功能需求设计开发IEEE1149.14测试总线IP核用户逻辑,其根据边界扫描测试标准自行开发设计相对独立并可以重复利用的电路模块,具有自己的知识产权,也为SOPC系统新增一个很有实用价值的组件。3.2IEEE1149.1测试总线IP核开发可复用IEEE1149.1测试总线控制器IP核是边界扫描测试控制器的核心,也是整个边界扫描测试平台设计的关键所在。根据IEEE1149.1标准,本文设计的IEEE1149.1测试总线控制器IP核主要功能包括:产生边界扫描测试时钟TCK、对被测系统电路输出TMS控制序列、读取被测系统的测试响应和加载测试矢量、与SOPC系统中的微处理器进行通讯及测试数据交换和在TCK和TMS配合下控制被测系统中TAP控制器完成边界扫描测试的全部过程。在IP核的开发过程中采用IC的设计思想,首先根据功能需求确定外部接口,然后划分内部结构单元,通过实现内部每个小单元的功能,最后组合完成JTAG总线控制IP核的整个设计,JTAG总线控制逻辑内部体系结构图如图5所示。其主要有接口单元负责调解、管理与其它部件接口部分的信号;命令单元负责产生除接口单元外的其它单元的控制信号,使整个JTAG总线控制逻辑进行有序的工作;计数器单元负责提供数据移位的时间标准,在移位操作结束时给出结束信号;为了提高边界扫描测试效率引入TDO缓冲器和TDI缓冲器,其中TDO缓冲单元负责将TDO寄存器中的数据按照IEEE1149.1标准的格式从JTAG接口中的TDO信号线发送到被测系统中,而TDI缓冲单元负责从JTAG接口中的TDI信号线接收数据并转换为并行数据存放到TDI寄存器中;TCK生
本文标题:基于SOPC的便携式边界扫描故障诊断仪
链接地址:https://www.777doc.com/doc-705547 .html