boundary scan技术资料.docx
- 文档编号:23985479
- 上传时间:2023-05-23
- 格式:DOCX
- 页数:37
- 大小:457.15KB
boundary scan技术资料.docx
《boundary scan技术资料.docx》由会员分享,可在线阅读,更多相关《boundary scan技术资料.docx(37页珍藏版)》请在冰豆网上搜索。
boundaryscan技术资料
边界扫描(Boundaryscan)是一项测试技术,是在传统的在线测试不在适应大规模,高集成电路测试的情况下而提出的,就是在IC设计的过程中在IC的内部逻辑和每个器件引脚间放置移位寄存器(shiftregister).每个移位寄存器叫做一个CELL。
这些CELL准许你去控制和观察每个输入/输出引脚的状态。
当这些CELL连在一起就形成了一个数据寄存器链(dataregisterchain),我门叫它边界寄存器(boundaryregister)。
除了上面的移位寄存器外,在IC上还集成测试访问端口控制器(TAPcontroller),指令寄存器(Instructionregister)对边界扫描的指令进行解码以便执行各种测试功能。
旁路寄存器(bypassregister)提供一个最短的测试通路。
另外可能还会有IDCODEregister和其它符合标准的用户特殊寄存器。
下图是一个典型的具有边界扫描功能的IC。
此主题相关图片如下:
边界扫描器件典型特征及边界扫描测试信号的构成。
如果一个器件是边界扫描器件它一定有下面5个信号中的前四个:
1.TDI (测试数据输入)
2.TDO(侧试数据输出)
3.TMS(测试模式选择输入)
4.TCK(测试时钟输入)
5.TRST(测试复位输入,这个信号是可选的)
TMS,TCK,TRST构成了边界扫描测试端口控制器(TAPcontroller),它负责测试信号指令的输入,输出,指令解码等,TAPcontroller是一个16位的状态机,
边界扫描测试的每个环节都由它来控制,所以要对TAPcontroller有一个比较清楚的了解。
在后续的文章中还会向大家介绍边界扫描的其它方面。
边界扫描为开发人员缩短开发周期,并且提供良好的覆盖率和诊断信息。
在不了解
IC内部逻辑的情况下快速的开发出优秀的测试程序。
在未来的测试领域,边界扫描将会得到广泛的应用。
摘要:
通过JTAG实现对Flash在线编程。
首先,介绍JTAG的定义、结构及引脚的定义,并阐述JTAG状态机的工作原理。
然后,介绍JTAG口的边界扫描寄存器,给出实现JTAG在线写Flash的电路,和如何通过JTAG实现Flash的编程及程序流程图。
关键词:
JTAGFlash在线编程
随着嵌入式技术的发展,在一些高端的掌上设备中,都使用了Flash芯片,如Compaq的iPAQ、联想的天祺系列等产品。
但对于研发人员来说,在开发阶段需要大量的程序调试,就意味着要对Flash进行擦除和改写的工作,因此,如何对Flash进行在线编程是问题的关键所在。
本文介绍一种通过JTAG对Flash进行的在线编程方法。
1JTAG简介
JTAG(JointTestActionGroup)是1985年制定的检测PCB和IC芯片的一个标准,1990年被修改后成为IEEE的一个标准,即IEEE1149.1-1990。
通过这个标准,可对具有JTAG口芯片的硬件电路进行边界扫描和故障检测。
图1TAP控制器的状态机框图
具有JTAG口的芯片都有如下JTAG引脚定义:
TCK——测试时钟输入;
TDI——测试数据输入,数据通过TDI输入JTAG口;
TDO——测试数据输出,数据通过TDO从JTAG口输出;
TMS——测试模式选择,TMS用来设置JTAG口处于某种特定的测试模式。
可选引脚TRST——测试复位,输入引脚,低电平有效。
含有JTAG口的芯片种类较多,如CPU、DSP、CPLD等。
JTAG内部有一个状态机,称为TAP控制器。
TAP控制器的状态机通过TCK和TMS进行状态的改变,实现数据和指令的输入。
图1为TAP控制器的状态机框图。
2JTAG芯片的边界扫描寄存器
JTAG标准定义了一个串行的移位寄存器。
寄存器的每一个单元分配给IC芯片的相应引脚,每一个独立的单元称为BSC(Boundary-ScanCell)边界扫描单元。
这个串联的BSC在IC内部构成JTAG回路,所有的BSR(Boundary-ScanRegister)边界扫描寄存器通过JTAG测试激活,平时这些引脚保持正常的IC功能。
图2为具有JTAG口的IC内部BSR单元与引脚的关系。
3JTAG在线写Flash的硬件电路设计和与PC的连接方式
以含JTAG接口的StrongARMSA1110为例,Flash为Intel28F128J3216MB容量。
SA1110的JTAG的TCK、TDI、TMS、TDO分别接PC并口的2、3、4、11线上,通过程序将对JTAG口的控制指令和目标代码从PC的并口写入JTAG的BSR中。
在设计PCB时,必须将SA1110的数据线和地址线及控制线与Flash的地线线、数据线和控制线相连。
因SA1110的数据线、地址线及控制线的引脚上都有其相应BSC,只要用JTAG指令将数据、地址及控制信号送到其BSC中,就可通过BSC对应的引脚将信号送给Flash,实现对Flash的操作。
JTAG的系统板设计和连线关系如图3所示。
4通过使用TAP状态机的指令实行对Flash的操作
通过TCK、TMS的设置,可将JTAG设置为接收指令或数据状态。
JTAG常用指令如下:
SAMPLE/PRELOAD——用此指令采样BSC内容或将数据写入BSC单元;
EXTEST——当执行此指令时,BSC的内容通过引脚送到其连接的相应芯片的引脚,我们就是通过这种指令实现在线写Flash的;
BYPASS——此指令将一个一位寄存器轩于BSC的移位回路中,即仅有一个一位寄存器处于TDI和TDO之间。
在PCB电路设计好后,即可用程序先将对JTAG的控制指令,通过TDI送入JTAG控制器的指令寄存器中。
再通过TDI将要写Flash的地址、数据及控制线信号入BSR中,并将数据锁存到BSC中,用EXTEST指令通过BSC将写入Flash。
5软件编程
在线写Flash的程序用TurboC编写。
程序使用PC的并行口,将程序通过含有JTAG的芯片写入Flash芯片。
程序先对PC的并口初始化,对JTAG口复位和测试,并读Flash,判断是否加锁。
如加锁,必须先解锁,方可进行操作。
写Flash之前,必须对其先擦除。
将JTAG芯片设置在EXTEST模式,通过PC的并口,将目标文件通过JTAG写入Flash,并在烧写完成后进行校验。
程序主流程如图4所示。
通过JTAG的读芯片ID子程序如下:
voidid_command(void){
putp(1,0,IP);//Run-Test/Idle;使JTAG复位
putp(1,0,IP);//Run-Test/Idle
putp(1,0,IP);//Run-Test/Idle
putp(1,0,IP);//Run-Test/Idle
putp(1,1,IP);
putp(1,1,IP);//选择指令寄存器
putp(1,0,IP);//捕获指令寄存器
putp(1,0,IP);/移位指令寄存器
putp(0,0,IP);//SA1110JTAG口指令长度5位,IDCODE为01100
putp(1,0,IP);
putp(1,0,IP);
putp(0,0,IP);
putp(0,0,IP);
putp(0,1,IP);//退出指令寄存器
putp(1,1,IP);//更新指令寄存器,执行指令寄存器中的指令
putp(1,0,IP);//Run-Test/Idle
putp(1,0,IP);//Run-Test/Idle
putp(1,0,IP);//Run-Test/Idle
putp(1,1,IP);
putp(1,0,IP);
if(check_id(SA1110ID))
error_out("failedtoreaddeviceIDfortheSA-1110");
putp(1,1,IP);//退出数据寄存器
putp(1,1,IP);//更新数据寄存器
putp(1,0,IP);//Run-Test/Idle,使JTAG复位
putp(1,0,IP);//Run-Test/Idle
putp(1,0,IP);//Run-Test/Idle
}
6电路设计和编程中的注意事项
①Flash芯片的WE、CE、OE等控制线必须与SA1110的BSR相连。
只有这样,才能通过BSR控制Flash的相应引脚。
②JTAG口与PC并口的连接线要尽量短,原则上不大于15cm。
③Flash在擦写和编程时所需的工作电流较大,在选用系统的供电芯片时,必须加以考虑。
④为提高对Flash的编程速度,尽量使TCK不低于6MHz,可编写烧写Flash程序时实现。
JTAG口及其对Flash的在线编程-单片机技术JTAG口及其对Flash的在线编程
ABriefIntroductiontotheJTAGBoundaryScanInterface
NickPatavalis(npat@)
Athens08Nov2001
Oneofthedifficultareasinthedevelopmentofanymodernhardwaresystemistheproduction-testingofthePrintedCircuitBoards(PCBs).ThisistheproblemaddressedbytheIEEEstandardnumber1149"StandardTestAccessPortandBoundary-ScanArchitecture".Thisstandardsdefinesa5-pinserialprotocolforaccessingandcontrollingthesignal-levelsonthepinsofadigitalcircuit,andhassomeextensionsfortestingtheinternalcircuitryonthechipitself(whichwillnotbediscussedhere).ThestandardwaswrittenbytheJointTestActionGroup(JTAG)andthearchitecturedefinedbyitisknownas"JTAGboundaryscan"oras"IEEE1149".
ThegeneralstructureoftheJTAGboundaryscantestinterfaceisshowninthefollowingfigure.
Allthesignalsbetweenthechip'scorelogicandthepinsareinterceptedbyaserialscanpathknownasthe"BoundaryScanRegister"(BSR),andshownascells"C0","C1","C2","C3",and"C4"inthefigureabove.Innormalsystemoperationthispathcantransparentlyconnectthecore-logicsignalstothepinsandeffectivelybecomeinvisible.Inexternal-testmode,itcandisconnectthecore-logicfromthepins,drivetheoutputpins("Pin1",and"Pin2"inthefigureabove)byitself,andreadandlatchthestatesoftheinputpins(figure:
"Pin0",and"Pin2").Ininternal-testmode,itcandisconnectthecore-logicfromthepins,drivethecore-logicinputsignalsbyitself,andreadandlatchthestatesofthecore-logicoutputsignals.
Inthefigureabove,andassumingthattheJTAGinterfaceisinexternal-testmode,C0istheBSRcellcapturingthestateoftheinputpin0.C1istheBSRcelldrivingtheoutputpin1.C2doesnotitselfcorrespondtoanyspecificpin,butitisthe"enable"BSRcellwhichcontrolsthe"direction"ofthebidirectionalpin2.C3istheinputBSRcellcapturingthestateofthebidirectionalpin2,andC4istheoutputBSRcelldrivingthebidirectionalpin2.SummarizingwecanidentifythreetimesofBSRcells:
∙InputCellslikeC0,andC3.TheyarealwaysassociatedwithaspecificpinwhosestatetheycapturewhentheJTAGinterfaceisinexternaltestmode.
∙OutputCellslikeC1,andC4.TheyarealwaysassociatedwithaspecificpinwhichtheydrivewhentheJTAGinterfaceisinexternaltestmode.
∙EnableCellslikeC2.Theyarenotassociatedwithanypinper-se,buttheyeithercontrolthedirectionofbidirectionalpins,orenableanddisablecertaininputoroutputpins.
GatesE0,E3,andE4operateunderthecontroloftheTAP(andprobablyalsounderthecontrolof"enable"cells,likeC2)andcapture,orapply,thestates(contents)oftherespectiveinput,oroutput,cellsto,orfrom,thechip'spins.Thestatecapture,orapplication,takesplaceduringcertaintransitionsoftheTAPstate-machine,andonlyiftheIR(instructionregister)hasbeenpreviouslyloadedwith,andcontains,theproperopcode(e.g.EXTEST).
GatesI0,I3,andI4operateunderthecontroloftheTAP(andprobablyalsounderthecontrolof"enable"cells,likeC2)andcapture,orapply,thestates(contents)oftherespectiveinput,oroutput,cellsto,orfrom,thechip'sinternal-logicsignallines.Thecapture,orapplication,takesplaceduringcertaintransitionsoftheTAPstate-machine,andonlyiftheIR(instructionregister)hasbeenpreviouslyloadedwith,andcontains,theproperopcode(e.g.INTEST).
GatesN0,N1,andN3,comeintooperationonlywhenthesystemisinnormal-operationmode(i.e.whentheJTAGtestapparatusisinactive)andconnectthechip'spinstotheinternalcore-logicsignals,asiftheBoundaryScanPathwasnotpresent.
ThecontentsoftheBSRregistercanbewrittenandreadbit-after-bit,inaserialfashion,usingtheTDIandTDOJTAGsignals.ActuallytheBSR"read"and"write"(set)operationstakeplaceatthesametime,withthenew"value"shiftedinfromTDI,whilethepreviousvalueisshiftedoutfromTDO.ThesametechniqueisusedtoreadandwritethevaluesoftheotherJTAGregisterstoo,byhavingtheTAPcontrollerconnectthembetweentheTDIandTDOpins,inplaceoftheBSR.
Interfacesignals
TheJTAGinterfaceusesthefollowingfivededicatedsignalswhichmustbeprovidedoneachchipthatsupportsthestandard:
∙TRST*isaTest-ReSeTinputwhichinitializesanddisablesthetestinterface.
∙TCKistheTestCLocKinputwhichcontrolsthetimingofthetestinterfaceindependentlyfromanysystemclocks.TCKispulsedbytheequipmentcontrollingthetestandnotbythetesteddevice.Itcanbepulsedatanyfrequency(uptoamaximumofsomeMHz).Itcanbeevenpulsedatvaryingrates.
∙TMSistheTestModeSelectinputwhichcontrolsthetransitionsofthetestinterfacestatemachine.
∙TDIistheTestDataInputline,whichsuppliesthedatatotheJTAGregisters(BoundaryScanRegister,InstructionRegister,orotherdataregisters).
∙TDOistheTestDataOutputline,whichisusedtoseriallyoutputthedatafromtheJTAGregisterstotheequipmentcontrollingthetest.Itcarriesthesampledvaluesfromtheboundaryscanchain(orotherJTAGregisters)andpropagatesthemtothenextchipintheserialtestcircuit.
ThenormalorganizationofthetestcircuitonaboardthatincorporatesseveralchipswithJTAGsupportistoconnectTRST*,TCK,andTMStoeverychipinparallel,andtoconnectTDOfromonechiptoTDIofthenextinasingleloop.Thiswaytheboardpresentsasingletestinterfacethathasthesamefivesignalsdiscussedabove.Asimplerarrangement,forboardsthathaveonlyafewchipswithJTAGinterfaces,istoprovideoneJTAGtest-portforeverysuchchip,andcontrolthetestsindependently.
TheTAPcontroller
TheoperationofthetestinterfaceiscontrolledbytheTestAccessPort(TAP)controller.Thisisastate-machinewhosestatetransitionsarecontrollerbytheTMSsignal;thestate-transitiondiagramisshowninthefollowingfigure.
Asyoucansee
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- boundary scan技术资料 scan 技术资料