赞
踩
ChipScope Pro分析仪
ChipScope Pro 分析工具(Analyzer tool)直接与ICON、ILA、IBA、VIO及IBERT核相连,用户可以实时地创建或修改触发条件。
注意:虽然ChipScope Pro分析工具能识别设计中的ATC2核,但是需要将JTAG接口与安捷伦逻辑分析仪相连,建立ATC2核与安捷伦逻辑分析仪的通信。
分析工具有两部分:分析工具服务器和客户端。
(1) 服务器是命令行服务程序,可以通过JTAG下载电缆连接目标器件的JTAG口。如果用户想通过JTAG下载线调试本地目标系统,不需要手动打开分析工具服务器,只有当用户需要和远程客户端相连时,才需要手动打开分析工具服务器
(2) 分析工具客户端是一个图形化的用户接口界面(GUI),它连接目标系统的JTAG链,与目标器件中的ChipScope内核通信。分析工具的客户端和服务器可以运行在一台机器上(local host模式)或者不同机器上(remote模式),remote模式在以下情况下非常有用。
调试一个远程系统。和其他同事共享一个系统资源。给远程客户演示问题或功能。在大部分情况下,用户是通过分析工具客户端来对设计进行分析的,这里详细介绍客户端界面和功能。客户端界面如图9-38所示。
分析工具客户端由菜单栏、常用工具栏、项目浏览器、信号浏览器、主窗口以及信息显示窗口组成。
(1) 菜单栏。
【File】文件菜单:包含与工程相关的操作,如【New Project】新建项目、【Open Project】打开项目、【Save Project】保存项目、【Save Project As】项目另存、【Page Setup】页面建立、【Print】打印、【Import】导入、【Export】导出以及【Exit】退出等命令。其中比较重要的导入和导出功能,【Import】导入用于从设计文件中获取信号列表,【Export】导出用于提取捕获数据,以便后续观察和处理。【View】视图菜单:包含了显示【Project Tree】项目浏览器和显示【Messages】信息显示窗口两个命令。【JTAG Chain】边界扫描链路菜单:包含了下载电缆相关的命令,有【Serve Host Setting】主机服务设臵、【JTAG Chain Setup】JTAG链建立、【Xilinx parallel Cable】连接Xilinx并行下载线、【Xilinx parallel USB Cable】连接Xilinx并行USB下载线、【Close Cable】关闭电缆、【Get Cable Information】获取电缆信息以及【Auto Core Status Poll】打开自动核状态查询等。【Device】器件菜单:包含了【JTAG Device Chain Setup】边界扫描链设臵、【Configure】配臵器件、【Show IDCODE】显示器件识别码和【Show USERCODE】显示用户码等命令。【Windows】窗口菜单:包含了【New Unit Window】新建窗口单元、【Close】关闭、【Auto Layout】自动重排等相关命令。【Help】帮助菜单:包含了版本信息以及所有核信息。(2) 项目浏览器:项目浏览器在JTAG边界扫描链正确初始化后会列出扫描链上所有能识别的器件,显示核的数目,并为每个核创建一个文件夹,其中包含了触发条件设置和要观察信号的波形文件。在配置下载完成后,项目浏览器也会同时更新。
(3) 信号浏览器:信号浏览器用于添加和删除视图中的信号,当在项目浏览器中选中一个ChipScope核后,在信号浏览器中会显示出与此核相关的信号,可以对这些信号重命名或将信号组合成总线的形式。
命名信号和总线,双击或者单击右键后选择【Rename】,可以重新命名信号和总线名称。从窗口中添加/移除信号。用【Clear All】→【Waveform】或者【Clear All】→【Listing】命令删除信号。用【Add ALL To View】命令添加信号。合并/添加信号到总线。对于ILA核和IBA核,只有数据信号可以合并总线,对于VIO核,可以将各类信号分组。单击要分组的信号,选择【Add To Bus】→【New Bus】,将总线信号重新排序。利用【Reverse Bus Order】命令可以将LSB到MSB排列的总线顺序变成MSB到LSB排列。(4) 主窗口:主窗口主要用于显示【Trigger Setup】、【Wavaform】、【Listing】以及【Bus Plot】等窗口。
(5) 信息显示窗口:信息显示窗口会列出分析仪所有的状态信息,便于用户查看。
使用Analyzer观察信号波形时,首先需要将设计和ChipScope Pro核共同生成的配置文件下载到FPGA芯片中。然后通过设定不同的触发条件捕获数据,将其存储在芯片的BRAM中,通过JTAG链回读到PC上观察波形。
一、 配置目标芯片
打开Analyzer,在常用工具栏上单击,初始化边界扫描链,成功完成扫描后,项目浏览器会列出JTAG链上的器件,如图9-39所示。Analyzer能自动识别出边界扫描链上的所有Xilinx的CPLD、FPGA、PROM以及System ACE芯片。图9-39所示为ML505目标板的JTAG链扫描结果。
当JTAG链扫描正确后,菜单项“Device”才能由灰色变为正常。需要注意的是:ChipScope通过JTAG链来观察芯片内部逻辑,因此在生成配置文件时只能利用.bit格式的配置文件,且时钟需要选择“JTAG CLK”,选择“CCLK”可能会导致配置失败。
二、 设置触发条件
将包含ChipScope核的工程下载到FPGA中以后,还需要设定触发条件才能在Analyzer中捕获到有效波形。Analyzer的触发设置由【Match】匹配、【Trig】触发以及【Capture】捕获三部分组成,其中【Match】用于设置匹配函数,【Trig】用于把一个或多个触发条件组合起来构成复杂的触发条件,【Capture】用于设定窗口的数目和触发位置,典型的配置界面如图9-40所示。
(1) 【Match】里设置触发条件的匹配函数,多个函数的组合构成ChipScope Pro核的整个触发条件。
【Match Unit】:用于指定该函数用于哪个触发的匹配函数。【Function】:选择比较类型。【Value】:设臵比较的具体数值。【Radix】:设臵【Value】里的数据格式。可以是十六进制、八进制、二进制、有符号或者无符号数。【Count】:触发条件所设臵的事件发生多少次之后才认为满足触发条件。【at least n times】:事件连续或者不连续发生n次后满足触发函数条件。【for n cycles】:事件只有连续发生n次才算满足触发函数条件。(2) 【Trig】窗格可以把一个或多个触发条件组合起来,构成复杂的触发条件。触发条件是一个或者多个触发条件的组合,ChipScope Pro根据触发条件判断是否捕获数据。在Analyzer中可以定义多个触发条件。
【Add】按钮:可以加入新的触发条件。【Del】按钮:可以删除触发条件。【Trigger Condition Name】:允许用户为触发条件命名。【Trigger Condition Equation】:显示触发条件的构成,默认为来自不同触发条件函数的逻辑与。如果希望改变该设臵,可以单击该区域,弹出【Trigger Condition】对话框,如图9-41所示。可以根据需要设臵,设臵的触发条件等式将重新显示在对话框的下方。在工程管理窗口选择【Trigger Setup】→【Save Trigger Setup】命令,可以将触发设臵保存到后缀为.ctj的文件中,方便下次调用。选择【Trigger Setup】→【Read Trigger Setup】命令,可以从该文件中读入触发条件设臵参数。(3) 【Capture】里可以设置视窗的数目和视窗中触发事件的位置,这些视窗通常包含由一个触发事件产生的一连串连续采样点。
【Type】下拉列表框:定义了所用视窗的类型,如果选择【Windows】类型,那么视窗中的采样数必须是2的若干次方,触发可以发生在视窗的任何位臵;选择【N Samples】类型,缓冲器buffer中将包含多个视窗。每个视窗包含N个采样点,每个触发总在第一个采样窗口。【Windows】编辑框:用来定义窗口的数目,数值范围为1到捕获缓冲区的深度之间。【Depth】下拉列表框:每个触发窗口的深度,深度由窗口数量决定。【Position】编辑框:触发位臵,范围为1到捕获缓冲区深度减1之间。三、 捕获数据
运行捕获Running/Arming the Trigger,设置好触发条件后,在工程管理窗口中选择【Trigger Setup】→【Run】命令,分析仪进入捕获(arm)状态。如果触发条件得到满足,Core捕获数据,直到设置的缓冲区填满为止,然后通过JTAG上传数据,并在【Waveform】和【Listing】窗口中显示。如果需要强制进行数据捕获,可以选择【Trigger Setup】→【Trigger Immediate】命令,该命令忽略触发条件并立刻进行捕获,直到设置的缓冲区填满为止,并在【Waveform】和【Listing】窗口中显示。
要停止捕获,选择【Trigger Setup】→【Stop Acuqisition】命令。
四、 观察信号
ILA核可以通过【Waveform】、【Listing】和【Bus Plot】窗口观察信号波形。
(1) 【Waveform】窗口
在图9-42所示【JTAG Chain】的ILA核下单击【Waveform】,打开图9-43所示波形显示界面,它类似于逻辑分析仪,可以支持如下操作。
(2) 【Listing】窗口如图9-44所示。
【Listing】窗口以列表形式显示采样缓冲区。基本功能和【Waveform】相同。
(3) 【Bus Plot】绘图窗口如图9-45所示。
如果设计中有VIO核,可以在【VIO Console】窗口观测虚拟输入输出信号状态,如图9-46所示。
(1) 【Bus/Signal】栏:包含VIO核的总线或者信号名称。单击右键,设置信号/总线的【Type】显示类型和【Persistence】显示时间长度。
【Type】:设臵VIO总线/信号的类型。(2) 【Value】栏:显示信号的当前值。
五、 导入、导出数据
ChipScope提供了强大的数据采集能力,最大深度可达16384,单靠肉眼观测是不可行的,需要将采集波形存储下来,再通过VC、MATLAB等工具完成后续分析。【File】菜单下【Export】命令,可导出.VCD、.ASCII以及.FBDT等3种类型的文件。
用户可以对采样信号进行重命名,然后在ChipScope中导入所有信号名,以方便观察和分析。Core Generator、Core Inserter、Synplicity Certify和FPGA Editor 工具都可以产生有关信号名的文件,在ChipScope中,可以运行【File】菜单下【Import】命令,从指定文件中导入信号名。
9.5 利用FPGA Editor修改Chipscope Pro核信号连接
对于使用高密度FPGA实现的复杂的逻辑设计,每次在ChipScope Pro Core中修改信号探点都需要重新进行布局布线,布局布线需要花费较长的时间。更令人头痛的是,布局布线后的结果可能每次都有差异,有时会变得很差。如何解决这个问题呢?FPGA Editor与ChipScope的协同工作有效地解决了这个问题。
利用FPGA Editor和ChipScope Pro协同工作,可在FPGA Editor中对器件内的ChipScope Pro探点直接修改。由于不再布局布线,不仅提高了工作效率,而且ChipScope Pro Analyzer的跟踪和分析也更准确。
运行ISE 11.x设计工具,在【Processes for Source....】窗口中单击【View/Edit Routed Design(FPGA Editor)】。弹出FPGA Editor界面,在右边菜单栏中单击【ILA】命令,打开如图9-47所示的ILA设计界面,在【Array】窗口中修改布线。
9.6 小结
本章详细介绍了Xilinx内嵌逻辑分析仪ChipScope Pro,它是Xilinx开发的功能强大的在线调试工具,它解决了用片外逻辑分析仪进行设计调试时需要硬连接的瓶颈。本章首先介绍了ChipScope Pro的各个组成部分,包括ICON、ILA、VIO和ATC2等功能模块,接着用一个实例介绍了ChipScope Pro的应用,最后讨论了用ChipScope Pro分析仪进行设计调试的方法。希望通过本章介绍,读者能快速熟悉并掌握ChipScope Pro的应用,并借助此工具,快速找到并排除设计中的问题。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。