Xilinx可编程逻辑器件设计与开发(基础篇)连载28:Spartan

第9章 chipscope pro调试设计 在传统的fpga设计中,调试时大都采用示波器和逻辑分析仪。fpga和pcb设计人员保留一定数量fpga引脚作为测试引脚,fpga设计者在编写fpga代码时,将需要观察的fpga内部信号定义为模块的输出,在综合实现时再把这些信号锁定到保留的测试引脚上,最后连接示波器或逻辑分析仪的探头到这些测试脚进行观测。这个测试方法存在很多局限性,成本高、灵活性差、操作麻烦。
成本高。示波器、逻辑分析仪的成本较高。
灵活性差。要测试fpga的内部节点,需要修改设计,将待测信号引到fpga引脚上来进行测试。pcb设计完成后这些用作测试引脚的位臵和数量就固定了,不能灵活改变。如果测试引脚不够用时,影响测试。如果测试引脚太多,又将影响pcb布局和布线。而且在一些极端设计中,fpga的i/o引脚可能已经用光,根本没有多余的引脚被用来做测试引脚。
操作麻烦。示波器、逻辑分析仪必须通过探头连接到测试引脚,容易造成短路,损坏器件。
随着fpga的规模不断增大,fpga的设计变得越来越复杂,其封装形式大多向球形方式转移,传统的使用探针监测信号的方式变得越来越困难。xilinx推出的集成化逻辑分析工具chipscope pro,完全解决了这些问题。
chipscope pro具有传统逻辑分析仪的功能,价格便宜,而且不需要附加大量探头,具有很高的实用价值。它是针对xilinx virtex系列和spartan系列器件设计的片内逻辑分析工具,它通过jtag口,将fpga内部信号实时读出,传入计算机进行分析。基本方法是利用fpga内的bram,存储信号波形数据,然后通过jtag接口将数据传送到计算机,并将波形在计算机显示出来。chipscope测试系统连接结构图如图9-1所示。
使用这种技术观察fpga内部信号的测试方法,具有以下优点。
成本较低。仅需要chipscope pro 设计软件和一根下载电缆,极大地简化了pcb的设计成本。
较高的灵活性。不需将待观察的信号通过额外的引脚输出到fpga,信号的数量和存储深度由器件bram决定。器件中bram越多,可观察的信号数量和存储深度就越大。
使用方便。chipscope pro在 ise工具中作为一个ip模块来调用,可以方便地选择待测信号,也可以设臵复杂的触发条件。
图9-1 chipscope 测试系统连接结构图
chipscope pro由一系列相关的ip 核及其软件工具组成,包括核生成器(core generator)、核插入器(core inserter)、分析仪(chipscope analyzer)和tcl 脚本控制接口。
(1) 核生成器
xilinx core generator tool(xilinx 核生成器):通过它可以生成集成控制器核(icon)、集成逻辑分析核(ila)、虚拟i/o 核(vio)及安捷伦跟踪核(atc2)的网表和实例化所需的模板文件。
ibert core generator(ibert 核生成器):通过它生成virtex-4 和virtex-5 系列的误比特率测试核(ibert)的网表和实例化所需的模板文件。
(2) 核插入器
core inserter(核插入器):自动将con、ila 和atc2 核插入已经综合完成的设计中。
planahead design analysis tool(planahead 设计分析工具):自动将icon 和ila 核插入设计网表中。请参考planahead 章节内容。
(3) chipscope analyzer(chipscope 分析软件):通过它可以配置fpga,可以设定触发条件,可以设定ila、iba/opb、iba/plb、vio 及ibert 的踪迹显示方式。
(4) chipscope engine tcl (cse/tcl) scripting interface(tcl 脚本控制接口):通过tcl 脚本语言和jtag 链,完成与芯片的通信交互。在设计中,使用chipscope pro 有两种操作流程,如图9-2 所示。
图9-2 chipscope 操作流程图
流程1:通过chipscope pro 内核生成器,产生各种不同功能调试内核,如icon、ila和iba 等,将生成的例化代码插入hdl 源程序中,再对包括chipscope pro 内核的设计进行综合实现后下载到器件中,利用chipscope analyzer 进行分析。
流程2:利用chipscope pro 的内核插入器将所需要的内核直接插入到已经综合完成的设计网表(ngc 或edif)中,然后对这个新的网表文件布局布线后下载到器件中,利用chipscope analyzer 进行分析。
接下来我们详细介绍chipscope 的ip 核及其应用,重点介绍如下内容。
chipscope pro 核生成器及各核的属性。
chipscope 内核插入器。
chipscope pro analyzer 核分析仪。
在fpga editor 中修改chipscope 核信号连接。

企业在物联网项目中应该避免犯的八个错误
城市污水管网监测方案,编织监测“一张网”
博世推出一款240伏电动汽车充电器,已获全球大多数市场和标准的认证
执行的单片机程序怎么写?
浅谈同轴视频电缆和射频电缆之间的区别
Xilinx可编程逻辑器件设计与开发(基础篇)连载28:Spartan
SK海力士重回零售SSD市场 新款SSD标称持续读取速度高达560MB/s
基于Xilinx FPGA特点的嵌入式Bootloader设计与实现
随着近年来房地产市场出现疲态 空调市场也受到了较大影响
手机芯片的主要作用是什么
pcDuino9 AI视觉边缘计算开发套件开发使用分享
用铁丝做“电路板”你见过吗?
小米7配置曝光:骁龙845+无线充电,依旧是最良心的国产旗舰
机械继电器故障的主要原因
谷歌大脑高级研究科学家:机器学习六年读博经历中的经验与教训
半导体参数测试仪的简介,分析它的特点以及作用
医疗+3D:一影医疗获3500万元A轮融资,迈进3D骨科手术成像时代
如何将OPT3001与Arduino一起用作照度计
青岛华晟智能与陇西县政府签约,共同推动东西部协作产业升级
IEEE标准和其主要格式