当前位置:   article > 正文

ChipScope Pro分析仪_ibert和vio不能共存

ibert和vio不能共存

 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所示。

【Chipscope Pro Analyzer tool】客户端接口

图9-38 【Chipscope Pro Analyzer tool】客户端接口

分析工具客户端由菜单栏、常用工具栏、项目浏览器、信号浏览器、主窗口以及信息显示窗口组成。

(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链扫描结果。

Analyzer边界扫描结果

图9-39 Analyzer边界扫描结果

当JTAG链扫描正确后,菜单项“Device”才能由灰色变为正常。需要注意的是:ChipScope通过JTAG链来观察芯片内部逻辑,因此在生成配置文件时只能利用.bit格式的配置文件,且时钟需要选择“JTAG CLK”,选择“CCLK”可能会导致配置失败。

二、 设置触发条件

将包含ChipScope核的工程下载到FPGA中以后,还需要设定触发条件才能在Analyzer中捕获到有效波形。Analyzer的触发设置由【Match】匹配、【Trig】触发以及【Capture】捕获三部分组成,其中【Match】用于设置匹配函数,【Trig】用于把一个或多个触发条件组合起来构成复杂的触发条件,【Capture】用于设定窗口的数目和触发位置,典型的配置界面如图9-40所示。

Analyzer触发条件配置示意图

图9-40 Analyzer触发条件配置示意图

(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】命令,可以从该文件中读入触发条件设臵参数。

【Trigger Condition】设置界面

图9-41 【Trigger Condition】设置界面

(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所示波形显示界面,它类似于逻辑分析仪,可以支持如下操作。

观察波形设置

图9-42 观察波形设置

Analyzer波形显示界面示意图

图9-43 Analyzer波形显示界面示意图

重新排列总线和信号的位臵:用户可以拖动信号到所希望的位臵,重新排列总线和信号的位臵。添加总线:可按住Ctrl键,选择多个总线信号,单击右键,选择“Add to Bus”命令,将其组合成相应的总线信号,如DataPort,如图9-43所示。对信号和总线进行编辑:剪切/复制/粘贴/删除信号和总线,在信号或总线名称上单击右键,选择相应的命令。同时支持Windows组合键操作(剪切命令Ctrl+X,复制命令Ctrl+C,粘贴命令Ctrl+V,删除命令Delete)。对信号和总线进行放大和缩小。测量光标:【Waveform】窗口中可以设臵两个光标──X和O。用户可以放臵这两个光标到采集的数据点上。该点的信号和总线状态将在X或者O里显示,两个带颜色的竖线分别为X和O坐标。

(2) 【Listing】窗口如图9-44所示。

【Listing】窗口界面

图9-44 【Listing】窗口界面

【Listing】窗口以列表形式显示采样缓冲区。基本功能和【Waveform】相同。

(3) 【Bus Plot】绘图窗口如图9-45所示。

【Bus Plot】窗口界面

图9-45 【Bus Plot】窗口界面

【Plot】选项组。
【data vs. time】:显示所有的总线,每条总线有单独的颜色,可以根据数据格式(十六进制,二进制,十进制等)显示。
【data vs. data】:需要选择两条总线,x和y坐标分别对应一组总线。【Display】选项组:图形绘制方式可以是【lines】线、【points】点或者【 lines and points】点线。【Bus Selection】选项组:选项中列出设臵中所有的总线,根据【Plot】选项组设臵的方式,选择所要观测的总线组。可以单击总线名旁边的【Colored】按钮,选择总线的颜色。【Min/Max】选项组:显示视图中的最大最小值。【X】【Y】:显示鼠标所在位臵的x或y坐标。

如果设计中有VIO核,可以在【VIO Console】窗口观测虚拟输入输出信号状态,如图9-46所示。

【VIO Console】窗口界面

图9-46 【VIO Console】窗口界面

(1) 【Bus/Signal】栏:包含VIO核的总线或者信号名称。单击右键,设置信号/总线的【Type】显示类型和【Persistence】显示时间长度。

【Type】:设臵VIO总线/信号的类型。
VIO输入信号支持的显示类型:文本:ASCII字符LEDs(红、蓝、绿三个颜色可选;可以设置为高有效或低有效)
VIO输入总线只支持一个有效显示类型文本
VIO输出信号支持的显示类型:文本:ASCII文本按钮:高有效或低有效反转按钮脉冲序列(只针对同步输出)单脉冲(只针对同步输出)
VIO输出总线就有两个有效显示类型:文本脉冲序列(只针对同步输出)【Persistence】:设臵VIO总线/信号【Value】栏的显示时间长度。
【Infinite】:一直显示VIO总线/信号。
【Long】:显示80个采样周期。
【Short】:显示8个采样周期。

(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】窗口中修改布线。

【FPGA Editor】ILA设计界面

图9-47 【FPGA Editor】ILA设计界面

【ILA Capture Units】列表框:列出了设计中ILA捕获单元的名称和位信息。【Data and Trigger Bits】列表框:列出了所选ILA捕获单元的类型、位数、网线和部件信息。【Write CDC..】按钮:保存ChipScope Pro Core的修改为后缀为.cdc的文件,默认值为原设计文件。【Change Net】按钮:用来修改ILA Core的连线,单击该按钮,在FPGAEditor窗口下边信息栏中同时显示该连线的延时数据。用这个按钮可以更改ChipScope网线连接到一个设计者所关心的网线上。【View Component】按钮:用于在【Block】窗口中显示所选部件的内部结构。【Bitgen..】按钮:用于重新生成FPGA的比特流文件。【Download】按钮:启动iMPACT工具,把比特流文件下载到目标器件中。

9.6 小结

本章详细介绍了Xilinx内嵌逻辑分析仪ChipScope Pro,它是Xilinx开发的功能强大的在线调试工具,它解决了用片外逻辑分析仪进行设计调试时需要硬连接的瓶颈。本章首先介绍了ChipScope Pro的各个组成部分,包括ICON、ILA、VIO和ATC2等功能模块,接着用一个实例介绍了ChipScope Pro的应用,最后讨论了用ChipScope Pro分析仪进行设计调试的方法。希望通过本章介绍,读者能快速熟悉并掌握ChipScope Pro的应用,并借助此工具,快速找到并排除设计中的问题。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/704382
推荐阅读
相关标签
  

闽ICP备14008679号