- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
应用于FPGA边界扫描设计
应用于FPGA边界扫描设计
摘要:针对在FPGA芯片中的应用特点,设计了一种边界扫描电路,应用于自行设计的FPGA新结构之中。该电路侧重于电路板级测试功能的实现,兼顾芯片功能的测试;同时,加入了器件编程功能。
关键词:边界扫描;现场可编程门阵列;可测试性设计;器件编程
1. 引言
随着芯片功能、封装技术、PCB制造技术的不断发展,传统电路测试方法遇到巨大的挑战。1990年,IEEE组织开始推行IEEE11491.1边界扫描标准后,边界扫描电路已成为业界一种流行的可测性设计,被众多ASIC和FPGA生产商采用。
在IEEE11491.1标准中,采用5个称为测试访问端口(TAP,Test Access Port)的专用测试管脚,实现一系列芯片信息采集、测试的功能,提供了芯片级、PCB板级和系统级的测试手段,并且,该标准的功能在扩展、加强后,可以实现内建自测试(BIST)、数字系统单步调试等更为强大的功能。
本文进行了边界扫描与编程电路的设计,选择了针对FPGA应用特定的边界扫描测试功能,并加入编程功能。结果表明,电路实现了边界扫描测试和下载的设计功能要求。
2. 功能选择和总体设计
2.1指令集设计
根据对FPGA中边界扫描电路的功能设计,共选择了8条指令构成指令集,用于实现测试、编程,如表1所示。
其中,测试指令选用了在边界扫描标准中规定必须包括的3条测试指令。这样的设计主要是考虑到:FPGA的可编程特性决定了芯片的逻辑功能比较灵活,在不同的应用中很少互相重复,因此,FPGA芯片较少应用到芯片自测试等复杂的测试过程。所以,在FPGA中设计边界扫描电路时,功能着重于电路板级测试;同时,这3条必备指令的结合,在FPGA的测试中,仍然能够兼顾部分基本的芯片级测试功能。因此,选择实现3种测试功能:1)旁路功能,在测试电路板上其它芯片时,将本芯片的边界扫描链旁路,用1位移位寄存器帮助构成板级的扫描链;2)采样功能,获得芯片工作中各个I/O管脚上的信号;3)管脚控制功能,控制I/O管脚上的信号,施加测试向量。
选择了5条编程指令,在边界扫描电路中加入了编程功能,实现对器件的在线编程。
FPGA的编程通过地址寄存器链选中行地址,数据寄存器链访问被选中的行,通过它们逐行编程或读出数据,可以完成整个编程存储器的编程或验证。因此,采用数据指令和行地址指令分别对这两条寄存器链进行输入。为了将数据写入和读出编程存储器,分别需要编程指令和校验指令进行控制。此外,在每一次编程开始时,需要对整个编程存储器阵列进行复位,为此,采用了复位指令。通过这5条指令的配合,可以实现器件编程的全部过程。由于在线编程的要求,在使用这5条编程指令进行编程时,边界扫描电路自动将FPGA的所有可编程I/O管脚控制为高阻态,防止在编程过程中管脚状态改变时的电平冲突。
2.2模块设计
边界扫描电路的系统结构如图1所示,由测试访问端口、测试访问端口控制块(TAP控制器,一个16状态状态机)、寄存器组、指令译码器和编程RAM控制模块五个部分组成。
测试访问端口的5个专用管脚按照一个简单的串行通讯协议,完成测试和编程的指令、数据的输入输出。测试访问端口控制块就是这个“通讯协议”的通讯控制器。同时,TAPController为电路中其他模块提供工作时钟。指令译码器根据输入的指令,产生相应控制信号,控制边界扫描电路完成对应的测试、编程动作。寄存器组包括指令寄存器(IR)和一组用于测试和编程的数据寄存器(DR)。IR接受指令输入,再将指令提供给指令译码器;DR在TAPController和指令译码器控制下执行测试、编程操作。编程RAM控制模块在TAPController和指令译码器控制下产生RAM擦除、写入、读出等控制信号。
3. 电路设计
3.1测试访问端口
TAP由5个专用于边界扫描的引脚组成:1)TCK(Test Clock):测试电路时钟信号;2)TMS(Test Mode Select):测试模式控制端,与TCK配合控制TAP Controller,是状态机跳变的条件信号,在无输入时拉高为“1”;3)TDI(Test Data Input):测试数据串行输入端,无输入时拉高为“1”;4)TDO(Test Data Output):测试数据串行输出端,无输出时为高阻态;5)TRST(Test Reset):复位信号,低电平时使状态机异步复位。
3.2TAP控制器
TAP控制器是一个16状态的状态机,由TCK同步,TRST异步复位,根据TMS的输入转换状态,并产生信号控制测试电路的工作。状态机的设
文档评论(0)