面向Xilinx嵌入式处理器的完整调试方案

发布者:csw520最新更新时间:2012-07-20 来源: 21ic 关键字:Xilinx  完整调试  FPGA 手机看文章 扫描二维码
随时随地手机看文章

FPGA最大的优点在于其灵活性,可激发设计人员创造出无数不同的设计。然而,设计调试通常最后才加以考虑——如果还加以考虑的话,因此调试器通常要适应系统的要求。

好消息是一家在嵌入式领域耕耘近30年的公司推出了一款调试器,它对于解决所有您能想象得到的问题,甚至包括那些您都不愿意去听到的问题具有丰富的经验。在本文中,我们将通过一些例子说明Lauterbach公司的TRACE32调试器所具有的功能,这些功能将节省您的时间,甚至保全您的项目。

面向灵活平台的灵活调试

谈到灵活设计,我们想到了客户推出的一套十分有趣的系统。该系统在VirtexTM-5 LX50T器件上集成两个Xilinx®MicroBlazeTM处理器核和一个内部block RAM存储器块。这种设计的特殊之处在于每个MicroBlaze处理器只有一个与block RAM模块相连的I-side接口以实现指令提取。Block RAM的另一个存储端口被连接到PCI Express接口上,以便在运行时远程改变应用代码和启动处理器。在此面临的挑战在于如何在调试器无法读写的存储器区域进行调试,因为在存储器区域MicroBlaze处理器本身无法进行加载/存储操作。

我们利用TRACE32的内部“虚拟存储器”来解决这个问题,这个调试器内部的仿真存储器具有无限的地址空间(64位),可以按照需要分配存储容量。我们将目标程序加载到这个虚拟存储器中,并且通过配置调试器的内部地址转换机制将无法读取的目标存储器映射到虚拟存储器上。这使得甚至可在汇编级上进行程序诊断。

但是这里面临着另外一个挑战:为了实现程序的按步执行,特别是高级语言行以及条件分支,人们通常使用软件断点。由于无法通过MicroBlaze处理器访问Block RAM,显然无法做到这一点。我们的解决方案是提供“map.break”指令,强制调试器在给定的地址范围内使用硬件断点。映射指令还可使您指定存储器的数据宽度,更改大小头特性,或者完全禁止调试器访问某些具有关键外设寄存器的地址范围。

小而有用的功能

Lauterbach在JTAG调试器和仿真器方面的经验充分体现在TRACE32调试器的功能以及其他诸多微小和意想不到的细节中。考虑到Lauterbach完全利用自身工具开发所有软件,这一点并不奇怪。而日常出现的问题通常会激发人们设计出最有用的功能。

您是否曾经需要在调试阶段关掉烦人的计时器中断处理器,或者在无需重启的情况下改变条件分支?是否曾经需要修补循环以观察处理器核是否正确执行外部存储器给出的指令?内置的汇编器正可实现这些功能。

另一个调试中常见的情况是:是否经常在某个程序行走得太远而不得不重新开始?寄存器恢复功能可以取消最后的操作。

TRACE32通过不间断地每秒10次的存储器重读来显示存储器的内容,甚至在处理器停止的时候也不停止重读。为什么它要这么做呢?可能在一秒钟内,您的系统中不间断运行的MicroBlaze处理器就造成了数据破坏,所以您希望能够监测这一点。也可能在某些时候不稳定的存储器造成了屏幕闪烁。又或者是您的JTAG接口在20MHz时并不那么稳定。这些都是您期望知道的。另一方面,TRACE32确保它只会在需要的时候访问存储器。

谈及外设,我们还应该提到外设寄存器文件。这些文件指定了存储器映射的寄存器的位置、宽度,甚至按位编码,并且将它们分组成寄存器树。这样,可以很容易地访问外设寄存器以进行检查及修改:您点击一下即可关掉DMA控制器,而无需仔细阅读目标手册以找到正确位。调试器给出了标准外设的规格说明,但是您可以使用简单的文本编辑器修改这些文件以满足您的要求。对于Xilinx工具链,插件选项可以生成这些文件,并将其作为Xilinx构建过程的一部分。

灵活IDE

TRACE32提供了功能强大的图形用户界面(GUI),并且其命令行的使用非常高效:屏幕下方就有调试器命令行,并且几乎所有的GUI功能都可以通过命令行—从而通过脚本实现。这使得可实现所有常规任务的自动化,包括目标配置,窗口布局,以及将它们分配在多个虚拟屏幕中。最好的是,不像许多IDE一样,这些窗口没有docking特性,但也可以任意放置以及更改这些窗口的尺寸,甚至重叠。同时还可与不同的IDE联用,例如您可以从您的Eclipse环境中直接调用TRACE32。

图1 连接到Xilinx ML507电路板的Lauterbach TRACE32调试和跟踪电缆

连接多核目标

另一个有趣的功能是Lauterbach调试多核目标的直观方式。比如为每个核提供GUI,并且使它们共用一根调试电缆。这对于包含了PowerPC和MicroBlaze内核的异构系统或采用TRACE32所支持的50-plus处理器架构的其他系统而言同样有效(图1)。[page]

TRACE32与Xilinx平台电缆所使用的同一JTAG连接器连接,并且适用于任何由Xilinx嵌入式开发套件(EDK)创建的设计。对于PowerPC而言,也支持使用专用的调试连接器。

对于多核系统,内核的同步启动和关断是一个问题。要想在硬件中支持这一点,例如在多MicroBlaze处理器配置中,调试器应利用硬件功能实现周期精确同步,否则同步是在软件中完成。集成脚本语言了解多核情况,从而允许通过一个主脚本完成所有GUI控制,包括将调试器连接到相应的内核并进行复位,以及下载并启动应用程序。

实时程序流和数据跟踪

实时跟踪的主要功能是记录程序流,即处理器所执行的每一条指令以及数据的处理。对于MicroBlaze处理器,这是通过Xilinx Platform Studio中的XilinxMicroBlaze跟踪内核(XMTC)来实现的。XMTC集成了一个跟踪编码器,其中包含一个连接到MicroBlaze处理器跟踪端口(包含近200个未编码信号)的输入接口。

图2 显示跟踪、代码覆盖和函数调用图等窗口的Lauterbach TRACE32 IDE

图3A 面向XilinxSpartan-3E FPGA电路板的Lauterbach Mictor MicroBlaze跟踪适配器

图3B 面向XilinxMLx电路板的Lauterbach Mictor MicroBlaze跟踪适配器

它还包含一个提供21信号编码跟踪的输出接口。

跟踪硬件提供了多达512MB的外部高速跟踪存储器,可用于替换稀有的片上存储资源存储跟踪信息。跟踪功能也可支持PowerPC架构。此外,还具有更多的高级功能,包括静态函数和任务运行时间分析、变量访问、代码覆盖率分析等(图2,图3A和3B)。

操作系统支持

在MicroBlaze处理器上,TRACE32为μClinux和Linux提供了一个所谓的内核敏感模块。对于PowerPC而言,可支持更多的操作系统,包括QNX,VxWorks以及Nucleus PLUS。这些扩展功能使得调试器可以知道目标中的内核相关数据结构。这使得可以利用进程指定断点和程序控制实现进程级调试。其他功能包括支持完整的MMU,诸如加载的内核模块或者挂载的文件系统等Linux系统资源的实时、非侵入式显示,任务运行时间的统计评估和图形显示,以及函数运行时间的任务相关评估。

总结

Lauterbach TRACE32为所有Xilinx器件系列上的PowerPC和MicroBlaze处理器提供了完整的调试解决方案。未来Xilinx相关增强功能将进一步增强调试电缆,使得XilinxChipScopeTM分析仪可以使用调试电缆与调试器共同实现目标访问,并且通过调试器下载FPGA配置位流。

关键字:Xilinx  完整调试  FPGA 引用地址:面向Xilinx嵌入式处理器的完整调试方案

上一篇:英特尔ARM竞争升级 芯片行业面临重洗牌
下一篇:高通还要等待 28nm芯片供应会持续吃紧

推荐阅读最新更新时间:2024-05-02 22:12

FPGA+DSP导引头信号处理中FPGA设计关键技术
   1 引言   随着同防工业对精确制导武器要求的不断提高,武器系统总体设计方案的日趋复杂,以及电子元器件水平的飞速发展。导引头信号处理器的功能越来越复杂,硬件规模越来越大.处理速度也越来越高.而且产品的更新速度加快,生命周期缩短。实现功能强、性能指标高、抗干扰能力强、工作稳定可靠、体积小、功耗低、结构紧凑合理符合弹载要求的导引头信号处理器已经势在必行。过去单一采用DSP处理器搭建信号处理器已经不能满足要求.FPGA+DSP的导引头信号处理结构成为当前以及未来一段时间的主流。   FPGA和DSP处理器具有截然不同的架构,在一种器件上非常有效的算法.在另一种器件上可能效率会非常低。如果目标要求大量的并行处理或者最大的多通道流
[嵌入式]
基于FPGA的2M误码测试仪设计
  0 引言   无论是何种通信新业务的推出和运营,都离不开强力有效且高可靠的传输系统。随之而带来的问题就是如何对系统的传输质量进行测量和保证。    误码测试仪 是一种能够测量和保证传输质量的智能化仪器,该仪器可通过检测来反映数据传输设备及其信道工作的误码损伤性能质量指标,并对其进行传输质量分析的有效工具。在电信运营、工程验收、科研、设备生产、教学实验等各方面,误码仪都是必不可少的通信测量和线路维护的最佳辅助工具。目前在陕西省业务设备的接口应用中,百分之九十以上的接口是2M的接口,比如:交换网络上应用、信令网上的应用、数据网上的应用、网管网上的应用等,都使用了2M的数据。针对传统误码仪的不足,本文给出了基于Altera公
[测试测量]
FPGA基互联网系统的设计
    信息高速公路增长迅猛,变化迅速,并遇到了严峻挑战。互联风基础结构市场上的激烈竞争,使产品日见复杂,而开发窗口又越来越窄。更为甚者,网络系统开发才必须遵守种种不断发展变化垢标准和协议。在这种严峻的市场条件下,难怪实现可编程硬件会受到互联网基础结构设计者的欢迎。目前的现场可编程门阵列(FPGA)和可编程逻辑器件(PLD),结构上达到数百万门,可支持极为复杂的系统设计。在蓬勃发展中的互联网市场上,热衷于提供服务的PLD厂商又不断地丰富着预定义的组网和通信系统库。     这些预先存在的设计内容,加上有现货的现场可编程器件,将传统的定制集成电路开发周期缩短数月之多。对于组网与互联网支持提供者,可编程性有另一重大优点:
[应用]
一文了解集成电路总体、DRAM、FPGA和光刻设备领域的专利态势
近日,中国集成电路知识产权联盟秘书处纲正知识产权中心发布了《集成电路专利态势报告(2018版)》。该报告分别从集成电路总体、DRAM 领域、FPGA 领域、光刻设备领域这四个方面,分析了各个领域的专利态势。 集成电路总体专利态势 首先来看集成电路总体的专利态势,据报告显示,集成电路领域专利申请量态势逐年增长。2010年-2015年间年均增长率 5.89%,其中 2015 年增速最高,达到 9.28%。   图源:中集知联(下同) 截止到 2017 年 12 月 31 日,集成电路领域全球公开专利申请 209.7 万件,授权 144.5 万件。其中,中国大陆申请 46.4 万件,授权 27.8 万件,紧随美国和
[半导体设计/制造]
Xilinx 公司CEO兼总裁 Moshe Gavrielov 宣布退休
中国北京 — All Programmable技术和器件的全球领先企业赛灵思公司(Xilinx, Inc.,(NASDAQ:XLNX))今天宣布其首席执行官(CEO)兼总裁 Moshe Gavrielov 已通知公司董事会,将于 2018 年 1 月 28 日卸任公司及董事会相关职位。Gavrielov 的引退为他在半导体和软件相关企业中历时 40 年的辉煌职业生涯划下一个完美的休止符。董事会已选出公司原COO(首席运营官)Victor Peng继任 CEO 一职。 Gavrielov 表示:“非常荣幸有机会在过去十年中引领赛灵思的发展事业。赛灵思于 1985 年发明了全球最成功的可编程逻辑产品,并从此一直在该领域保持领先地位
[半导体设计/制造]
基于CY7C68013A和FPGA的ADSP-TS101扩展USB接口设计
ADI公司的DSP器件(ADSP-TS101)具有浮点实时处理能力强、并行性好等优点,从而广泛被弹载信号处理系统选用。其作为弹载主处理器,在导弹的系统试验中,需要利用上位机对其中的大数据量的软件变量进行实时监控和记录,这就需要一个上行传输给上位机的高速通信接口,数据上行的数据率需要大于6 MB/s。同时这个通信接口还需具有双向特性,通过数据下行可实现在线程序加载与烧写。这样的通信接口,还需具备设备连接简单、通用性强等特性,并能实现远程(大于3m)数据传输。   ADSP-TS101自身的外总线接口和链路口(Linkport接口),虽速度很快,但连接复杂,难以长线传输,并不具备上述需求特征。可以通过在DSP的Linkpo
[嵌入式]
基于CY7C68013A和<font color='red'>FPGA</font>的ADSP-TS101扩展USB接口设计
ARM和FPGA的光纤信号分析仪设计
0 引言 随着电力网络的扩大复杂化和区域互联趋势的到来,电力系统的行为也将越来越复杂。一些原有的假设条件和简化模型的适用性都将接受进一步的挑战与检验。 IEC61850标准的制定及其内容已超变电站自动化系统的范围,扩展到其他工业控制领域,成为基于通用网络通信平台的工业控制的国际标准。国内外很多电力设备生产商都在围绕IEC61850开展研究和应用工作,并提出IEC61850的发展方向是实现“即插即用”,在工业控制通信上实现“一个世界、一种技术、一个标准”。 1 系统构成及要求 结合一些与该设计方案关于示波器仪表类似的优秀文章,并取其精华作为设计参考。该光纤信号分析仪主要由三部分组成,包括:接口部分、A/D采集控制部分
[单片机]
ARM和<font color='red'>FPGA</font>的光纤信号分析仪设计
基于FPGA的电子稳像平台的研究
摘要:分析了传统电子稳像平台的缺陷,研究并设计了基于FPGA的专用平台。针对该平台研制过程中所涉及的一些关键问题进行了详尽的分析与探讨,给出了可行的解决办法。实验结果表明该平台工作稳定,扩展性好。 关键词:视频处理 电子稳像 FPGA 电子摄像系统已广泛应用于军用及民用测绘系统中,但是效果受到其载体不同时刻姿态变化或震动的影响。当工作环境比较恶劣,尤其是在航空或野外操作时,支撑摄像机平台的震动会引起图像画面的抖动,令观察者视觉疲劳,从面产生漏警和虚警。所以在运行中,如何稳像成为十分重要的问题,特别是在长焦距、高分辨力的监视跟踪系统中更加突出。具璞蒿、实性性强、体积小巧等特点,得到更广泛的应用。 图1 稳像系统的反应速度是电子稳像要解
[半导体设计/制造]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved