MXT0106处理器调试环境设计与实现.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MXT0106处理器调试环境设计与实现

MXT0106处理器调试环境设计与实现   引言      随着软件开发规模的不断扩大,调试工具在软件开发中的作用显得越来越重要。针对嵌入式处理器的调试环境的搭建有很多的方法,包括在线仿真器、ROM(只读存储器)仿真器及类似于调试支持单元(Debug SupportUnit,简称DSU)的硬件调试,而GDB(GNU的软件调试器)完全是通过软件方式实现调试。   本文针对国产SPARC,v8处理器,设计实现了其基于处理器硬件调试机制的GDB调试环境。      调试环境的硬件基础      MXT01 06是北京时代民芯公司设计的一款SPARC V8体系结构的嵌入式处理器,具有非常丰富的外设接口,只需加上存储器和应用相关的外围电路,就可以构成完整的单板计算机系统。   它具有片内硬件调试功能,可以辅助软件在目标硬件上进行调试。该部分功能包括两个模块:调试支持单元(DSU)和调试通讯连接模块(如图1所示)。对这两个模块的理解和使用,是开发调试环境的基础。      调试支持单元      调试支持单元(DSU)可以通过任何在内部总线上的主设备来调试处理器。通过DSU将处理器置于调试模式(进入调试模式时流水线冻结),允许从外部调试处理器。DSU主设备在内部总线上占有一个地址空间,通过这个地址空间,可以访问处理器的寄存器和跟踪缓冲区的内容,CPU内部的所有寄存器、cache(缓存)在总线上都有映射的空间,调试时直接由DSU按地址访问。用户也可以调试和/或从中断的位置重新执行。   DSU还有两个断点寄存器来匹配任何内部的总线地址或者执行的指令。      DSU通讯连接      DSU通讯连接包含一个串口,该串口在内部总线上作为一个主设备。该串口支持简单的通信协议传输访问参数和数据。连接命令由一个控制字节、32位地址和可选的写入数据组成。数据以8位为基础进行发送:包括一个起始位、8位数据位和一个停止位。         通过通讯链路,可以对内部总线上任何地址进行读/写操作。通过设置长度字段为n-1(其中n标明传输字的长度),可以进行块传输。其协议格式如图2。       BMDEBUG调试环境      实现的调试环境运行于PC机的Windows平台上,具有源代码级和汇编级的调试能力,能够远程调试基于MXT0106处理器的程序。它和处理器配合工作,能最大限度地利用处理器的硬件调试支持单元,完成调试;并且和集成开发环境SPE―c很好地整合在一起。方便用户使用。      体系结构      调试器环境分为三层,从上到下分别为:用户界面、调试核心、通讯模块,整体结构如图3所示。   用户界面是调试器与用户互动的媒介,用户可以通过该界面观察调试的进行过程:获取处理器的当前信息;修改被调试程序的某些状态,如寄存器、存储器中的值,继续执行的位置等。   调试核心控制SPARC v8处理器调试的进行。核心通过通讯模块取得SPARC空间处理器的状态和调试过程中的信息,向上返回用户界面,又把从用户界面接收到的控制信息经过分析和处理后发给SPARC v8处理器。   通讯模块在调试核心和与SPARCv8处理器的DSU调试接口之间建立连接,接收调试核心发来的命令,封装成DSU接口能够识别的帧,发送给DSU。同时,还接收SPARC v8处理器发回的数据、解析数据,向上送回调试核心。通讯模块分为协议转换和物理通讯接口两个子部分。      用户界面及实现      用户界面作为与用户的交互窗口,需要能够完整地提供被调试处理器的所有信息和资源,并能够有能力针对处理器的运行状态进行控制,此外还需要有良好的视觉感,使用户不会产生不易用的感觉。所以针对用户界面主要实现以下功能:   1.源代码视图,该视图提供调试需要的各种信息。另外可在可执行的源代码上标注不同类型的断点。断点可以针对c级源代码,也可针对汇编级源代码。   2.堆栈视图,该视图提供函数之间的调用关系。包括调用顺序和函数所在的文件位置。   3.断点视图、用于显示用户在源代码中设置的所有断点及断点信息。   4.CPU视图,用于显示所有与硬件直接相关的信息,包括内部寄存器、存储器、片上外设寄存器、存储器、cache、tracebuffer(跟踪缓冲区)等。   5.变量视图,用于显示程序中与变量相关的信息,如名称、类型、值等。   6.表达式计算视图,用于计算被调试程序中任伺合法变量或对象的值。   7.错误报告,当SPARC v8处理器出现陷阱、异常时,调试器有一个单独的向用户报告错误的机制。   核心调试器   核心调试器采用调试SPARC平台ELF格式可执行程序的SPARC-ELF―GDB调试器。其中符号

文档评论(0)

3471161553 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档