原创 在系统编程能力(ISP)标准和规范简介

2007-12-21 11:40 4393 9 9 分类: FPGA/CPLD

IEEE 1149.1 标准背景


边界扫描/JTAG,即 IEEE/ANSI 标准1149.1_1190,是一套设计规则,可以在芯片级、板级和系统级简化测试、器件编程和调试。该标准是联合测试行动小组(JTAG)(由北美和欧洲的几家公司组成)开发的。IEEE 1149.1标准最初是做为一种能够延长现有自动测试设备(ATE)寿命的片上测试基础结构而开发的。可以从Texas Instruments 边界扫描页面获得更多信息。利用该标准整合测试设计,允许完全控制和接入器件的边界引脚,而无需不易操作的或其它测试设备。每个符合JTAG要求的器件的输入/输出引脚上都包括一个边界单元(如图1所示)。正常情况下,它是透明的和停止运行的,允许信号正常通过。借助于测试模式下的器件,您可以采集输入信号,以备后期分析之用;输出信号可以影响板上的其它器件。

边界扫描单元框图

简而言之,IEEE 1449.1 标准定义了一个串行协议。无论封装约束怎样,该协议都要求每个符合标准的器件上要有4个(也可以是5个)引脚。这些引脚定义了测试接入端口(TAP),以便实现片上测试基础设施的操作,从而确保:



  • 印刷电路板上的所有器件安装正确并处于正确的位置。
  • 器件间的所有互连都与设计所描述的一致。

引脚是:



  • TCK - 这是一个时钟信号,用于同步1149.1内部状态机操作。
  • TMS - 1149.1内部状态机模式选择信号。该信号在TCK的上升沿被采样,用来决定状态机的下一个状态。
  • TDI - 1149.1数据输入引脚。当内部状态机处于正确状态时,信号在TCK的上升沿被采样,并被移入器件的测试或编程逻辑
  • TDO - 1149.1数据输出引脚。当内部状态机处于正确状态时,该信号代表从器件测试或编程逻辑移出的数据位。 输出数据在TCK的下降沿有效。
  • TRST(可选) - 1149.1异步复位引脚。当置低时,内部状态机立即进入复位状态。 由于该引脚是可选的,而通常为器件增加引脚会带来额外的成本,因此很少使用。 此外,内部状态机(如标准所定义的)已经明确定义有同步复位机制。

TAP引脚驱动一个16-状态控制器(状态机)。该状态机的状态根据TCK上升沿时TMS信号的值进行状态转换。 查看问答数据库内的状态机图解。


图中位于弧线旁边的'0'和'1'表示TCK上升沿时TMS信号的逻辑状态。


1149.1标准规定仅在Shift-DR或Shift-IR状态时TDI有效并被移入(TDO有效并被移出)。 Shift-IR状态选择TDI和TDO之间的器件指令寄存器。 根据选择的指令,不同的数据寄存器被激活。 在Shift-DR状态时,TDI和TDO之间与先前输入的指令相对应的数据寄存器被选中。 缺省数据寄存器是强制性的1位旁路寄存器。


外部边界扫描描述语言(BSDL)文件规定了任何器件的边界扫描逻辑的特性和特征。这些文件由IC制造商提供,并被用来生成符合IEEE 1149.1标准的器件操作的算法描述。


多个边界扫描器件以菊花链形式串接起来。 每个器件共享同样的TCK和TMS信号。 一个器件的TDO连接到下一个器件的TDI。 由于所有的器件采用同样的TCK和TMS,因此所有器件同时且同步地顺序转换TAP控制器状态。因此,所有的器件都处于同一个TAP控制器状态下。当将数据(在 Shift-IR 或 Shift-DR 状态)移到边界扫描链中时,所有器件都有寄存器在内部连接在其 TDI 和 TDO 引脚之间。 结果很明显,就是单个固定长度移位寄存器从系统 TDI 引脚转到系统 TDO。


 

IEEE 1532配置和编程标准


利用先进PLD和配置PROM设计的新系统需要最好的编程和配置技术。IEEE 1532标准所制定的技术规范使设计人员可同时编程多片器件,利用增强的芯片功能最小化编程时间,同时生产出更容易维护的、功能强大的系统。通过提供一个功能强大的和可靠的编程环境,这一新标准为更方便的硬件升级铺平了道路。


IEEE 1532标准简化了任何合格的PLD的配置,即使是在远程环境下也是如此。其统一的编程方法几乎消除了任何器件编程不确定性,并可保证正确的系统启动顺序(包括在掉电故障后)。 它允许用户容易地实现现场诊断和新功能,从而延长产品生命周期并降低现场维护成本。

IEEE 1532

编程和算法数据分开保存。可以在不影响另一个的情况下改变另一个,这样就消除了每次设计变更之后进行重新编译的必要。边界扫描工具和自动测试设备可以将编程效率最大化,还能将编程时间降至最短,从而降低了生产成本。


IEEE 1532标准具有明确定义的可提供增强功能的系统级指令,如有些指令可支持简单地实现同时编程,从而可进一步缩短编程时间。 通过利用这些简单的指令,设计人员可以缩短产品上市时间并集中精力进行系统特性和设计优化,而不是花费大量时间纠缠配置问题。


 

器件和软件支持


下列器件和产品系列可充分支持和利用IEEE 1532标准(参考IEEE Std 1532 BSDL文件):



  • CoolRunner™-II
  • Spartan™ 系列 FPGA
  • Virtex™ 系列 FPGA
  • System ACE™

Xilinx还提供了可以免费下载的、世界首款IEEE 1532标准编程引擎J Drive


自动测试设备(ATE)、第三方工具和在线编程器参与者


主要的电信和消费类电子公司合作制定了能够在各种不同的可编程器件上满足他们的需要的标准。主要的自动测试设备制造商(Agilent和Teradyne)、边界扫描工具供应商(ASSET Intertech、Corelis、Intellitech和JTAG Technologies)和在线编程器供应商(Data I/O和BP Microsystems)参与了IEEE-STD-1532的开发。


为了方便您的使用,我们提供了ATE和边界扫描(JTAG)工具及合作伙伴列表。


 

串行矢量格式(SVF)


串行矢量格式(SVF)规范是基于边界扫描的刺激信息交换的标准。虽然它可以自由分配,但它不是开放的标准。目前,Asset Intertech拥有该标准的版权。


JEDEC



  • JEDEC编程文件 - 更正式的名称是用于在数据准备系统和可编程逻辑器件编程器间进行数据传输的JESD3-C标准数据传输格式。可从JEDEC网站下载该文件。


  • JEDEC链描述文件 - 更正式的名称是用于链描述文件的JESD32 标准。 这一文件格式描述串行链中任意的可编程器件连接。 它试图用同一种语言均衡非1149.1类和1149.1类串行链的描述。但是,它不能描述复杂的边界扫描连配置,如分层或多支路架构。

BSDL


边界扫描描述语言(BSDL)标准1149.1b 用来描述 JTAG 1149.1 边界扫描兼容器件中的 1149.1 TAP 控制器和边界扫描寄存器。 BSDL还做为VHDL标准的子集实现。Xilinx 广泛地测试和验证了每个BSDL文件


文章评论0条评论)

登录后参与讨论
我要评论
0
9
关闭 站长推荐上一条 /2 下一条