跳至主要内容

JTAG链路快速扫描方法

充分利用现有标准作为基础,是保证方案稳定而有效的一个原则。本文分析了IEEE1149.1协议,在与标准兼容的基础上,提供了一种快速扫描JTAG链路的方法。

根据IEEE1149.1-2001,存在如下规则:

  1. 在Test-Logic-Reset状态下,测试逻辑被禁用,器件正常工作。TAP在下列条件下会进入Test-Logic-Reset状态:(a)上电,(b)TRST置低电平,(c)通过TMS与TCK迁跃状态。不论TAP当前的状态如何,在连续5个TCK的上升沿将TMS保持为高,即可使TAP进入Test-Logic-Reset状态。

  2. 每个设备都必须提供BYPASS指令,如果提供设备标志寄存器,则必须同时提供IDCODE指令。

  3. 在TAP的驱动下,进入Test-Logic-Reset状态后,IDCODE指令必须在TCK下降沿被锁存到指令寄存器(如果设备不提供IDCODE指令,则锁存BYPASS指令)。所有TAP状态的切换必须在TCK的上升沿发生。

  4. BYPASS数据寄存器长度为1,在Capture-DR状态下TCK上升沿,移位寄存器必须被设为0。IDCODE数据寄存器长度为32,在Capture-DR状态下TCK上升沿,移位寄存器被设为设备标志码。设备ID数据寄存器最低位为1。

  1. Manufacturer Identity不可能为全1。根据Rules 12.2.1,11位的厂商代码分为两个部分:7-1位来自EIA/JEP106定义的代码的低7位(最高位为校验位),11-8位为连接码符总数目与16的模。目前尚不清楚厂商代码如何计算连接码,但是连接码定义为7F,因此7-1不可能为全1,进而厂商代码不可能为全1。

  2. 00001111111为无效的厂商代码,任何与IEEE1149兼容的设备都不使用该代码。

根据上述事实,JTAG链扫描的方案设计如下:
  1. 连续产生5个TCK,并保持TMS为高,使TAP进入Test-Logic-Reset状态。

  2. TDI移入1位’1’,读取TDO。如果TDO为0转至第3步,如果TDO为1转至第4步。

  3. TDO为0表明设备连通了BYPASS寄存器,将设备识别状态置为UNKNOWN并转至第2步。

  4. 如果为1表明设备连通了设备ID寄存器,再向TDI移入31个’1’,从TDO读取31个位,已读取的32位即为设备ID。首先检查厂商代码是否为00001111111,如匹配则表明提示链中有不兼容设备存在,直接返回,否则继续。检查设备ID是否为32个1,如果是32个1表明扫描结束,转至第5步,否则将32位设备ID与已知设备ID进行匹配,匹配成功的显示设备信息,匹配不成功的显示UNKNOWN及设备ID,转至第2步。

  5. 更新信息,结束。

上述方法有一个前提:JTAG链正常,信号不存在不连通的情况。

当然,在实际情况中,这个前提通常不能满足,软件要考虑JTAG链断链或者器件故障等情况造成信号不通的异常情况,必须在流程上予以保证。标准没有对JTAG链上设备的最大数目作限制,但我们可以根据现有硬件的条件设定一个最大设备数(如10个),当已识别出的设备数超出该最大值时,可以认为链路故障。只要强加上述条件,在发生故障时,不论TDO信号恒为0,恒为1或者不断变化,都可以保证软件不会进入死循环。而只要链路正常,一定可以扫描到32个1。

评论

此博客中的热门博文

知识管理的原则

寻找PKM时,看到这样一个贴子,感觉有一些原则比较有启发作用,其实重要的是方法,其次是合适的工具。所谓原则,对不同人来说也不是绝对,适合自己的就好。 个人知识管理的29个原则(转) 1、持续的学习成为个人生存和发展的基础。持续学习不一定能带来成功,但不学习一定失败;  2、信息和知识爆炸,在一段时间和时期内,学习的内容必须聚焦。起码要在一个领域内成为专家。  3、你应该学习的内容取决于你的价值观、特长、个性和目标。  4、你必须学会如何有效的评估信息和知识,所以你必须根据你的价值观、特长、个性和目标确立自己对信息和知识的“过滤器”;  5、人是知识获取的重要渠道,所以你应该知道谁最擅长什么?遇到问题时知道可以向谁学习和请教;  6、你牛了你的朋友也一定牛,建立人际资源的基础是自己的知识基础、个性和激情、自己优势的合理展示和帮助别人的意愿;  7、人际关系需要维护;捷径是找到那些愿意共享自己朋友资源的人,你也应该做这样的人;  8、信息如果不经过处理,不能称为知识。所以你存储的知识起码你应该简单看过、知道是在讲什么;  9、信息和知识存储前应该尽可能做规范化的工作,例如你做的摘要、感触、觉得最有价值的部分、将来能做什么用等等;  10、建立自己的分类字典,而不是每次想起什么就建立什么样的文件夹或者标签。分类字典,持之以恒坚持,适当调整;  11、知识存储中分类不宜过宽,过宽则等于没有分类;分类不宜过深,过深后你就不会再去看;  12、充分利用各种工具,尤其是web2.0工具做知识存储和获取工作;  13、知识存储时适当共享,听取和收集别人的意见和建议;  14、有意识的做知识显性化的工作,既方便知识传播也促进知识学习和建立人际网络;  15、知识传播中必须考虑传播的方式和效率;  16、不能用简单朴素的语言表述的知识证明你还没有深入理解;  17、多用举例子、讲故事的方法传播你的知识、见解。这个过程是你对知识的再深化过程;  18、你的知识传播的越广,你的影响力越大;  19、你的目的决定了你知识利用的方式。如果目的是要写论文,则你的知识就是明确、简洁的表达;如果是想要在市场上销售,就必须产品化、规范化或者专利化;  20、知识本身没有价值,只有被利用时才能展现其价值;  21、知识必须跟任务、项目结合起来才能发挥作用;  22、单独的一个主题的知识很难被很好的利用,...

反转剧

这两天明显感到天气转冷,呱呱的家里也已经下起了大雪,南京则是阴冷潮湿,让人没有了出行的欲望。没想到躲在被子里看反转剧也成了度过寒冬的一剂良药。在PPLive越来越让人失望的时候,PPStream横空出世,虽然广告仍是少不了的主题,但从视频质量和播放连续性上来说都超过PPLive,实为居家必备之良品(由此可见,新事物一定会战胜旧事物......)。韩国的反转剧最近似乎比较流行,称之为反转剧就在于其结果总是让人出乎意料,不合常理,其间又不乏各种搞怪搞笑的镜头,各种当红帅哥美女也一定让DDMM们爱不释手,20~30分钟一集的剧情一改韩剧拖沓的风貌,想看就看,容易切入。 反转剧,今天你看了吗?

夜宴

忙和了一整天,在家做了一餐饭,邀同事们吃了一顿,这种感觉真好。 据说,只是据说...我可以去开馆子了,哈哈哈哈...... 可惜,等我想到要拍下来的时候,已经只剩盘底了...... ^_^!!