基于JTAG的SoC片上调试系统设计
- 格式:docx
- 大小:37.07 KB
- 文档页数:2
电 路 设 计基于JTAG的SoC芯片调试系统设计虞致国,魏敬和(中国电子科技集团公司第58研究所,江苏无锡214035)摘 要:文章提出了一种基于IEEE 1149.1 JTAG协议的SoC调试接口,该设计支持寄存器查看和设置、CPU调试、IP核调试、边界扫描测试等功能。
对该接口的整体结构框图到设计都进行了详细的阐述。
该接口成功地应用于测控SoC中,具有很好的参考价值。
关键词:系统芯片;JTAG;调试接口;扫描链中图分类号:TN337 文献标识码:A 文章编号:1681-1070(2007)07-0024-04Design of SoC Debug System Based on JTAGYU Zhi-guo, WEI Jing-he(The 58th Research Institute of CETC, Wuxi 214035, China)Abstract: A debug system for SoC based on IEEE 1149.1 JTAG architecture is developed, which can give some powerful functions such as monitoring the registers,debugging and tracing the program flow of CPU,debugging IP core,profiling and scanning test,etc.The design is described from the overview to the detailed module design. This interface is successfully used in Intelligent Measurement and Control SoC.Key words: System-on-Chip; JTAG; debug interface; scan test1 引言随着IC工艺技术的发展和EDA工具提供的强大功能,芯片的设计规模越来越大,目前已进入S o C (System on Chip)的设计时代。
基于JTAG的SoC软硬件协同验证平台设计
虞致国;魏敬和
【期刊名称】《微电子学与计算机》
【年(卷),期】2010(0)10
【摘要】基于JTAG接口,提出了一种以FPGA为基础的SoC软硬件协同验证平台.在验证平台的硬件基础上,开发了调试验证软件,能够完成SRAM的读写、CF卡的读写、串口的收发、程序的下载、及程序复位等功能.利用验证平台的软硬件完成了SoC的IP模块的调试验证及操作系统μClinux的调试验证.实践表明,该验证平台有益于SoC的设计和调试,降低SoC应用系统的开发成本.
【总页数】3页(P160-162)
【关键词】系统芯片;JTAG;FPGA;软硬件协同验证
【作者】虞致国;魏敬和
【作者单位】中国电子科技集团公司第五十八研究所
【正文语种】中文
【中图分类】TN337
【相关文献】
1.基于OR1200的SoC设计软硬件协同仿真验证 [J], 罗秋娴;张贺;罗国成
2.基于事务级的SOC软硬件协同验证系统的设计与实现 [J], 廖永波;阮爱武;朱建华;黄好成;项传银;王林
3.基于混合建模的 SoC软硬件协同验证平台研究 [J], 冯博凌;李平;王忆文
4.面向SoC的软硬件协同验证平台设计 [J], 鲍华;洪一;郭二辉
5.基于PowerPC的SoC软硬件协同验证平台 [J], 许珂;桑胜田;喻明艳
因版权原因,仅展示原文概要,查看原文内容请购买。
现代电子技术Modern Electronics Technique2020年10月15日第43卷第20期Oct.2020Vol.43No.200引言随着半导体电子技术的飞速发展,集成电路芯片的功能越来越复杂,集成度越来越高。
在面对复杂SOC 芯片设计时,芯片的调试手段不仅关系到芯片的质量,还直接影响到研发的效率和进度。
因此在芯片仿真之外,提供高效、强大、方便、可靠的测试手段,已经成为芯片研发成败的关键。
本文在基于8051控制器的芯片硬件设计基础上,提出并实现了一种基于JTAG 接口的嵌入式片内调试系统(On⁃chip Debug System )[1]。
该系统复用系统中8051控制器的JTAG 接口和外部管脚不仅能避开CPU 的访问,不占用CPU 资源,同时提供了多种调试手段,能对控制器及存储器的内部状态进行监测,从而实现芯片的实时调试[2]。
1基于JTAG 的嵌入式片内调试系统1.1嵌入式片内调试系统结构文中提出的嵌入式片内调试系统主要应用于面向基于8051微控制器的多IP 模块集成的SoC 芯片,主要包括JTAG 接口和调试系统控制模块及断点产生模块三个部分。
用户可以通过该调试复用系统的JTAG 接口,完成调试指令的接收、发送、调试标志位的设置等交互信息的通信。
而断点产生模块是属于调试系统的硬件逻辑部分,负责设置识别外部中断、硬件断点、软件断点等。
调试控制模块则管理调试模式的进出、返回,识别指令信息并控制调试指令执行,处理硬件测试平台信息,从而实现对整个芯片的调试和监控。
嵌入式片内调试系统的系统结构[3]如图1所示。
一种基于JTAG 的片内调试系统设计姚霁(西安邮电大学,陕西西安710121)摘要:为了给芯片设计提供一种高效方便的调试方法,提出一种基于JTAG 的片内调试系统。
该系统包括调试系统控制模块、断点产生模块和JTAG 接口。
JTAG 接口实现调试指令的发送与接收;断点产生模块是调试系统硬件调试的逻辑单元;调试系统控制模块则实现断点设置、单步运行、内存调试等功能。
基于JTAG和FPGA的嵌入式SOC验证系统研究与设计的开题报告一、研究背景和意义随着嵌入式系统的发展,SOC(System on Chip)的应用越来越广泛。
由于SOC系统设计比较复杂,集成的功能模块也比较多,因此如何对其中的FPGA(Field Programmable Gate Array)进行验证成为了研究的焦点之一。
在实际应用中,SOC验证的过程需要大量的人力、物力支持,同时还需要较长的时间来完成。
因此,研究一种基于JTAG(Joint Test Action Group)和FPGA的嵌入式SOC验证系统,可以提高SOC设计验证的效率,降低验证成本,具有非常重要的意义。
二、主要研究内容和方法本文针对基于JTAG和FPGA的嵌入式SOC验证系统,主要研究内容包括:1. 设计一种基于JTAG和FPGA的SOC验证系统原型,该原型能够支持常见的SOC功能,如通信、计算等等。
2. 设计JTAG链路,实现对SOC系统内部信号的读取和控制。
3. 设计验证环境,包括仿真器和测试套件,对SOC系统进行功能验证和性能测试。
本文的研究方法主要包括:1. 分析SOC系统的需求和结构,设计基于JTAG和FPGA的嵌入式SOC验证系统。
2. 实现JTAG接口和SOC系统内部信号的控制。
3. 设计测试套件和仿真器,进行SOC系统的功能验证和性能测试。
三、预期研究结果本文研究的主要结果包括:1. 设计出一种基于JTAG和FPGA的SOC验证系统原型,能够满足常见的SOC功能需求。
2. 实现JTAG接口和SOC系统内部信号的控制和读取。
3. 设计测试套件和仿真器,对SOC系统进行功能验证和性能测试,验证系统的可行性和正确性。
四、研究的创新点本文的创新点主要体现在以下几个方面:1. 设计了一种基于JTAG和FPGA的SOC验证系统,改善了传统SOC验证方法的缺点。
2. 通过实现JTAG接口和SOC系统内部信号的控制和读取,增强了SOC系统的可调试性。
26卷 第1期2009年1月微电子学与计算机M ICROEL ECTRON ICS &COMPU TERVol.26 No.1January 2009收稿日期:2008-03-07基金项目:国家“八六三”计划项目(2006AA01Z415)一种基于J TA G 的SOC 测试电路设计及实现郑晓光,白国强(清华大学微电子学研究所清华信息技术国家实验室(筹),北京100084)摘 要:提出了一种基于J TA G 的新的测试电路设计思路.通过扩展J TA G 指令,可以利用J TA G 通信协议向SOC 芯片中下载自定义的测试指令,并读回测试的最终结果.该方法可以对SOC 内部的IP 及存储器进行充分的功能测试,测试过程可灵活配置,可以快速定位测试中出现的问题.关键词:J TA G;TAP ;SOC ;测试;可复用IP中图分类号:TN407 文献标识码:A 文章编号:1000-7180(2009)01-0187-03A SOC T est Circuit Design and ImplementB ased on JTAGZHEN G Xiao 2guang ,BA I Guo 2qiang(Institute of Microelectronics of Tsinghua University ,Beijing 100084,China )Abstract :In this paper ,a new test method was presented.This method was based on J TA G protocol.The J TA G in 2structions were extended and the extended test instructions can be download to SOC throu gh J TA G.The test results can be also feedback through J TA G.The IP and memory in SOC design can be well tested.The test process can be configured flexibly ,and the problem occurred in test can be fixed ra pidly.K ey w ords :J TA G;TAP ;SOC ;test ;reusable IP1 引言联合测试行动组(Joint Test Action Group ,J TA G )开发的IEEE1149.1是IEEE 的一个测试方面的标准.文中利用一个SOC 设计的实例,介绍了如何应用J TA G 测试接口对芯片内部的各个复用的IP 及自行设计的模块进行测试.文中的测试方案利用很少的测试管脚,对芯片内的CPU 、存储器、加密协处理器都进行了完整的功能测试.因为只利用5个测试管脚即可完成所有测试,本文设计的电路通过编写简单的驱动程序,可以利用PC 机的并口对芯片进行绝大部分模块的测试[124].文中介绍的SOC 测试方法还具有很好的可复用性,经过简单移植,可复用于其他SOC 设计中,这在很大程度上提高了测试设计的效率.2 J TA G 标准简介开发J TA G 标准的主要用途是为了对PCB 板上的芯片进行芯片功能测试和与其他芯片的互连接性测试.J TA G 测试逻辑结构中应包括四部分:(1)测试访问口(Test Access Port ,TAP );(2)TAP 控制器;(3)指令寄存器;(4)一组测试数据寄存器.图1是J TA G 测试逻辑的示意图.测试访问口包括4个必选信号:TC K (测试时钟)、TMS (测试模式选择)、TDI (测试数据输入)和TDO (测试数据输出).另外,测试访问口还包括一个可选信号TRST (测试复位).TAP 控制器实现了一个具有16状态的状态机,由TMS 信号控制状态机的状态转移.IR (指令寄存器)和DR (数据寄存器)都分别由移位级和锁存级两级构成.TAP 状态机可以分别选中IR 或DR图1 J TA G 测试逻辑示意图进行操作.在Capture 状态下,IR (或DR )锁存级寄存器的内容被捕获到移位级.在Shift 状态下,TDI信号上的数据被串行移入IR (或DR )寄存器的移位级,同时移位级中的内容通过TDO 信号串行移出.状态机会保持多拍的Shift 状态,直到所需的数据被移入或移出移位级.在Update 状态下,Shift 状态下串行移入移位级的内容被一次性更新到锁存级.移位级与外部通信,锁存级产生芯片内部逻辑所需的控制或时序信号.通过控制TAP 状态机在几个状态间转换,就可以对芯片内部的模块进行测试.3 SOC 设计实例文中使用的SOC 设计实例是一款应用于高安全性领域的加密芯片.加密芯片中包含了8051CPU 、存储器、通信接口、若干连接在SFR 总线上的外设.其中,存储器由1块32K B 的O TP ROM (One Time Programmable ROM )、1块32K B 的EEP 2ROM 、2块共10K B 的RAM 构成.通信接口为符合ISO 7816协议的智能卡串行通信接口.外设包括真随机数、存储器管理单元(MMU )以及多个加密协处理器模块(3DES 、SHA 21、RSA 、ECC ).其中,CPU 、3DES 是直接复用的成熟IP.图2是SOC 芯片的结构图.图2 SOC 芯片结构图4 测试方案在SOC 设计实例中,包含了多个数字模块和多个存储器,数字模块中,还有复用的IP.可测性设计包括结构性测试和功能测试.结构性测试即通常说的DF T ,可以通过EDA 工具进行全扫描链的插入及测试向量的生成,具体方法可以参考EDA 的帮助文档,这里不再详细说明.结构性测试可以对生产故障进行检测,但无法对芯片功能进行测试,所以除了结构性测试,还需要设计测试电路对SOC 电路的功能进行测试.文中介绍的测试方案对芯片功能进行测试.对图2应包含的功能测试项有:EEPROM 的测试、RAM 的测试、3DES/RSA/ECC/SHA -1等加密协处理器的加解密测试、TRN G 测试、ISO 7816通信接口测试.另外,由于O TP ROM 是仅可一次编程的器件,而且O TP 中存放的是对最终产品有用的COS ,需要通过测试电路对O TP ROM 进行COS 的下载及读出校验.这是测试电路除测试功能外承担的又一个很重要的功能.理论上,在需要测试的模块端口上分别插入DR 扫描链(即J TA G 电路中的数据寄存器),将所有DR 并联接入J TA G 电路中,即可通过J TA G 协议将每个模块的测试激励输入,运行该模块,将结果“Capture ”到扫描链中,并通过J TA G 接口输出到芯片外部,这样就可对不同的模块分别进行测试.可是对测试项的分析可以看出,测试项很多,逐个插入DR 扫描链会使测试电路非常复杂.对各个功能测试项进行分析可以发现,所有存储器都可以通过M EM 总线进行访问,所有外设(包括MMU 、TRN G 、所有加密协处理器、ISO 7816串口)都可以通过SFR 总线进行访问.M EM 总线和SFR 总线上分别包括对存储器和SFR 的地址信号、数据信号以及读写控制信号.所以,只要把M EM 总线和SFR 总线上分别插入DR ,即可对上述所有的测试项进行测试.因为在大规模量产时需要对每个芯片的O TP ROM 进行COS 的下载及读出校验,考虑到测试时间的成本,增加一条DR 直接针对O TP ROM 进行操作,而不用通过M EM 总线,这样可以加快COS 下载及校验的效率.所以,该测试电路方案共需要增加三个J TA G 测试指令及三条DR.此外,加入测试电路后不能影响原有电路的功能,因此J TA G 指令上电复位值应为Bypass 指令,此时所有的模块连接关系与图2所示相同,为正常881微电子学与计算机2009年工作模式.当需要对某测试项进行测试时,需要先设置J TA G 的IR 为相应的测试指令,J TA G 电路选通对应的DR ,同时,被测试的模块与系统断开,接受来自J TA G 扫描链输入的激励,运行后,DR 将模块输出的结果通过J TA G 接口送出芯片.这样就实现了不同模块的可隔离性、可控制性和可观察性.基于上述测试方案实现的测试电路,除了可以利用A TE (Automation Test Equipmen ,自动测试机)对整个芯片进行测试,还可以利用PC 的并口进行测试.通过编写简单的驱动程序,PC 并口可通过J TA G 通信协议向SOC 芯片中下载自定义的测试指令,并读回测试的最终结果.图3给出了利用PC 对SOC 芯片进行测试的系统图.图3 利用并口测试SOC 芯片利用PC 进行测试还有一个好处:当如此复杂的SOC 芯片首次投片测试时,问题一般会比较多,通常A TE 的资源又比较紧张,用PC 进行测试可以方便初次测试时对出现的问题进行详细的调试分析,直至将问题最终定位[5].5 测试设计的实现文中提出的测试方案只增加了5个测试管脚和少量测试电路逻辑,即可实现基于IP 复用的SOC 芯片的测试,达到很高的功能覆盖率.该测试方案已经在实际芯片中进行了Verilog 代码实现,实现了4条J T AG 指令,包括3条测试指令和1条Bypass 指令.对存储器(EEPROM 、OTP 、RAM )测试、COS 程序下载、加密协处理器测试都进行了仿真验证,功能正确.整个SOC 设计还在实际的FP G A 板和芯片中分别进行了验证.FP G A 中的O TP ROM 用RAM 来模拟实现,利用测试电路提供的COS 下载功能,可以方便COS 的开发与调试.如果没有测试电路提供的COS 下载功能,每次COS 修改都需要重新生成FP G A 配置文件,并反复进行FP G A 烧写,整个过程需要约1小时.而使用测试电路的下载功能,仅需几秒钟即可实现COS 下载,这是在利用FP G A 开发COS 时J TA G 的又一应用.通过PC 的并口驱动5个测试管脚,提供J TA G 协议需要的时序,实现了对芯片的测试.并口驱动程序用C ++语言实现.在WindowsXP 环境下,需要先安装port95nt 驱动程序,利用动态链接库DL Por 2t IO.dll 提供的外部函数接口来操作PC 并口.表1以RAM 的读写测试为例,给出测试流程,其他测试项的测试流程以此类推.表1 RAM 读写测试流程步骤写RAM读RAM①设置IR 为MEM 测试模式设置IR 为MEM 测试模式②DR Capture 状态DR Capture 状态③DR Shift 状态设置DR 写RAMDR Shift 状态设置DR 读RAM④DR Update 状态完成写RAM 操作DR Update 状态更新读操作到锁存级⑤—DR Capture 状态捕获RAM 数据⑥—DR Shift 状态输出RAM 数据⑦—DR Update 状态完成读操作写RAM 流程中,步骤③将要写入的RAM 地址、数据、有效的写信号设置到DR 中,步骤④将RAM 地址、数据和有效的写信号更新到锁存级并运行,即可完成写RAM 操作.读RAM 流程中,由表1可知,读RAM 操作要比写RAM 操作多一轮DR 操作.对各模块进行测试,部分测试项的测试时间如表2所示.表2 测试时间测试项消耗时间10K B RAM 逐地址读/写测试<10s 3DES 协处理器测试<2s RSA256位加/解密运算测试1s ECC 加/解密运算测试8s SHA 21加/解密运算测试<1s因为PC 的并口速度很慢,加上驱动程序软件的开销,并口提供的TC K 时钟频率最快只能达到100多Kbps.如果用专门的A TE ,可以用高至5M 的速度进行测试,测试时间还会大大缩短.6 结束语文中利用J TA G 协议及扩展的自定义测试指(下转第192页)981 第1期郑晓光,等:一种基于J TA G 的SOC 测试电路设计及实现同过滤防治机制,仿真实验证明,该方法可以有效地发挥作用,防止受污染文件传播.参考文献:[1]Christin N,Weigend A S,Chuang J.Content availability,pollution and poisoning in peer to peer file sharing networks[C]//Proceedings of ACM E-Commerce Conference.USA:Califarnia,2005:68-77.[2]Liang J,Kumar R,Xi Y,et al.Pollution in P2P file shar2ing systems[C]//Proceedings of INFOCOM’A: Brooklyn,2005:1174-1185.[3]Walsh K,Sirer E G.Fighting peer to peer SPAM and de2coys with object reputation[C]//Proceedings of ACM SIGCOMM’A:Dhiladelphia,2005: 138-143.[4]Lee U,Choi M,Cho.J,et al.Understanding pollutiondynamics in P2P file sharing[C]//Proceedings of IPTPS’06.Los Angeles,2006.[5]Liang J,Naoumov N,Ross K W.The index poisoning at2tack in P2P file-sharing systems[C]//Proceedings of IN2 FOCOM’06.S pair:Barcelona,2006.[6]黄光球,靳峰,彭绪友.基于兴趣度的协同过滤商品推荐系统模型[J].微电子学与计算机,2005,22(3):5-8. [7]姜群,王越.基于最大熵的分布估计算法[J].微电子学与计算机,2007,24(11):73-76.[8]林天峰.基于最大熵原理的网络流量预测综合模型[J].微电子学与计算机,2006,23(8):147-149.作者简介:王新程 男,(1973-),硕士,讲师.研究方向为网络、远程教育.杨蓉蓉 女,(1977-),讲师.研究方向为网络、电子商务.(上接第189页)令,实现了基于IP复用的SOC设计的测试.测试电路简单,硬件代价小,且对功能测试达到很好地覆盖,测试时间满足产品测试的需要.由于J TA G协议的通用性及可扩展性,除了测试,文中提出的方案还可以实现在FP G A上调试COS,对实际芯片的COS 下载等功能.文中提出的测试方案及其代码实现具有良好的可移植性,对SOC设计具有普遍的参考价值.参考文献:[1]K osonocky S V,Bright A,Warren K,et al.Designing atestable system on a chip[J].VL SI Test Symposium,16thIEEE,1998:2-7.[2]陆正毅,孙承绶,程君侠.全兼容IEEE1149.1的MIPSCPU CORE可测性设计[J].微电子学与计算机,2004, 21(7):6-9.[3]曾平英,李兆麟,毛志刚.ASIC可测试性设计技术[J].微电子学,1999,29(3):149-153.[4]梁宇,韩奇,魏同立.SOC的可测性设计[J].固体电子学研究与进展,2001,21(3):246-252.[5]刘洋,吴王华,周晓方,等.一种基于J TA G的软硬件协同SOC调试接口[J].微电子学与计算机,2007,24(11): 34-37.作者简介:郑晓光 男,(1978-),硕士.研究方向为SOC可测性设计.291微电子学与计算机2009年。
构建系统级JTAG链调试电路第一部分: JTAG技术介绍JTAG技术俗称边界扫描技术,是近代发展起来的高级测试技术。
JTAG主要有以下几个方面应用:1).互连测试。
判断互连线路是否存在开路、短路或固定逻辑故障。
2).可编程器件的程序加载。
如FLASH、CPLD、FPGA等器件的加载。
3).可编程器件的在线调试。
如FPGA,DSP等器件在线debug。
4).电路采样。
器件正常工作时,对管脚状态进行采样观察。
JTAG测试一般使用标准的TAP(Test Access Port)连接器,如下图所示。
A).1号脚为TCK。
JTAG测试参考时钟,由JTAG主控制器提供给被测试器件,该信号需要下拉处理,下拉电阻不能小于330ohm,一般选择1Kohm。
之所以TCK要下拉处理,是因为JTAG 测试规范规定:在TCK为低电平时,被测试器件的TAP状态机不得发生变化。
所以,默认状态下,TCK必须为低电平,使TAP状态机保持稳定。
最小驱动电流为2mA。
B).2号脚为GND。
使用时直接连单板的GND即可。
C).3号脚为TDO。
JTAG测试数据输出管脚,JTAG主控制器从此管脚输出测试数据给被测试器件,JTAG主控制器的TDO接被测试器件的TDI。
TDO在TCK的下降沿输出。
JTAG测试规范没有规定如何处理TDO管脚,一般情况下悬空即可,也可以通过4.7Kohm电阻上拉到VCC,已增加驱动TDO的驱动能力。
D).4号脚为VCC。
连接电源,一般为3.3V/2.5V/1.8V等,具体看芯片说明。
在这里特别说明下,在实际使用中,很容易将2号脚的GND与此VCC接反,导致JTAG不可用,所以,大家在设计审查时一定要特别关注这个地方。
以免因低级错误导致设计改板。
E).5号脚为TMS。
TMS是Test Mode Select的缩写,作用是进行测试模式选择,由JTAG主控制器输出给被测试器件。
被测试器件在TCK的上升沿才TMS信号进行采样,根据采样结果来判断是正常模式还是JTAG测试模式(TMS=“0”为正常模式,TMS=“1”为JTAG模式)。
一种基于JTAG的处理器调试软件架构的设计与实现开题报告一、选题背景与意义JTAG(Joint Test Action Group)是一种用于测试和调试数字电路的技术和标准。
它通过在芯片引脚上设置调试电路,实现针对硬件进行非侵入式调试。
JTAG接口常常与处理器的调试相关,可以用于调试处理器内部的寄存器、内存、指令执行等。
目前,许多处理器的调试都依赖于JTAG接口。
但是,在JTAG接口下进行调试时,需要使用复杂的调试工具或调试软件,使得调试工具的成本较高,并且调试软件的功能和效率还有待提高。
因此,本文提出了一种基于JTAG的处理器调试软件架构的设计与实现,旨在探索如何通过改进JTAG调试软件,提高调试工具的效率和实用性,优化调试过程的体验。
二、研究目标与内容1. 研究JTAG调试软件的实现原理和机制,探索其优点和局限性;2. 分析现有JTAG调试软件的特点与不足,总结经验教训;3. 提出一种基于JTAG的处理器调试软件架构的设计与实现方案。
该方案将注重调试软件的可扩展性和兼容性,提高其功能性和效率;4. 实现基于JTAG的处理器调试软件架构,对其进行测试和评估,验证其实用性和可行性。
三、研究方法1. 文献综述:通过查阅相关文献和调研市场,了解JTAG调试软件的现有实现机制和局限性,归纳总结其发展历程和趋势;2. 方案设计与实现:基于对现有JTAG调试软件的分析和总结,提出一种新的设计方案,并通过编程实现。
该设计方案旨在提高调试软件的功能性和效率,优化调试过程的体验;3. 测试评估:使用各种测试工具和测试用例对该方案进行测试评估,检验其实用性和可行性;4. 分析总结:根据测试结果,对方案进行总结分析,提出改进和完善意见。
同时,将研究成果与其他相关研究进行对比和分析,发现不足并加以改进。
四、预期研究成果与意义1. 提出基于JTAG的处理器调试软件架构的设计方案,在实际应用中取得改进和优化效果,提高调试工具的实用性和效率;2. 验证提出方案的实用性和可行性,得到正确的测试结果,为调试技术和芯片设计提供更加准确的调试解决方案;3. 基于对现有JTAG调试软件的研究和设计,总结归纳出调试软件的设计原则和应用经验,对该领域的进一步研究和应用具有指导和借鉴作用。
一种SoC片上调试与可测性的整合设计虞致国;魏敬和【摘要】随着SoC的复杂度和规模的不断增长,SoC的片上调试与可测性变得越来越困难和重要.片上调试与可测性都是系统芯片设计的重要组成部分.文章针对某款32位SoC,充分利用CPU核原有的调试结构,提出一种可测试系统与调试系统的一体化结构设计,并针对不同的模块利用不同的测试策略.基于JTAG端口,该结构能够进行系统程序的调试、边界扫描的测试、扫描链的测试、嵌入式SRAM的内建自测试,同时有效地降低了电路逻辑规模,实现了在测试覆盖率和测试代价之间的一个有效折衷.【期刊名称】《电子与封装》【年(卷),期】2010(010)002【总页数】4页(P20-22,34)【关键词】片上调试;JTAG;系统芯片;可测性设计;扫描链【作者】虞致国;魏敬和【作者单位】中国电子科技集团公司第五十八研究所,江苏,无锡,214035;中国电子科技集团公司第五十八研究所,江苏,无锡,214035【正文语种】中文【中图分类】TP306;TN4071 引言在开发复杂SoC应用时,芯片的调试手段直接关系到开发的效率和进度,决定了应用的质量。
没有调试硬件支持的调试已经不能胜任复杂SoC的应用,SoC必须提供高效、可靠、强大的调试支持[1~3]。
另一方面,测试是集成电路生产流程中必不可少的一个环节,在设计时一般要采用可测性设计。
然而,可测性设计与调试结构设计一般是分别进行的。
由于测试逻辑和调试逻辑都具有相当的逻辑量,约占系统逻辑的5%~25%[4]。
因此,所需额外硬件资源都较大。
目前,芯片的调试接口一般是基于JTAG标准而设计的。
基于JTAG的可测性设计与片上调试设计相互独立又相互联系,二者可通过JTAG接口进行部分整合[5]。
本文基于已有的SoC提出了一种片上调试与可测性设计的一体化设计,有效整合了调试与可测性的接口。
它既具有完整的片上调试能力,又能满足可测性要求,提供了SRAM内建自测试和边界扫描测试的能力。
基于SOPC的通用型JTAG调试器的设计SOPC技术的进展,给器指出了新的进展方向。
所谓SOPC技术,就是指用可编程技术将囫囵系统放在一块硅片上。
在传统设计中级互相自立的各个系统被集成到一块芯片中。
SOPC的可重用性是一种先进的设计思想。
为了降低用户的负担,避开重复劳动,将一些在数字电路中常用但比较复杂的功能模块,比如SDRAM控制器等,设计成可修改参数的模块,用户在设计系统时可以挺直调用这些模块。
这些特定的功能模块被称为IPcore(学问产权核)。
因为IPcore通常是很成熟的,因此降低了开发风险。
本文利用SOPC技术的特点,设计一种通用型调试器。
按照待调试目标板的CPU型号,将相应的调试IPcore和其他通用IPcore一起编译生成一个调试系统,下载到FPGA上,实现一个通用型调试器。
在用法同一个硬件系统的状况下,可以挑选不同的调试IPcore来调试不同的CPU,而不同的IPcore可以便利的相互替换。
该办法在设计灵便性、开发成本、开发周期、工作性能等方面都具有优越性。
详细的实现采纳了Cyclone开发板和开发套件。
1 JTAG调试原理目前在线仿真调试器中用法最多的调试办法都是基于JTAG标准。
1986年,联合测试行动组发表了最早的边界扫描测试规范(Boundary Scan Testing),经不断改进,1990年被批准为IEEE Std 1149.1a标准,简称JTAG标准。
现在大多数复杂的IC芯片都带有JTAG调试接口。
本文所研究的调试办法也基于JTAG标准。
下面首先容易介绍一下JTAG 调试原理。
JTAG调试原理的基础是边界扫描测试。
它通过在芯片的每个I/0脚附加一个边界扫描单元(BoundaryScan Cell,BSC)以及一些附加的测试控制规律来实现。
每个BSC有两个数据通道:一个是测试数据通道——测试数据输入TDI(Test Data Input)、测试数据输出TD0(Test Data 0utput);另一个是正常数据通道——正常数据输入NDI(Normal Data第1页共6页。
一种基于JTAG的处理器调试软件架构的设计与实
现中期报告
本报告介绍了一种基于JTAG的处理器调试软件架构的设计与实现的中期进展情况。
首先,我们介绍了JTAG的基本原理和作用,以及其在处理器调试中的应用。
然后,我们提出了一种面向对象的软件架构设计方案,包括调试器核心模块、JTAG驱动模块、处理器模型模块、调试命令解析模块等。
此外,我们还介绍了调试器的基本功能和交互界面设计。
我们已经完成了调试器核心模块的实现,包括连接JTAG设备、初始化处理器、读写处理器寄存器和内存等基本功能。
我们还实现了基本的调试命令解析模块,包括断点设置、单步执行、查看变量值等常用调试功能。
在处理器模型模块的实现上,我们选择了ARM Cortex-M系列作为目标处理器,实现了其核心部件的仿真和调试。
下一步,我们将继续完成JTAG驱动模块的实现,目前已经完成了MSP430和ARM Cortex-M系列处理器的JTAG驱动代码编写。
同时,我们还会继续开发调试命令解析模块,增加更多的调试功能。
最终,我们将实现交互界面,通过图形化界面来方便用户进行处理器的调试工作。
总之,我们已经取得了不错的进展,并且我们相信我们的设计与实现能够达到预期目标,为开发人员提供一个高效、可扩展的处理器调试工具。
JTAG功能及系统设计标签:JTAG(27)本内容向大家提供了JTAG功能及系统设计JTAG也是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试。
现在多数的高级器件都支持JTAG协议,如DSP、FPGA器件等。
标准的JTAG接口是4线:TMS、TCK、TDI、TDO,分别为模式选择、时钟、数据输入和数据输出线。
相关JTAG引脚的定义为:TCK 为测试时钟输入;TDI为测试数据输入,数据通过TDI引脚输入JTAG接口;TDO为测试数据输出,数据通过TDO引脚从JTAG接口输出;TMS 为测试模式选择,TMS用来设置JTAG接口处于某种特定的测试模式;TRST为测试复位,输入引脚,低电平有效。
GNDTI还定义了一种叫SBW-JTAG的接口,用来在引脚较少的芯片上通过最少的利用引脚实现JTAG接口,它只有两条线,SBWTCK,SBWTDIO。
实际使用时一般通过四条线连接,VCC,SBWTCK,SBWTDIO,GND,这样就可以很方便的实现连接,又不会占用大量引脚。
JTAG最初是用来对芯片进行测试的,基本原理是在器件内部定义一个TAP(Test Access Port测试访问口)通过专用的JTAG测试工具对内部节点进行测试。
JTAG测试允许多个器件通过JTAG接口串联在一起,形成一个JTAG链,能实现对各个器件分别测试。
现在,JTAG接口还常用于实现ISP(In-System Programmable;在线编程),对FLASH等器件进行编程。
JTAG编程方式是在线编程,传统生产流程中先对芯片进行预编程后再装到板上因此而改变,简化的流程为先固定器件到电路板上,再用JTAG编程,从而大大加快工程进度。
JTAG接口可对PSD芯片内部的所有部件进行编程。
摘 要随着片上系统(System-on-Chip,SOC)中IP核的大量使用,使得IP核间的互连总线数量大幅增加,由此引发的信号完整性(Signal integrity, SI)问题成为IC设计和测试工程师必须要面对的问题之一。
本文在结合IEEE1149.1标准的基础上,利用半跳变(Half Transition,HT)模型的基本思想,设计并实现基于JTAG的信号完整性(Signal Intergity,SI)测试系统架构。
主要工作包括设计TAP控制器、数字边界扫描单元、矢量生成型边界扫描单元(PGBSC)及测试寄存器;设计了系统软件验证方案,并给出具体的验证流程。
本设计的实现思路:在兼容1149.1的基础上,通过自定义两条SI指令,实现JTAG对信号完整性测试的支持。
论文从串扰机理、故障模型、软件设计等方面详细介绍了基于JTAG的信号完整性测试架构的各模块实现,并对系统进行功能验证。
本设计分别在Modelsim SE 6.2b和QuartusII 7.2环境下进行仿真验证,从仿真的结果来看各模块实现了其设计功能,构建的测试系统在兼容1149.1的基础上,还适用于高速互连信号完整性测试。
系统设计完整而清晰的呈现了基于JTAG的信号完整性测试的设计流程,对业界的信号完整性测试方案能够提供一定的理论基础和技术支持。
关键词:JTAG;片上系统;半跳变故障;信号完整性ABSTRACTThe number of IP cores in a System-on-Chip (SOC)is rapidly growing. Which leads to a significant increase in the number of interconnects. The signal integrity problems becomes a major concern for IC designer and test engineers.With intensive study on IEEE std1149.1, by using the basic idea of HTF(Half Transition fault), and an architecture for signal integrity test based on extended JTAG is designed and realized, which includes the TAP controller, the data boundary module, the PGBSC module and test register; A design idea of software based on the architecture are constructed and a specific designing schemes are given.The implementation of the idea is that,to fully comply with IEEE1149.1 standard,two new instructions have been added to extend the function of boundary-scan architecture and provide the support to SI testing.This paper introduce the details of the JTAG signal integrity testing implemations, which includes the crosstalk mechanism, fault model, software design, and functional verification system has been carried out.The design scheme is simulated on Modelsim SE 6.2b and QuartusII 7.2 environments. Experimental results show that the hardware modules has achieved its functions, to fully comply with the 1149.1 standard, the architecture is suitable for high-speed signal integrity testing. The entire design cycle of the test for signal integrity is completely and clearly presented, which provide a theoretical basis and technical support for industy.Key words:JTAG;SOC;HTF;Signal integrity目 录摘 要I ABSTRACT II 第一章引言1§1.1互连信号完整性问题的研究背景 (1)§1.2边界扫描技术 (2)§1.3国内外研究现状 (3)§1.3.1 SI故障模型的研究现状 (3)§1.3.2 SI测试工具及设备 (4)§1.4论文主要研究内容及章节安排 (4)第二章传输线理论与边界扫描技术原理6§2.1传输线理论 (6)§2.1.1 传输线理论 (6)§2.1.2 传输线结构及基本特征参数 (7)§2.2串扰的定义和基本特性 (9)§2.2.1 容性耦合 (10)§2.2.2 感性耦合 (12)§2.3串扰特性 (12)§2.4串扰的故障模型及测试研究 (13)§2.4.1 MA模型 (13)§2.4.2 多跳变(MT)故障模型 (14)§2.4.3 HT故障模型 (15)§2.4.4 MDSI故障模型 (16)§2.5边界扫描技术和IEEE1149.1 (17)§2.5.1 边界扫描技术的基本原理 (18)§2.5.2 边界扫描技术的硬件结构 (18)§2.6本章小结 (19)第三章 基于JTAG的互连SI测试系统设计 20§3.1基于JTAG的互连SI测试架构设计 (20)§3.2TAP控制器的设计 (21)§3.3数字边界扫描单元设计 (22)§3.4矢量生成型的边界扫描单元的设计 (24)§3.4.1 HT模型矢量生成设计的原理 (24)§3.4.2 HT模型矢量及Seed生成的硬件电路设计 (25)§3.4.3 矢量生成型边界扫描单元设计 (27)§3.5可观测的信号完整性测试单元(OBSC) (29)§3.6内部寄存器的设计及仿真 (30)§3.6.1 指令寄存器的设计 (30)§3.6.2 旁路寄存器(BR) (31)§3.7本章小结 (32)第四章基于JTAG的互连SI测试系统验证及仿真 34§4.1新增测试指令 (34)§4.2SI互连测试架构的软件验证及仿真 (34)§4.2.1 SI互连测试矢量产生型架构的设计及仿真 (35)§4.2.2 可观测SI测试架构的设计及仿真 (36)§4.3新增测试指令加载及仿真 (38)§4.3.1 新增测试指令的加载过程 (38)§4.3.2 仿真结果 (39)§4.4SI测试模块设计 (40)§4.5时钟分析 (44)§4.5本章小结 (44)第五章总结和展望 45§5.1论文工作总结 (45)§5.2进一步的研究工作 (45)参考文献 47致谢50作者攻读硕士研究生期间主要论文成果 51附录A 测试结构部分代码 52附录B SI互连测试系统部分综合图 57第一章 引言随着芯片特征尺寸的不断缩小和工作时钟频率的不断提高,片上系统(System-on-Chip,SOC)设计中IP核间互连线的寄生电容、电感、交叉耦合对电路的性能影响逐渐增大, SI在某种程度上成为高速电路设计与分析的瓶颈[1][2]。
基于JTAG的SoC片上调试系统设计
陈锐
【期刊名称】《电子设计工程》
【年(卷),期】2015(000)003
【摘要】文章提出了一种基于JTAG的SoC片上调试系统设计方法,该系统主要包括JTAG接口和片上调试模式控制单元。
通过执行不同的操作指令,该片上调试系统可实现断点设置、单步执行、寄存器和存储器内容监控、在线编程以及程序运行现场设置等调试功能。
文章同时说明了片上调试系统的工作原理和硬件架构。
%The paper presents the design of On-chip debug system based on JTAG for SoC, the system mainly includes JTAG interface and On-chip debug mode control unit. By executing different debugging instructions , On-chip debug system can perform debug functions, for example, setting breakpoints, single step execution, monitoring the registers and memory, programming on line and configuring microcontroller's execution state. Meanwhile , this paper expatiates working principle and hardware structure of the On-chip debug system.
【总页数】3页(P154-156)
【作者】陈锐
【作者单位】空间电子信息技术研究院空间通信与测控技术研究所,陕西西安710000
【正文语种】中文
【中图分类】TN-402
【相关文献】
1.基于JTAG和FPGA的嵌入式SOC验证系统设计与实现 [J], 窦建华;孙强;陆俊峰
2.基于JTAG的片上调试器与调试系统的设计实现 [J], 常志恒;肖铁军;史顺波
3.一种基于JTAG的SoC片上调试系统的设计 [J], 虞致国;魏敬和
4.基于JTAG标准的处理器片上调试的分析和实现 [J], 金辉;华斯亮;张铁军;侯朝焕
5.一种基于JTAG接口的片上调试与性能分析方法 [J], 高瑛珂;王琪;李泉泉;张铁军;侯朝焕
因版权原因,仅展示原文概要,查看原文内容请购买。