单片机ISP功能和DSP、FPGA的JTAG功能

ISP(In-System Programmable;在线编程)。ISP笼统的说就是在线编程,把单片机焊到电路板上,如果发现程序哪里有不合适的地方,可以直接通过pc进行编程,而不用把单片机进行拆卸,免去花仿真器(或编程器或叫烧写器)的钱。

我在大三和大四的两届电子设计大赛中使用的片子都是具有ISP在线编程功能,如ADUC8XX系列,msp430系列。一般的单片机开发板都具有在线编程的功能。

有一种说法是既然可以在线编程,那就没有必要要编程器了,编程器已经落伍了!其实不然,诚然如果是做开发的,使用开发板,ISP在线编程确实好用。但在批量生产方面和给多种不同的芯片下载程序上,编程器却更合适一些!因此没有落不落伍,只有需不需要。与串行口下载方式相比,编程器烧录一个芯片在时间上要快得多,还有些编程器可以一次为多个芯片下载程序。如果在设计期,在线可编程的下载方式当然显现出优势,可是如果设计的是产品,在生产期,难道成千上万的芯片也要一个一个用串口来下载程序吗,这时编程器高速、批量的特点才是用武之地。 另外,如果如果将来是要搞这方面的,还是有必要有一个编程器的,接触新的芯片,以及出现给ROM编程的需要都是概率很高的事件。

那么JTAG又是什么呢?最近在看cpld和FPGA(DSP也有),下载程序都是使用JTAG接口,并且也是在线下载程序,比ISP更加先进的是,通过JTAG接口还可以看到芯片内部寄存器的程序运行情况!下面介绍一下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为测试复位,输入引脚,低电平有效。GND

TI还定义了一种叫SBW-JTAG的接口,用来在引脚较少的芯片上通过最少的利用引脚实现JTAG接口,它只有两条线,SBWTCK,SBWTDIO。实际使用时一般通过四条线连接,VCC,SBWTCK,SBTDIO,GND,这样就可以很方便的实现连接,又不会占用大量引脚。

JTAG最初是用来对芯片进行测试的,基本原理是在器件内部定义一个TAP(Test Access Port测试访问口)通过专用的JTAG测试工具对进行内部节点进行测试。JTAG测试允许多个器件通过JTAG接口串联在一起,形成一个JTAG链,能实现对各个器件分别测试。现在,JTAG接口还常用于实现ISP(In-System Programmable;在线编程),对FLASH等器件进行编程。

JTAG编程方式是在线编程,传统生产流程中先对芯片进行预编程现再装到板上因此而改变,简化的流程为先固定器件到电路板上,再用JTAG编程,从而大大加快工程进度。JTAG接口可对PSD芯片内部的所有部件进行编程。

在硬件结构上,JTAG 接口包括两部分:JTAG 端口和控制器。与JTAG 接口兼容的器件可以是微处理器(MPU)、微控制器(MCU)、PLD、CPL、FPGA、ASIC 或其它符合IEEE1149.1 规范的芯片。IEEE1149.1 标准中规定对应于数字集成电路芯片的每个引脚都设有一个移位寄存单元,称为边界扫描单元BSC。它将JTAG 电路与内核逻辑电路联系起来,同时隔离内核逻辑电路和芯片引脚。由集成电路的所有边界扫描单元构成边界扫描寄存器BSR。边界扫描寄存器电路仅在进行JTAG 测试时有效,在集成电路正常工作时无效,不影响集成电路的功能。

如上所说有的高端单片机也有JTAG接口,如ARM的部分型号。

ISP是一种通用的程序下载方式。而JTAG功能包含ISP功能。

永不止步步 发表于03-09 11:29 浏览65535次
分享到:

已有0条评论

暂时还没有回复哟,快来抢沙发吧

添加一条新评论

只有登录用户才能评论,请先登录注册哦!

话题作者

永不止步步
金币:67417个|学分:345791个
立即注册
畅学电子网,带你进入电子开发学习世界
专业电子工程技术学习交流社区,加入畅学一起充电加油吧!

x

畅学电子网订阅号