单片机学生,来认识认识Jtag--Boundary Scan


081d25885e058091a4b429e9394068e8.png

\\\插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我(禾厶-亻言-手戈)免費的。最近比较闲,带做毕设,带学生参加省级以上比赛///

856b00c60a7015b73f9bb74b65beae0e.png

5b1e8d87441a761ee9408a638983b790.png

想必玩过单片机或者 FPGA开发板的同鞋对 jtag接口并不陌生。在需要烧录程序的时候,对着板子的接口接“跟”线,完事儿。不过今天想和各位聊聊的问题是,jtag究竟是如何实现的。事先声明,我只是个缝合怪!接下来的内容来自网络+博客+IEEE官方文档+其它。最后我会列出相关参考。

言归正传,Jtag作为一个国际化的标准,目前我们可以用它来做程序烧录,debug,电路检测等操作。在数字电路设计中,大多作为电路故障诊断的一种手段。图1展示了对电路功能的两种检测方案。现假设我们利用 verilog实现了一个性能非常 nice的加法器,吊打各大公司的 IP,然后功能仿真也没有任何问题。但是我们并不确定加工生产(原谅我着拙劣的用词)出来的电路到底是个什么情况?哎,这个时候 jtag就可以发挥作用了。在图1(A)中那个粉红色的单元就是我们写的超级 nice的加法器,左右两侧的黄色单元是其与外部的引脚连线。我通过 jtag在左侧灌入激励(Driver),然后从右侧查看与之对应的响应(Sensor),从而判断这个加法器的实际电路有没有缺陷。图1(B)呢大家可以思考一下,我们后面以这个为例做具体的讲解。

848048d3960b064bc770ea95cbbe9528.png图1简单的功能示意图[1]

当然,在具体的实现过程中,也不是我们想检测就可以检测的,不然也不会劳烦IEEE专门搞了一个叫 Joint Test Action Group。你猜的没错,这就是 Jtag的简称了。下面我们将从整体结构依次介绍JTAG。

图2展示了一个较完完整的 JTAG整体架构设计。它主要包含了一下几点内容。

.一组关键的控制信号 TMS, TDI, TDO, TCLK。有些结构还包括 TRST(图2中含有这个信号)

.指令寄存器

.数据寄存器,其中包括边界扫描寄存器,旁路寄存器,设备识别寄存器以及其它用户自定义的寄存器

.解码器

.TAP(Test Acess Port)控制器(核心控制组件)

下面就以上五点内容做具体的介绍。

9b54735774c0ecfcaa0b2f1b5bcdf9ea.png图2 JTAG整体构造设计[

  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值